Google Buzz 背后的技术是什么?
我真的很好奇 Google Buzz 和 Facebook 如何实现他们即时更新的评论功能。是不是和谷歌wave技术类似?是否有任何资源可以学习该技术并将其应用到我们的网站上?
谢谢 !!
I am really curious to know how Google Buzz and Facebook implement their comment feature which is being updated instantly. is it similar to Google wave technology? are there any resources to learn that technology and implement it to our website?
Thanks !!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我在 Google Buzz 团队工作,因此希望我能为您提供一个很好的答案。我显然不会讨论任何机密的后端内容,但我很高兴谈论我们使用的开放标准和所涉及的开源项目。
从 UI 空间开始,我们使用 Closure 和 GWT 用于构建丰富的响应式用户界面。我们使用的技术与您在 Google App Engine Channel API 中看到的技术大致相似 向用户推送实时更新。对于目前的实时 Web 应用程序来说,GAE 确实是一个不错的选择。
在 API 方面,我们尝试尽可能使用开放标准。我们使用 Atom 聚合格式 使 Feed 阅读器能够使用 Buzz 内容,并且 Pubsubhubbub 以启用内容的实时推送。事实上,我们将 Pubsubhubbub 用于我们的活动 Firehose - 这是可能的订阅 Buzz 中发生的所有更新的整个实时流。不用说,这会向您的应用程序发送大量流量。在等式的 JSON 方面,我们使用 活动流,我们正在积极与社区合作来完善和改进该规范。我们的 Atom 源也包括活动流,但重点是联合。我们 Buzz 的所有安全 API 端点均使用 OAuth 标准进行授权。
在后端,我认为我们唯一愿意公开说的是协议缓冲区非常棒。
I work on the Google Buzz team, so hopefully I can give you a good answer for our side of the equation. I obviously won't go into any of the confidential backend stuff, but I'm happy to address the open standards we use and the open source projects involved.
Starting in the UI space, we use technologies like Closure and GWT to build rich, responsive user interfaces. We use a technology vaguely similar to what you see in the Google App Engine Channel API to push real-time updates to the users. GAE is a really good choice for real-time web applications right now.
On the API side of things, we try to use open standards wherever possible. We use the Atom syndication format to enable feed readers to consume Buzz content, and Pubsubhubbub to enable real-time pushes of the content. In fact, we use Pubsubhubbub for our activity firehose — it's possible to subscribe to the entire real-time stream of all updates that happen in Buzz. Needless to say, this sends a massive amount of traffic to your application. On the JSON side of the equation, we use Activity Streams, and we're actively working with the community to refine and improve that specification. Our Atom feeds include Activity Streams as well, but the focus there is on syndication. All our secured API endpoints for Buzz use the OAuth standard for authorization.
On the backend, I think the only thing we're willing to say publicly is that Protocol Buffers are pretty awesome.
该技术称为实时网络 (http://en.wikipedia.org/wiki/Real- time_web)。有许多应用程序模型可以实现实时性,其中之一是 Comet (http:// en.wikipedia.org/wiki/Comet_%28programming%29)。在您的实现中使用它的好服务器是 APE (http://www.ape-project.org/)。它支持许多常见的 javascript 框架。更多内容您可以查看提供的链接。
The technology is called Real-time web (http://en.wikipedia.org/wiki/Real-time_web). You have many application models to achieve real-time and one of them is Comet (http://en.wikipedia.org/wiki/Comet_%28programming%29). Good server to use it in your implementation is APE (http://www.ape-project.org/). It supports many common javascript frameworks. More you can check in provided links.