Я не уверен в лучшем стеке для создания приложения для чата. Сейчас я думаю о двух основных вариантах:
- facebook tornado
- cons: does not use the main chat protocol xmpp but pubsubhubbub
- плюсы: мне очень нравится его простота в разработке (веб-сервер + веб-фреймворк); pubsubhubbub также кажется более простым протоколом, чем xmpp; и я знаю питон
- xmpp + bosch, punjab, ejabberd
- cons: don't know erlang; overall seems a bit harder to develop
- плюсы: использует протокол xmpp
В приложении чата должно быть следующее:
- Приватные сообщения
- Общественные комнаты
- Частные комнаты
- История чата для комнат (не навсегда, только последние n сообщений)
- HTML-встраивание
- URL в чат-комнату
Оба варианта кажутся масштабируемыми, так что меня это не особо беспокоит (мы думаем также запустить приложение в ec2 от Amazon). Я знаю, что есть проект, который создает сервер xmpp с использованием торнадо, но он не готов к использованию в производственной среде, и наши сроки не так уж велики. По сути, меня больше всего беспокоит простота разработки и я как-то сожалею об использовании pubsubhubbub для разработки чат-приложения, но я где-то читал, что PubSubHubbub может в конечном итоге заменить XMPP, поскольку REST заменил SOAP - так что вы думаете?