El servidor web más rápido para servir contenido estático


12

Estoy optimizando nuestro sistema para una entrega de contenido estático más rápida, y me preguntaba si alguien tiene alguna experiencia adecuada con los servidores web más rápidos que existen para tal propósito.

De los tres candidatos principales que he considerado, Nginx, Cherokee y Lighttpd, cada uno parece tener sus propios problemas, pero los informes que he leído en línea están algo sesgados y se inclinan hacia el servidor que el usuario está usando actualmente.

¿Alguna idea sobre dónde ver un punto de referencia adecuado para este propósito específico, o al menos una lista imparcial de pros y contras? ¿Alguna experiencia personal y dificultades de las que deba ser diferente?

Gracias

Editar: Serverfault.com dio la respuesta como nginx. Todavía me gustaría escuchar algunos pensamientos de desarrolladores de este extremo del universo.


1
@Swader: por favor no vuelva a publicar. El flujo de cosas habitual es que esta pregunta se migre automáticamente allí cuando obtenga suficientes votos cercanos (5). Tener dos preguntas idénticas dificulta que haya una fuente definitiva de respuestas.
Cameron

Respuestas:


12

Algunos enlaces y comentarios adicionales:

  • Hubo un punto de referencia reciente que compara Nginx, Apache, Varnish y GWan para servir archivos estáticos de 100 bytes.
  • El sitio Cherokee tiene algunos puntos de referencia que comparan Nginx y Lighttpd.
  • Más enlaces: uno , dos , tres , cuatro , cinco
  • Tenga en cuenta que los puntos de referencia típicos tienen una banda estrecha de validez, especialmente a una tasa de solicitud tan grande. Por ejemplo, el primer punto de referencia está bien si todo lo que está sirviendo son archivos de 100 bytes, pero los resultados pueden ser significativamente diferentes si usa 1 kb, 10 kb o un rango de tamaños de archivos estáticos. Muchos puntos de referencia publicados también tienen el problema de que el autor tiene buena experiencia con solo uno de los productos, lo que significa que tiene una configuración muy buena y no con los otros productos, lo que significa que tienen una configuración subóptima o incluso mala, lo que sesgará Los resultados.
  • Con una tasa de solicitud tan grande, habrá muchas cosas que pueden afectar los resultados de referencia. No solo la configuración del servidor web, sino también la configuración del sistema operativo y el hardware en sí. Por ejemplo, el uso de una unidad SSD puede aumentar las tasas de solicitud, pero puede funcionar con el servidor web X mejor que Y.
  • No solo mire las grandes tasas de solicitud máximas de los puntos de referencia, sino que también considere el promedio y los mínimos. Por ejemplo, mire los resultados de Apache del primer enlace de referencia.
  • El mejor punto de referencia es hacer uno usted mismo usando los archivos que está sirviendo en el hardware que está haciendo para usar. Incluso los puntos de referencia rápidos pueden revelar problemas y efectos no aparentes en otros resultados publicados.
  • A esta escala, ¿realmente importará si puede atender solicitudes de 15k o 20k / segundo? Por ejemplo, a 20kr / sa el archivo de 1.7kb requerirá alrededor de 100TB de ancho de banda al mes. En comparación, la cantidad de dinero que costará el ancho de banda para comprar otro servidor (o 10) será barata. No elegiría únicamente por qué servidor da el "número" más grande, sino que también consideraría lo fácil que es configurarlo / usarlo, si coincide con el conjunto de características requerido, si está bien soportado, etc.

Personalmente, he usado Lighttpd durante años y no podría estar más feliz con él. De hecho, estoy sorprendido de que haya funcionado en comparación con Nginx en los resultados de referencia de Cherokee.


Cosas brillantes, muy útiles, muchas gracias.
Swader

G-WAN es realmente muy rápido. Este enlace también es interesante. kristianlyng.wordpress.com/2011/03/16/… El barniz parece ser muy bueno bajo alta carga.
Matt

1

La revista LinuxFormat (número 142, marzo de 2011) incluye un punto de referencia de Apache, Cherokee, Lighttpd y Nginx. Cherokee es el más rápido, más de x2 en comparación con Apache, y hasta un 20% más rápido que Nginx.


¡Gracias! Simplemente lea el artículo, y aunque es una pena que solo el último párrafo tenga información realmente útil, ¡no obstante es un punto de referencia muy valioso!
Swader

1

Si es contenido puramente estático, entonces solo necesita una gran caché frente al servidor web real, utilizo los ZXTM de Zeus, pero hay muchas otras opciones.


En mi caso, se trata de docenas de gigabytes de material, en todas sus formas, desde pequeñas imágenes hasta grandes documentos flash. El almacenamiento en caché sería insuficiente aquí, creo. Lo que necesito aumentar es la velocidad de publicación, por eso estamos configurando un servidor de contenido estático. El costo no es problema. Sin embargo, gracias, que ZXTM suena interesante, echaremos un vistazo a eso.
Swader

suena muy similar a nuestra configuración, tenemos varios conciertos de estática y esos zxtms hacen un buen trabajo, son de 64 bits, por lo que solo guardamos 192 GB de memoria en cada uno y lo hace todo desde la RAM.
Chopper3

Eso suena locamente eficiente y poderoso. ¿Podría nombrar más detalles sobre su configuración y el tipo de estática que sirve? ¿Intentó compararlo con otras configuraciones o se utilizó esta desde el principio?
Swader

1

No he leído el artículo, no parece estar en línea, fue la búsqueda lo que me trajo aquí, pero solo mirar un solo gráfico que Alvaro publicó en su blog me hace preguntarme por qué ese formato Linux el punto de referencia se inclinó contra servidores distintos de Cherokee. Resultó incluir los números de versión de los servidores, y algo me pareció extraño, así que investigué un poco:

Server   | Tested (Released)   | Current (Released)
---------+---------------------+--------------------
Apache   | 2.2.14 (2009-10-05) | 2.2.17 (2010-10-19)
Cherokee | 1.0.15 (2010-12-29) | 1.0.15 (2010-12-29)
Lighttpd | 1.4.26 (2010-02-07) | 1.4.28 (2010-10-22)
Nginx    | 0.7.65 (2010-02-01) | 0.8.54 (2010-12-14)

Una nueva y brillante versión de Cherokee fue presentada contra versiones anteriores y, en algunos casos, mucho más antiguas de los otros servidores. Por lo tanto, no daría demasiada importancia a los resultados, especialmente porque el servidor más competitivo, Nginx, había tenido un lanzamiento importante desde la versión que probaron.


Esa es una idea extremadamente útil.
Swader

0

Mira esto

http://www.acme.com/software/thttpd/

PayPal lo usa para servir contenido estático.


1
Gracias, podría investigar eso, pero tengo un gran prejuicio y parcialidad hacia las personas que hacen "software" y no me molestan en crear un sitio decente. Parece que se atascó en 1992 y nunca se actualizó. Además, nunca lo compararon con los principales competidores que mencioné, me pregunto si puedo encontrar una comparación decente en alguna parte ...
Swader
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.