No estoy seguro de la mejor pila para construir una aplicación de chat. Actualmente estoy pensando en dos opciones principales:aplicación de chat: pubsubhubbub vs xmpp
- facebook tornado
- contras: no utiliza el protocolo XMPP principal de chat, pero pubsubhubbub
- pros: me gusta mucho su sencillez para el desarrollo (servidor web + marco web); pubsubhubbub también parece más simple como protocolo que xmpp; y sé pitón
- xmpp + Bosch, Punjab, ejabberd
- contras: no saben Erlang; en general parece un poco más difícil de desarrollar
- pros: utiliza el protocolo XMPP
La aplicación de chat tendrá que tener lo siguiente:
- mensajes privados
- habitaciones Públicas
- Habitaciones privadas
- Historial de chat de habitaciones (no para siempre, solo los últimos n mensajes)
- HTML que incorpora
- url para sala de chat
Ambas opciones parecen escalable de modo que en realidad no es mi preocupación (estamos pensando en ejecutar la aplicación en el EC2 de Amazon también). Sé que hay un proyecto que construye un servidor xmpp utilizando tornado, pero no está listo para su uso en producción y nuestra fecha límite no es tan grande. Básicamente, mi principal preocupación es la facilidad de desarrollo y de alguna manera lamentarme más tarde al utilizar pubsubhubbub para desarrollar una aplicación de chat, pero leí en algún lugar que PubSubHubbub eventualmente podría reemplazar a XMPP ya que REST reemplazó a SOAP, entonces, ¿qué piensas?
ACTUALIZACIÓN: ¿Conoce alguna solución de código abierto que utilice xmpp que admita MUC (público & privado) y PMs?
Nota, PubSubHubbub (PuSH) ni siquiera está cerca de lo que es XMPP. PuSH es un protocolo de publicación-suscripción muy básico, con algo muy parecido a [Dialback] (http://xmpp.org/extensions/xep-0220.html) para la autenticación. XMPP es mucho más que no cabría en esta caja de comentarios. – Zash