saudações!
Queria fazer uma melhoria no sistema em que estou trabalhando para acelerar a velocidade de resposta do mesmo para o usuário.
Eu tenho algumas tabelas bem grandes no banco de dados, que constantemente preciso acessar para mostrar na tela, algumas vezes de forma encadeada (uma combo determina o conteúdo da outra).
Acontece que essas tabelas mudam muito pouco, se é que mudam.
Como exemplo, suponhamos uma tabela de munícipios, com 5000 registros. Vão ter situações em que o usuário irá procurar registros nessa tabela num formulário de consulta. Em outras, ele vai ter uma combo para escolher a UF. Assim que ele escolhe a UF, a combo de municípios que pertençam àquela UF.
Hoje em dia, o sistema faria queries no banco para recuperar os dados. A cada busca ou troca da combo de uf, uma query no banco seria feita.
A minha idéia é que o sistema faça essa carga de dados uma única vez, armazene de alguma forma, e cada vez que o sistema tiver que acessar esses dados iria usar os dados armazenados, sem ir ao banco.
Já implementei isso uma vez em outro projeto: existia uma collection estática que era carregada quando o primeiro usuário acessava o sistema.
Os colegas têm sugestões de melhores formas de implementar uma estratégia de pré-carga de dados? No meu sistema, há várias tabelas que poderiam ser armazenadas.
No momento, não estou preocupado com o efeito de alterações no banco e atualização dos dados armazenados.
Um grande abraço,
obrigado,
Big Joe!