Tôi không chắc chắn về ngăn xếp tốt nhất để xây dựng ứng dụng trò chuyện. Hiện nay tôi đang nghĩ đến việc hai lựa chọn chính:ứng dụng trò chuyện: pubsubhubbub vs xmpp
- facebook cơn lốc xoáy
- nhược điểm: không sử dụng XMPP giao thức chat chính nhưng PubSubHubbub
- ưu: tôi thực sự thích sự đơn giản của nó đối với sự phát triển (webserver + webframework); pubsubhubbub cũng có vẻ đơn giản như một giao thức hơn xmpp; và tôi biết python
- XMPP + bosch, Punjab, ejabberd
- nhược điểm: không biết erlang; tổng thể có vẻ hơi khó khăn hơn để phát triển
- ưu: sử dụng giao thức XMPP
Ứng dụng trò chuyện sẽ cần phải có những điều sau đây:
- Tin nhắn cá nhân
- phòng Công
- Phòng riêng
- Lịch sử trò chuyện cho phòng (không phải mãi mãi, chỉ cần n tin nhắn cuối cùng)
- html nhúng
- url để trò chuyện phòng
Cả hai tùy chọn dường như khả năng mở rộng vì vậy đó là không thực sự lo lắng của tôi (chúng tôi đang nghĩ đến việc chạy các ứng dụng trong EC2 của Amazon cũng). Tôi biết có một dự án xây dựng một máy chủ xmpp sử dụng lốc xoáy nhưng nó không sẵn sàng để sử dụng sản xuất và thời hạn của chúng tôi không phải là lớn. Về cơ bản lo lắng chính của tôi là dễ phát triển và bằng cách nào đó hối hận sau này sử dụng pubsubhubbub để phát triển ứng dụng trò chuyện nhưng tôi đọc ở đâu đó rằng PubSubHubbub cuối cùng có thể thay thế XMPP thành REST thay thế SOAP - vậy bạn nghĩ sao?
CẬP NHẬT: Bạn có biết bất kỳ giải pháp nguồn mở nào sử dụng xmpp hỗ trợ MUC (public & riêng tư) và PM không?
Lưu ý, PubSubHubbub (PuSH) thậm chí không gần với XMPP. PuSH là một giao thức Publish-Subscribe rất cơ bản, với một cái gì đó rất giống với [Dialback] (http://xmpp.org/extensions/xep-0220.html) để xác thực. XMPP là nhiều hơn nữa mà nó sẽ không phù hợp trong hộp bình luận này. – Zash