Breve descripción de la tecnología utilizada: ReactJS para UI, Python Server para API (FastAPI) y SQL Server como base de datos. Aquí, FastAPI usa el módulo pyodbc para conectarse a la base de datos de SQL Server mediante la creación de un grupo. Ahora, el objetivo principal es actualizar el componente React tras los cambios en la tabla de la base de datos.
El enfoque actual: hay una API /api/get que obtiene el estado actual de la tabla de la base de datos. La interfaz de usuario de React sondea continuamente esta API para obtener nuevas actualizaciones de la base de datos en un intervalo fijo.
¿Hay algún enfoque mejor para recibir actualizaciones de la base de datos de una manera más eficiente?
TL;DR
Sí, usa websockets.
Cada vez que su interfaz de usuario busca actualizaciones, crea una nueva solicitud HTTP. A la larga, esto será costoso, especialmente para las encuestas frecuentes.
Una alternativa es utilizar websockets, que establecen la conexión una vez y luego permiten comunicarse bidireccionalmente con el servidor (en este caso, el servidor fastAPI).
Consulte los documentos para obtener más información.