Estoy creando una aplicación de chat simple usando reaccionar y nodo js. Al usar socket para establecer una conexión entre el servidor y el cliente, me preguntaba el punto de usar este paquete. Dado que React vuelve a renderizar la página al cambiar de estado, puedo obtener mensajes de mi base de datos y cambiar el estado, lo que permite una aplicación de chat presumiblemente perfecta. ¿Habrá algún problema con una aplicación de chat de este tipo, donde los chats se mostrarían al obtener datos de la base de datos? Agregar un nuevo mensaje actualizaría nuevamente la base de datos y se recuperarían los datos. Por lo tanto, la página se actualizaría con el nuevo chat que se muestra, ya que se volvió a procesar debido al cambio de estado. Entonces, ¿cuál es la necesidad de socket en tal aplicación?
Podría construir lo que describe sin socket.io. Socket.io simplemente permite que los mensajes se entreguen en tiempo real utilizando websockets y algunas otras tecnologías para que no tenga que crear un sondeo prolongado.
Dicho de otra manera, cuando obtenga datos de la base de datos, tendrá que reaccionar, realizar una llamada a la API y obtener nuevos mensajes desde un punto final de la API de node.js. Esta llamada API deberá realizarse en un intervalo muy corto para que parezca que los mensajes se muestran en tiempo real.
Esta es una de las muchas situaciones en la programación en las que podrías escribir algo por ti mismo, pero existen soluciones de grado industrial que te ayudarán a acelerar tu desarrollo.