O nginx é adequado para veicular PDFs?

8

Esta é uma pergunta fictícia. Eu tenho que dar acesso público a PDFs, digamos 8 MB / arquivo. Parece-me que o nginx servirá qualquer tipo de arquivo, desde que seja estático. Mas alguém me diz que o nginx não é adequado para isso.

Você pode me fornecer alguma documentação para provar que estou errado?

François Verry
fonte
2
Não consigo pensar em nenhum servidor Web que não funcionasse bem ao fornecer arquivos estáticos de tamanho médio. Por curiosidade, o que eles sugerem que sejam usados?
Shish
Sempre que vejo uma pergunta como essa, só me pergunto por que você não tentou. Certamente isso teria sido muito mais rápido do que postar a pergunta e esperar por respostas.
John Gardeniers

Respostas:

2

Em caso de dúvida, referência! Felizmente, alguém já fez isso:

http://nbonvin.wordpress.com/2011/03/24/serving-small-static-files-which-server-to-use/

Conclusão? Permitam-me citar:

O G-WAN parece novamente ter um desempenho muito melhor que os outros servidores. O Nginx sempre apresenta um desempenho um pouco melhor que o Lighttpd, enquanto o servidor Apache Traffic é muito semelhante ao Lighttpd em termos de desempenho.

E:

Em relação aos recursos utilizados por cada servidor, o Nginx é o vencedor em termos de uso de memória, pois a quantidade de memória não aumenta com o número de clientes simultâneos. A G-WAN requer 2 vezes menos CPU que os outros servidores.

A prova está nos números. O Nginx é o segundo melhor em solicitações / segundo, média para uso da CPU e melhor para uso da memória. Então, sim, o nginx é definitivamente um bom servidor para servir estaticamente PDFS de tamanho padrão.

Ben Lee
fonte
2
"Exceto executando G-WAN com privilégios de root, nada precisa ser feito para otimizar ainda mais o desempenho". É por isso que você não procura referências para decidir o que funciona melhor para você. Você configura o software em seu próprio ambiente e faz seus próprios testes para ver o que se encaixa melhor.
pauska
1
Concordo que os benchmarks pessoais são melhores do que confiar em outras fontes (embora eu não tenha feito nenhum benchmark - eu uso o nginx para servir aplicativos e arquivos estáticos e funciona bem para meus servidores, por isso não tenho motivos para alternar ou fazer benchmarks). Mas não vejo como olhar para outra referência é pior do que apenas fazer uma afirmação ou suposição geral?
Ben Lee
Se você achar a fonte insatisfatória e não tiver tempo / inclinação para fazer sua própria referência, sempre poderá procurar outra.
Ben Lee
Há muita informação sobre isso. Aqui está outro que acabei de encontrar no google: ruby-forum.com/topic/150120 , e ainda possui links para outros. Meu ponto não é sobre o benchmark específico. O que quero dizer é que, quando você não sabe algo sobre desempenho, use referências , mesmo que não sejam suas. O que eu coloquei na minha resposta foi apenas um exemplo, mas os outros resultados que estou encontrando on-line tendem a estar alinhados com o de que o nginx está próximo do topo para uso de solicitação / segundo e memória.
Ben Lee
E @pauska, você rebaixou isso? Acabei de notar um voto negativo. O benchmark que usei como exemplo era perfeitamente claro sobre a configuração que fazia para todos os servidores e não era nada sorrateiro, para que você possa tirar conclusões legítimas. A única otimização real para o nginx feita foi alinhar o número de trabalhadores ao número de núcleos. Acho as opções de configuração que o autor fez bastante aceitáveis ​​para boas métricas de comparação.
10119 Ben Lee
23

Não há nada a provar, o nginx é especificamente otimizado para veicular conteúdo estático.

Você foi informado errado.

pauska
fonte
10
"Você disse errado." - Eu acho que esta é a maneira mais educada de chamar o seu "alguém" um twit :-)
voretaq7
Esse foi o meu palpite. Só precisava de confirmação, ele é meu administrador ...
François Verry
@ voretaq7: Ou ele quis dizer que você nunca deve atribuir à estupidez aquilo que pode ser adequadamente explicado pela malícia. :-) #
074 Blrfl
Prova por afirmação contundente?
10119 Ben Lee
14

O uso típico do nginx é servir os arquivos estáticos para um site, enquanto algo mais (para o qual o nginx procura) serve o conteúdo dinâmico. A menos que você esteja gerando os PDFs rapidamente, o nginx deve estar perfeitamente bem.

cjc
fonte