Calificación de frameworks web de alta velocidad 2020



El otro día me sorprendió elegir una solución para el servidor de un generador de sitios cargado. La arquitectura actual se basa en el marco MVC popular en el antiguo PHP. Tal marco es bueno para el rápido desarrollo de una gran cantidad de funcionalidad y un inicio rápido, todos lo sabemos. Solo después de este comienzo, llega el momento en que surgen cuellos de botella que requieren un mayor rendimiento y el marco universal habitual ya no puede hacer frente.

En el proceso de encontrar una solución, me encontré con análisis de la velocidad de procesamiento de solicitudes para una gran cantidad de marcos que existen hoy en día. Elegí de ellos aquellos que tienen más de 5,000 estrellas en GitHub y que procesan más de 150,000 solicitudes por segundo. En la fórmula para calcular la calificación, el segundo parámetro es cuadrado, ya que las fluctuaciones de las estrellas son mucho mayores.

Como resultado, la fórmula es la siguiente:
Número de estrellas en GitHub * (Número de solicitudes por segundo) ^ 2

Los líderes en negrita en términos de velocidad de procesamiento de solicitudes se resaltan en negrita.

1. Beego [go] - 359 279
2. Gin [go] - 252 895
3. FastHttp [go] - 420 498
4. Echo [go] - 262 940
5. ASP.NET Core[csharp] - 263 725
6. Workerman [php] - 349 897
7. Mux [ir] - 263 585
8. Koa [js] - 159 032
9. Perfecto [rápido] - 218 634
10. Chi [ir] - 274 507
11. Fastify [js] - 177 372
12. Falcon [python] - 208 805
13. Botella [python] - 168 776
14. Ktor [kotlin] - 162 842
15. owboy [elixir] - 160 063

Mediciones del número de solicitudes en segundo realizado utilizando wrk. El mecanismo de conteo se basa en respuestas en tres escenarios:
- abriendo la página principal con la respuesta 200 y el contenido en blanco
- abra las páginas / user con la respuesta 200 y el contenido en blanco
- abra las páginas / user / __ ID__ con la respuesta 200 yc __ID__ en el contenido

Si no encontró su marco favorito, busque en la fuente, allí están más de cien Si no está allí, aparecerá pronto y se revisará la calificación. Puede acelerar esto creando una solicitud de extracción con su marco.

Fuente de datos: GitHub y web-frameworks.

Si tiene experiencia en el uso de alguno de estos frameworks, me complacerá conversar con usted en los comentarios.

Source: https://habr.com/ru/post/undefined/


All Articles