que implementa un chat, utilizando ajax sondeo largo y GEvent. Para leer, el cliente ajax la vista de actualización y espera con Gevent.event.wait para una actualización.Django, Ajax sondeo largo, PostgreSQL: transacción inactivo
Problema: La transacción Postgresql abierta por Django al comienzo de una solicitud (para obtener información de la sesión) no se cierra hasta el final de la solicitud. Y esas transacciones inactivas llevan mucha memoria.
¿Cuál puede ser la manera más limpia para cerrar la transacción Postgresql sin cerrar la solicitud? Actualmente estoy enviando la señal request_finished manualmente, pero se siente como un hack.
Hemos perdido mucho tiempo tratando de hacer el trabajo socketio través de Nginx (front-end) con GEvent/gunicorn/Apache (back-end). Nginx no puede hacer eso sin una gran cantidad de modificaciones. E incluso con aquellos que no fueron capaces de enlazar el identificador de usuario socketio con el identificador de sesión de Django, por lo que no fueron capaces de obtener información de los usuarios. Si tiene un tutorial completo para recomendar, nos encantaría verlo. La mayor parte del tutorial de chatio-chat que encontramos, no usa información de usuario django o una interfaz. – Ashe
en cuanto a hacer SocketIO y Django backends de autenticación trabajan juntos: https://gist.github.com/fd8e9631368e447de702 –
Para ser honesto, no vamos a deshacer en este momento, pero definitivamente vamos a tener eso para más adelante. Gracias. – Ashe