Pregunta

Le escribo ahora a escribir algo de código evented (en Python usando GEvent) y utilizo el nginx como un servidor web y me siento ambos son grandes. Me dijeron que hay un comercio con eventos fuera pero era incapaz de verlo. Por favor alguien puede arrojar algo de luz?

James

¿Fue útil?

Solución

El mayor problema es que sin hilos, un bloque para un cliente hará que un bloque para todos los clientes. Por ejemplo, si un cliente solicita un recurso (archivo en el disco, paginado de salida de memoria, etc.) que requiere el sistema operativo para bloquear el proceso de solicitar, a continuación, todos los clientes tendrán que esperar. Un servidor multiproceso puede bloquear sólo el cliente y seguir sirviendo a los demás.

Dicho esto, si el escenario anterior es poco probable (es decir, todos los clientes solicitan los mismos recursos), entonces dirigido por eventos es el camino a seguir.

Otros consejos

La única dificultad de la programación evented es que no se debe bloquear, nunca. Esto puede ser difícil de lograr si utiliza algunas bibliotecas que fueron diseñados con hilos en mente. Si usted no controla estas bibliotecas, un tenedor () + mensaje IPC es el camino a seguir.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top