Estoy tratando de crear una aplicación de ruby on rails ecommerce, donde los clientes potenciales podrán hacer un pedido y el dueño de la tienda podrá recibir el pedido en tiempo real. El pedido finalizado se registrará en la base de datos (actualmente SQLite), y el propietario de la tienda tendrá una ventana del navegador abierta, donde aparecerán los nuevos pedidos justo después de que se finalice el pedido. (Información de la aplicación: estoy usando el framework HOBO Rails, y planeando alojar la aplicación en Heroku)¿Cómo puedo recuperar registros actualizados en tiempo real? (notificaciones push?)
Ahora estoy considerando la mejor tecnología para implementar esto, ya que se espera que la aplicación tenga muchos usuarios enviando muchos pedidos:
1) Cada ventana del navegador actualiza la página cada X minutos, sondeando continuamente el servidor para nuevos registros (nuevos pedidos). Por supuesto, esto pone una carga pesada en el servidor.
2) Como arriba, pero sondee el servidor con algún tipo de framework AJAX.
3) Utilice algún tipo de tecnología de inserción de servidor, como la mensajería asíncrona 'cometa'. Encontrado Juggernaut, el único problema es que está utilizando Flash y puertos personalizados, y esto podría ser un problema, ya que mi aplicación debe ser accesible detrás de los firewalls corporativos y NAT.
4) También estoy comprobando el framework node.js, parece ser eficiente para este tipo de mensajería asincrónica, aunque no es compatible con Heroku.
¿Cuál es la forma más eficiente de implementar este tipo de funcionalidad? ¿Hay quizás otro método en el que no haya pensado?
¡Gracias por su tiempo y ayuda!
¿cómo te fuiste con esto? :) – bxjx