Articles of tornado de

Agregar un nuevo controlador al servidor de tornado de Python en ejecución

Soy nuevo en el servidor de tornado de Python, y estaba evaluando el tornado de Python para mi próximo proyecto que tiene que trabajar en un entorno de tiempo real. He ejecutado un código de muestra de github con la implementación de Web Socket. Este es el fragmento de código de ejemplo. app = web.Application([ […]

Manera correcta de “agotar” una solicitud en Tornado

Logré codificar un error bastante tonto que haría que uno de mis manejadores de solicitudes ejecutara una consulta de base de datos muy lenta. Un poco interesante es que me di cuenta de que incluso después de un asedio completo, Tornado todavía estaba batiendo peticiones (a veces 90 años más tarde). (Comentario -> No estoy […]

ejecutar múltiples procesos de tornado

He leído varios artículos y tutoriales sobre cómo ejecutar el número N de procesos de Tornado, donde N = número de núcleos. Mi código estaba funcionando, corriendo en todos los 16 núcleos pero de alguna manera logré arruinarlo y necesito nuevos ojos en esto. import tornado.ioloop import tornado.web import tornado.httpserver from core import settings from […]

Implementación y prueba del tiempo de espera de la conexión del servidor WebSocket

Estoy implementando un servidor WebSockets en Tornado 3.2. El cliente que se conecta al servidor no será un navegador. Para los casos en los que hay comunicación de ida y vuelta entre el servidor y el cliente, me gustaría agregar un máximo. hora en que el servidor esperará una respuesta del cliente antes de cerrar […]

¿Cuál es el nuevo marco de Tornado de Facebook?

Facebook acaba de abrir un marco llamado Tornado . ¿Qué es? ¿Qué ayuda a hacer un sitio? Creo que Facebook usa una estructura LAMP. ¿Es útil para sitios más pequeños que están escritos bajo la stack LAMP?

tornado equivalente de retraso

¿Existe un comando equivalente en tornado para la función de retardo sin afectar el proceso principal a la suspensión (por lo tanto, las devoluciones de llamada se ejecutarán incluso cuando el subproceso principal está desactivando una nueva llamada de función)

Manera estándar de manejar sesión de usuario en tornado

Entonces, para evitar el problema de “nadie responde mejor”, voy a preguntar, no por la mejor manera, sino por la forma estándar o más común de manejar las sesiones cuando se utiliza el marco de Tornado. Es decir, si no estamos usando autenticación de terceros (OAuth, etc.), sino que queremos tener nuestra propia tabla de […]

¿Dónde puedo ver el archivo de registro del tornado?

Creo que había un archivo de registro predeterminado, pero no lo encontré todavía. A veces, el proceso de solicitud HTTP arrojaría una excepción en la pantalla, pero sugiero que también vaya a algún lugar del disco o no sabría qué estaba mal durante una prueba a largo plazo. PS: escribir un controlador de excepciones es […]

Tornado coroutine

Estoy tratando de aprender tornado coroutines, pero tengo un error al usar el siguiente código. Traceback (most recent call last): File “D:\projekty\tornado\env\lib\site-packages\tornado\web.py”, line 1334, in _execute result = yield result File “D:\projekty\tornado\env\lib\site-packages\tornado\gen.py”, line 628, in run value = future.result() File “D:\projekty\tornado\env\lib\site-packages\tornado\concurrent.py”, line 109, in result raise_exc_info(self._exc_info) File “D:\projekty\tornado\env\lib\site-packages\tornado\gen.py”, line 631, in run yielded = self.gen.throw(*sys.exc_info()) […]

Mejor manera de manejar los errores en el controlador de solicitud de tornado

Hay dos controladores similares: AgeHandler1 y AgeHandler2. En el primero simplemente generamos una excepción específica para devolver un mensaje de error; en el segundo, devolvemos manualmente un mensaje de error. ¿Qué piensas de estos dos métodos? ¿Qué método es preferible para un proyecto grande? ¿Alguna otra mejor práctica? import logging import os.path import traceback from […]