Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

628
Views
Actualización en tiempo real en la aplicación Django usando MySQL <> WebSocket

Necesito obtener datos continuamente de una base de datos MySQL que obtiene datos con una frecuencia de actualización de alrededor de 200 ms. Necesito actualizar continuamente el valor de los datos en el campo de texto del tablero. Mi tablero está construido en Django.

He leído mucho sobre Channels , pero todos los tutoriales son sobre aplicaciones de chat. Sé que necesito implementar WebSockets que básicamente tendrán una conexión abierta y obtendrán los datos. Con la aplicación de chat, tiene sentido, pero no he encontrado nada que hable sobre la base de datos MySQL .

También leí sobre mysql-events . Dado que los datos que ingresan a la tabla provienen de un sensor externo, no entiendo cómo puedo monitorear una tabla dentro de Django, es decir, cada vez que se agrega una nueva fila en la tabla, necesito que se inserte esa nueva en base a una columna valor.

¿Alguna idea sobre cómo hacerlo? He revisado muchos artículos y no pude encontrar algo específico para este requisito.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Cree un microservicio para conexiones Websockets

Otra forma de implementar esta función es crear un microservicio WebSocket independiente.

La arquitectura Monolyth no es lo que necesitas aquí. Cada WebSocket abrirá una conexión a Django (que estará detrás del proxy inverso y el servidor: NGINX y Gunicorn ej.). Si su cliente abre dos pestañas en el navegador, obtendrá 2 conexiones, etc.

Mi recomendación es modificar la pila tecnológica (sí, soy un gran admirador de Django, pero hay muchas soluciones geniales para construir WS):

  1. Use Starlette listo para el marco de producción con WebSockets integrados: https://www.starlette.io/websockets/
  2. Use uvicorn.workers.UvicornWorker for Gunicorn para administrar su aplicación ASGI: esta es solo 1 línea de código, como gunicorn -w 4 -k uvicorn.workers.UvicornWorker --log-level warning example:app
  3. maneje sus conexiones WebSocket y use ejemplos para solicitar actualizaciones de la base de datos: https://www.starlette.io/database/
  4. Use un código Javascript súper simple para abrir la conexión del lado del cliente y escuchar las actualizaciones.

Entonces, sus modelos, plantillas, la vista será administrada por Django. Starlette administrará sus conexiones WebSocket de forma asincrónica nativa. Si está interesado en esa opción, puedo darle instrucciones detalladas.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!