Cache HTTP ou cache na memória

5

Eu tenho duas opções para implementar o cache em meu aplicativo da web. Eu posso adicionar um cache Varnish fora do código do meu aplicativo e armazenar em cache as respostas em uma base URL por solicitação, ou posso usar um cache na memória como o memcached para armazenar os resultados dos acessos ao banco de dados.

Estou tendo dificuldade em escolher entre essas duas implementações. Acredito que adicionar Varnish resulta em menos código (não é necessário adicionar lógica em relação ao cache de um resultado do banco de dados ou não), mas há um pouco mais de sobrecarga em termos de infraestrutura para adicionar a camada de armazenamento em cache do Varnish.

Quais são os outros benefícios de usar uma solução sobre a outra? E há outras coisas importantes que não considerei?

    
por user4184113 08.12.2016 / 22:48
fonte

1 resposta

1

Você não disse qual é o seu motivo para precisar de um cache.

Ter os dois tipos de cache seria o caso ideal, já que ambos aceleram as coisas à sua maneira.

Eu sugiro que você experimente o verniz primeiro e veja se as melhorias que ele fornece são satisfatórias (na maioria das vezes, é).

Se isso não ocorrer, tente armazenar em cache no nível do aplicativo e tente armazenar em cache o material com base no seu efeito no desempenho do sistema (isso significa que você terá que criar um perfil completo do aplicativo em diferentes tipos de cargas). em seguida, tente um aspecto de cada vez na ordem de efeito no desempenho (primeira autenticação e informações relacionadas à sessão, depois aos resultados do banco de dados e assim por diante). Para cada adição, faça um novo perfil do seu sistema e compare os resultados.

Você também deve tentar ver se pode melhorar o código (se possível) nos casos em que é o código (e não o IO que está atrasando as coisas).

Uma vez que você fizer isso, você deve ser capaz de encontrar o pulso do sistema, e você seria capaz de isolar e melhorar o desempenho de engrenagens individuais sem causar complexidade. Mais importante, PARE quando você encontrar o seu equilíbrio. o trabalho excede os ganhos potenciais obtidos.

    
por 09.12.2016 / 10:47
fonte