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) ^ 2Los líderes en negrita en términos de velocidad de procesamiento de solicitudes se resaltan en negrita.1. Beego [go] - 359 2792. Gin [go] - 252 8953. FastHttp [go] - 420 4984. Echo [go] - 262 9405. ASP.NET Core[csharp] - 263 7256. Workerman [php] - 349 8977. Mux [ir] - 263 5858. Koa [js] - 159 0329. Perfecto [rápido] - 218 63410. Chi [ir] - 274 50711. Fastify [js] - 177 37212. Falcon [python] - 208 80513. Botella [python] - 168 77614. Ktor [kotlin] - 162 84215. owboy [elixir] - 160 063Mediciones 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 contenidoSi 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