Estamos usando verniz nas unidades ssd nos últimos 9 meses, e tem funcionado muito bem para nós. Anteriormente usamos um cache de memória do squid apenas com uma camada de carpas. Funcionou, mas a fragmentação da memória era um problema real que exigia reinícios frequentes. O Squid 2.x também usará apenas um núcleo, o que o torna ineficiente no hardware atual.
Para o nosso site, que é muito amigável ao cache, vemos cerca de 10% de uso da CPU em uma máquina de 8 núcleos que atende 100Mbit / s de tráfego. Em nossos testes, ficamos sem largura de banda antes de atingirmos os limites da cpu com 2 portas de 1 Gb.
Eu tenho alguns conselhos para executar o verniz com um cache de ssd.
-
Desempenho de gravação aleatória realmente importa. Nós tentamos vários fornecedores para unidades ssd antes de decidir sobre o intel x-25m. Nós vimos alguns postar tão pouco quanto .1MB / s para 4k gravações aleatórias, temos 24MB / s 4k gravações aleatórias com o x-25m.
-
Raid0. O cache no 2.0 não é persistente, então não precisa se preocupar com redundância. Isso faz os reinícios doerem, mas esses são raros. Você pode fazer coisas como carregar uma nova configuração e limpar objetos sem reiniciar.
-
modo mmap. O cache de verniz pode ser mmap'd para um arquivo ou usar o espaço de troca. Usando o swap não funcionou bem para nós, ele tende a usar mais largura de banda de E / S para atender a mesma quantidade de tráfego. Há um readahead de 4 setores no código de troca do Linux, nós escrevemos um patch para remover isso, mas não o tentamos em produção.
-
Agendador de prazo. Com o 2.6.28+, este é o ssd ciente e funciona bem. Tentamos noop, mas descobrimos que o prazo final era mais justo, já que a largura de banda de E / S fica limitada.
-
Desative a leitura antecipada. Como não há atraso rotacional, não adianta ler dados extras só porque você pode precisar deles. A largura de banda de E / S é preciosa nessas coisas.
-
Execute o 2.6.28+. Um mmap de muito espaço no linux dá ao gerenciador de memória um bom exercício, mas os patches lru divididos ajudam bastante. O uso da CPU do kswapd caiu muito quando atualizamos.
Publicamos nosso arquivo vcl, bem como várias ferramentas que usamos com verniz em texto do link . O vcl também inclui um hack simples que implementa um servidor geoiplookup muito rápido baseado no banco de dados maxmind.