Ist Nginx zum Bereitstellen von PDFs geeignet?

8

Dies ist eine Scheinfrage. Ich muss der Öffentlichkeit Zugriff auf PDFs gewähren, sagen wir 8 MB / Datei. Es scheint mir, dass Nginx jede Art von Dateien bereitstellen wird, solange sie statisch sind. Aber jemand sagt mir, dass Nginx dafür nicht geeignet ist.

Können Sie mir Unterlagen zur Verfügung stellen, um mir / ihm das Gegenteil zu beweisen?

François Verry
quelle
2
Ich kann mir keinen Webserver vorstellen, der mittelgroße statische Dateien nicht gut bereitstellen kann. Was würden sie aus Neugier stattdessen vorschlagen?
Shish
Immer wenn ich eine solche Frage sehe, kann ich mich nur fragen, warum Sie es nicht einfach versucht haben. Das wäre sicherlich viel schneller gewesen, als die Frage zu stellen und auf Antworten zu warten.
John Gardeniers

Antworten:

2

Im Zweifelsfall Benchmark! Zum Glück hat dies bereits jemand anderes getan:

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

Fazit? Gestatten Sie mir zu zitieren:

G-WAN scheint wieder viel besser zu funktionieren als die anderen Server. Nginx bietet immer eine etwas bessere Leistung als Lighttpd, während der Apache Traffic-Server Lighttpd in Bezug auf die Leistung sehr ähnlich ist.

Und:

In Bezug auf die von jedem Server verwendeten Ressourcen ist Nginx der Gewinner in Bezug auf die Speichernutzung, da die Speichermenge nicht mit der Anzahl der gleichzeitigen Clients zunimmt. G-WAN benötigt zweimal weniger CPU als die anderen Server.

Der Beweis ist in den Zahlen. Nginx ist bei Anforderungen / Sekunde am zweitbesten, durchschnittlich für die CPU-Auslastung und am besten für die Speichernutzung. Also ja, nginx ist definitiv ein guter Server für die statische Bereitstellung von PDFS in Standardgröße.

Ben Lee
quelle
2
"Außer dem Ausführen von G-WAN mit Root-Berechtigungen muss nichts unternommen werden, um die Leistung weiter zu optimieren." Aus diesem Grund sehen Sie sich keine Benchmarks an, um zu entscheiden, was für Sie am besten funktioniert. Sie richten die Software in Ihrer eigenen Umgebung ein und führen Ihre eigenen Tests durch, um festzustellen, was am besten passt.
Pause
1
Ich bin damit einverstanden, dass persönliche Benchmarks besser sind als das Vertrauen in andere Quellen (obwohl ich selbst keine Benchmarks durchgeführt habe - ich verwende nginx, um Apps und statische Dateien bereitzustellen, und es funktioniert gut für meine Server, sodass ich keinen Grund habe, zu wechseln oder zu bewerten). Aber ich sehe nicht, wie schlimmer es ist, einen anderen Benchmark zu betrachten, als nur eine pauschale Behauptung oder Annahme zu machen?
Ben Lee
Wenn Sie die Quelle als unbefriedigend empfinden und nicht die Zeit / Neigung haben, Ihren eigenen Benchmark zu erstellen, können Sie jederzeit nach einer anderen suchen.
Ben Lee
Hierzu gibt es viele Informationen. Hier ist eine andere, die ich gerade bei Google gefunden habe: ruby-forum.com/topic/150120 , und sie enthält außerdem Links zu anderen. Mein Punkt ist nicht über den spezifischen Benchmark. Mein Punkt ist, wenn Sie nichts über Leistung wissen, verwenden Sie Benchmarks , auch wenn diese nicht Ihre eigenen sind. Das, was ich in meine Antwort eingegeben habe, war nur ein Beispiel, aber die anderen Ergebnisse, die ich online finde, stimmen in der Regel mit dem überein, dass Nginx in Bezug auf Anforderung / Sekunde und Speichernutzung ganz oben steht.
Ben Lee
Und @pauska, hast du das abgelehnt? Ich habe gerade eine Abwertung bemerkt. Der Benchmark, den ich als Beispiel verwendet habe, war völlig klar darüber, welche Konfiguration er für alle Server vorgenommen hat, und war in Bezug auf nichts hinterhältig, sodass Sie daraus legitime Schlussfolgerungen ziehen können. Die einzige wirkliche Optimierung für Nginx bestand darin, die Anzahl der Arbeiter an die Anzahl der Kerne anzupassen. Ich finde die Konfigurationsoptionen, die der Autor für gute Vergleichsmetriken getroffen hat, ziemlich akzeptabel.
Ben Lee
23

Es gibt nichts zu beweisen, nginx ist speziell für die Bereitstellung statischer Inhalte optimiert.

Ihnen wurde falsch gesagt.

pauska
quelle
10
"Dir wurde falsch gesagt." - Ich denke, dies ist die höflichste Art, Ihren "Jemand" als Trottel zu bezeichnen :-)
voretaq7
Das war meine Vermutung. Ich brauchte nur eine Bestätigung, er ist mein Adminsys ...
François Verry
@ voretaq7: Oder er meinte, dass man niemals der Dummheit das zuschreiben sollte, was durch Bosheit angemessen erklärt werden kann. :-)
Blrfl
Beweis durch eindringliche Behauptung?
Ben Lee
14

Die typische Verwendung für nginx besteht darin, die statischen Dateien für eine Website bereitzustellen, während etwas anderes (für das nginx einen Proxy bereitstellt) den dynamischen Inhalt bereitstellt. Wenn Sie die PDFs nicht im laufenden Betrieb generieren, sollte Nginx vollkommen in Ordnung sein.

cjc
quelle