El día 23 de julio de 2011 07:23, Allan N. Porras
<alp...@netsescr.com> escribió:
> Me han dicho que para "pegar" o "tostar" un web server es enviandole muchos 
> POST. ¿Como puedo hacer eso en Python?
>

Lo de los POST no es condición ni necesaria ni suficiente para hacerle
perrerias a un servidor web. Normalmente las operaciones que se hacen
por POST suelen ser más pesadas que las que se hacen por GET porque
suelen producir efectos secundarios que acceden a sistemas de
persistencia e invalidan cachés. Así que si es una buena heurística
echarle un vistazo a este tipo de peticiones, pero no algo
determinante.

Si el sistema está protegido contra CSRF es fácil evitar que lleguen a
backend peticiones en las que no hay sesion generada. Aunque montases
una cookie para simular que tienes una session activa, esta se podría
validar rápidamente sin cargar demasiado el backend.

Si el sistema solo sirve estáticos es fácil que ignore peticiones de
tipo POST. Por lo que en ese caso provocarian menos carga que una
petición GET.

> Necesito "pegar" un web server (Apache o cualquiera) y medir el desempeño del 
> sistema operativo.
>

Si te cuesta programar en python, pero por alguna extraña razón
quieres que esté escrito en python, puedes usar un framework tipo a
funkload:
http://funkload.nuxeo.org/

Pero hay otro montón de herramientas de este tipo o más simples. Como
ab (apache bench), httperf, http_load, jmeter, ...

Según el tipo de peticiones que hagas, verás una mayor carga en cpu,
memoria, io de disco o una mezcla de ellos. Por desgracia no conozco
soluciones mágicas para dar una respuesta adecuada general. Solo
estudiar, estudiar y estudiar.

Saludos:

Javi
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a