Módulos do Nginx

nginx-logo

Nginx é um web server e proxy de alta performance capaz de servir milhares de requisições simultâneas.

Tendo usado desde a época da boo-box, recentemente em dois sites que hospedo e também no BuzzVolume, eu posso dizer algo sobre o famoso "nginx bem configurado": funciona e me faz dormir tranquilo.

O nginx é um web server. Responde as requisições na porta configurada, faz redirecionamentos, retorna arquivos estáticos e aceita módulos:

A comunidade está contribuindo bastante e é sobre alguns módulos "3th party" que vou falar.

Obs: Por "backend" entenda que é a aplicação Ruby, PHP, Python, "escolha sua linguagem", que estiver rodando.

NginxHttpUpstreamFairModule


O upstream_fair faz com que as requisições batam no backend que estiver com menos carga. Sem esse módulo as requisições são distribuídas para qualquer backend, mesmo que esse estiver ocupado.

NginxHttpEmptyGifModule


O ngx_http_empty_gif_module mantém na memória um GIF de 1x1 pixels e o entrega diretamente, sem buscar no disco.
Eu considero esse o módulo mais curioso. Ele mostra a preocupação com performance e a facilidade de fazer algo assim com o nginx.
Esse gif de 1x1 pode servir como favicon.ico em sites que ...

SVN #fail com muitos arquivos

Durante a semana precisei trabalhar em um projeto que tem muitas imagens geradas por script. Decidi fazer cache dessas imagens deixando em disco/memcached.

O problema: SVN lento para fazer operações com muitos arquivos (no meu caso nem são muitos: 10000).

A solução: tar -zcvf buttons.tar.gz buttons/

E no deploy: tar -zxvf buttons.tar.gz

Comprimi todos arquivos em um só e depois de colocar em produção descomprimi. Assim o SVN não dá azia e não preciso me preocupar com RMagick no server ;)

About Me