[pyar] Benchmark de frameworks python

Ariel Camino arielcamino en gmail.com
Lun Jun 8 20:48:16 ART 2015


On 08/06/15 19:02, Alfonso de la Guarda wrote:
> Hola,
>
> Como estoy terminando un proyecto que requiere procesar muy
> rápidamente la información (machine learning) y aunque -últimamente-
> empleo #web2py para casi todo, me encontré con la disyuntiva de
> dividirlo en una solución que implemente un backend basado en REST y
> un frontend basado en web2py, el asunto era determinar que solución
> era actualmente la más rápida para evitar en el corto plazo hacer un
> refactoring del proyecto y es así que encontré la cama de pruebas de
> rendimiento de TechEmPower
>
> https://www.techempower.com/benchmarks/#section=data-r10&hw=ec2&test=fortune
>
> Y me propuse completar el resto de frameworks web basados python y
> tomar una decisión basada en rendimiento, dado que lo único que
> necesito es un implementar un API rest que trabaje solamente con el
> frontend.
>
> Es así que les comparto el resultado de dicho benchmark, el mismo que
> ha sido generado según las especificaciones descritas en el
> repositorio de TechEmPower empleando vagrant para replicar su entorno
>
> http://codebeautify.org/jsonviewer/2e0aac
>
> El resultado es similar al del URL de la cama de pruebas aunque
> incluye casi todos los frameworks web que han agregado varios usuarios
> y la sorpresa del caso fue falcon, aunque fue también un gusto ver que
> mi querdio Bottle sigue siendo rápido por su diseño minimalista.
>
>
>
> Saludos,
>
> --------------------------------
> Alfonso de la Guarda
> Twitter: @alfonsodg
> Redes sociales: alfonsodg
>     Telef. 991935157
> 1024D/B23B24A4
> 5469 ED92 75A3 BBDB FD6B  58A5 54A1 851D B23B 24A4
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
>
Hola Alfonso, en mi humilde opinión las comparaciones de rendimientos de 
frameworks en general no son muy útiles porque a la hora de escalar los 
escenarios pueden ser muy distintos.

Cuando te encontrás con un escenario donde realmente necesitás mucha 
velocidad, terminas tomando decisiones sobre determinados recursos de tu 
API para lograrlo que impactan muchísimo sobre el rendimiento, ajustando 
cada uno de los detalles.

Te recomiendo leer este artículo que tiene un par de años pero me parece 
muy descriptivo al respecto:

http://www.dabapps.com/blog/api-performance-profiling-django-rest-framework/

el gráfico es bastante impresionante:

http://www.dabapps.com/assets/blog/profiling-rest-framework.png

Hablo desde la ignorancia porque no tengo ni idea de qué hace tu 
aplicación más allá de lo que contaste.

Yo particularmente a la hora de elegir un framework para una API REST, 
incluso en escenarios donde determinados recursos de mi API deberían 
responder de manera instantánea a decenas de hits por segundo, se que 
hay cosas que se pueden ajustar, y cosas que no.

Las cosas que normalmente no podes ajustar son la madurez de un 
proyecto, la comunidad, la documentación, la cantidad de personas que 
contribuyen al repositorio, la calidad de código, el lenguaje, etc.

Suerte!
-- 
Ariel Camino

PD: Conozco el test y leí las preguntas frecuentes acerca de las pruebas:

https://www.techempower.com/benchmarks/#section=motivation


More information about the pyar mailing list