alexferreiradev / alexferreiradev/cert_validator_java

Adicionar leitor de json em memória

Aperta
#21 0 commenti 0 reazioni 1 assegnatario Rivendicata da @alexferreiradev Vedi su GitHub
Lingua principale
Groovy
Stelle
0
Fork
0
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

# Avaliação de cenários
- Com banco de dados:
Teremos que manter infraestrutura, utilizar um ORM e irá demorar mais para entregar. Além disso, teria que ter uma integração com o sistema de geração de certificado, ou seja, teria que ter o leitor de JSON da mesma forma
- Sem banco:
Não será utilizado banco de dados, ao gerar um certificado será gerado um arquivo Json com os respectivos tokens. Toda vez, o administrador terá que pegar o arquivo json e adicionar ao servidor e reiniciar o servidor. O servidor ao iniciar, irá verificar todos arquivos json e irá importar tudo em memória como um singleton.

## Vantagens e desvantagens
O banco de dados torna mais escalável, mas não elimina a necessidade do Json ser importado. Futuramente, poderá ser criado um gerador de certificados online que integra diretamente com o validador.

# Adicionar na wiki
A cada adição de novos certificados, o servidor deverá ser reiniciado para carregar os novos certificados.

# Detalhes de implementação
- Crie testes de unidade para todas funções e de sistema para testar a importação incorreta e a finalização do servidor
- O leitor ficará disponível para os services como um service com scope singleton criado ao dar boot na aplicação.
- O arquivo Json será definido de acordo com os objetos exportados pelo gerador. Portanto, a cada versão major do gerador, deve verificar compatibilidade do validador.
- Deverá ser utilizado uma lib de transformação de json em Objetos como a Gson.
- Caso ocorra erro na importação, servidor deve informar o erro e finalizar. Não pode iniciar sem ter importado todos arquivos
- Os arquivos Json devem ter uma chave no início, indicando que o arquivo é válido e foi gerado pelo nosso gerador e não é implantado
- Ao final da importação, deve indicar quanto de memória foi utilizado de maneira humana. Utilize uma lib para transformação para maneira humana
- O acesso aos dados importados deverão ser feitos somente pelo service, mas somente como leitura, evitando problemas de concorrência.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.