tengo el siguiente caso de uso para mi Tornado servidor web:Cómo compartir datos entre las peticiones de Tornado Web
Tras la POST solicita entradas se pueden hacer con el servidor, las entradas que no se persistió en un archivo o base de datos . A partir de las solicitudes GET, se puede iniciar o finalizar un proceso.
Por lo tanto, necesito compartir datos entre diferentes solicitudes en mi implementación RequestHandler
. ¿Cuál es la forma normal de hacerlo?
Tuve dificultades para guardar datos en self
, por ejemplo self.entry = "..."
. En otra solicitud, los datos ya no estaban presentes.
La única solución a trabajar que he encontrado es que para almacenar en el objeto de aplicación:
application = web.Application([
(r'.*', MainHandler,
])
y
def get(self):
# ...
self.application.entry = "..."
Es que la forma correcta? También sobre sincronización aquí, me refiero a acceso a datos compartidos.
No estoy familiarizado con Tornado, pero tenga en cuenta que esto probablemente no funcionará si utiliza más de un proceso. – monkut
@monkut Más de un proceso para qué, el servidor, el cliente? –
Tornado es un servidor de un solo proceso y un único subproceso ... esto funcionará. – oDDsKooL