流媒体Twitter API - 它是如何工作的?

Pav*_*Pav 3 php twitter websocket node.js socket.io

我目前正在使用node.jssocket.oi实现流式Twitter api

想知道流媒体部分实际上是如何工作的(在Twitter端)?假设我想实现自己的直播服务,使用PHP/MySQL并从db获取最新评论并直播.

任何信息/输入将不胜感激.

谢谢

leg*_*ter 5

流式Twitter API是HTTP Streaming API 的示例.

来自Quora(链接到上面):

HTTP Streaming是一种用于将更新推送到Web客户端的技术.Web客户端和Web服务器之间保持持久连接,这样当服务器有新信息时,它就可以将其推送到客户端.这是一个真正持久的连接,只会因网络问题或用户操作而丢失,例如导航离开网页或关闭应用程序.

查看响应标头:

Content-Type:text/html; charset=iso-8859-1
Server:Jetty(6.1.25)
Transfer-Encoding:chunked
Run Code Online (Sandbox Code Playgroud)

您可以看到它使用Jetty Web服务器.

虽然这是可以使用PHP实现的,但它不可能很好地扩展,并且效率不高 - 这就是Twitter使用Jetty的原因.

你实现你正在寻找的东西的方式是将你的评论提交并存储在你的数据库中,然后将该评论推送到某种消息队列.此消息队列将由某种实时技术(例如,与Jetty一起使用的进程)监视,消息将从队列中读取,然后流式传输到连接到HTTP Streaming API的任何客户端.

注意:如果您只是想将更新(即实时推送,服务器推送,推送通知)推送到客户端(应用程序,Web浏览器),那么HTTP Streaming API可能过度杀伤