使用 Google App Engine 的 IM 服务
我想在 Meebo 线上实现基于 Web 的 IM 服务。听起来可能雄心勃勃,但这增加了它的乐趣。
我的研究表明 XMPP 对于 IM 来说是一个很好的协议,因为它也可以与专有协议通信。我说得对吗?我还需要什么来完成这个?
Google App Engine(GAE) 适合这个项目吗? GAE 可以用来创建和托管整个服务吗?这将大大简化问题。此外,GAE 确实支持 XMPP。
我知道我想做什么,需要知道最好的制作方法。
谢谢!
苏维尔
I want to implement a web-based IM service on the lines Meebo. Might sound ambitious but that adds to the fun of it.
My research suggests XMPP would be a good protocol for the IM since it can talk to proprietary protocols as well. Am I right? What else would I need to complete this?
Could Google App Engine(GAE) fit in to this project? Can GAE be used to create and host the whole service? That would simplify matters significantly.Also,GAE does support XMPP.
I know what I want to make, need to know the best way to make it.
Thanks!
Suvir
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
GAE 有一个 XMPP API,可让您的应用程序发送和接收 XMPP 消息。仅使用 GAE 制作实时聊天应用程序的真正症结在于您无法将更新推送到客户端。因此,您的客户端必须不断轮询服务器以查看是否有任何新消息。解决此问题的一种方法是在 GAE 外部运行 Comet 服务器,将推送转发到客户端。
有关彗星技术的维基百科页面
GAE has an XMPP API that lets your app send and receive XMPP messages. The real sticking point with making a real time chat app using only GAE is that you can't push updates to the client. So your client would have to continually poll the server to see if there were any new messages. One way around this is to operate a comet server outside of GAE to forward the pushes to the client.
wikipedia page on comet techniques
Google App Engine 允许您使用无状态 HTTP 请求和 XMPP,但不允许使用 TCP 套接字。因此,您只能使用使用前者的任何 IM 服务。
有关使用 XMPP 服务的示例,请参阅使用 XMPP 服务:
Google App Engine allows you to use stateless HTTP requests and XMPP, but not TCP sockets. Thus you're limited to any IM services which use the former.
For an example of using the XMPP service, see Using the XMPP service: