Actualización de la página web en tiempo real

Estoy en el proceso de hacer un juego de estrategia basado en el modo multijugador basado en un navegador similar a Risk.

En este momento, la forma más sencilla de hacer las cosas parece ser hacerlo como una página web normal. Cada vez que un jugador se actualiza, la página web consulta la base de datos para obtener la información que necesita.

Esto es aceptable, pero preferiría que la página se actualice en tiempo real para que los jugadores no tengan que actualizar la página constantemente.

Podría hacer que la página web consulte la base de datos cada X segundos, pero he oído que esto no es eficiente.

Cuál sería la mejor forma de hacer esto?

Prueba la biblioteca Socket.io o Juggernaut2 . Necesitará un adaptador Redis para usar Juggernaut2, eche un vistazo a PhpRedis .

Un mejor enfoque, en lugar de actualizar toda la página, sería utilizar un jscript que sondeará el servidor y recibirá un resultado JSON y actualizará la página en consecuencia.

Esto dará como resultado una experiencia del usuario mucho más rápida y suave (ya que la página no se actualiza) y un mejor rendimiento \ carga de trabajo para sus servidores.

Para un enfoque aún mejor, debería mirar una implementación de COMET PHP que es un enfoque tipo pub-sub