欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

实时数据更新有什么思路可以完成?

程序员文章站 2022-06-07 16:45:17
...
比如,实现一块区域专门进行最新留言的展示.. 每次有最新的留言就把它显示在上面..
(比如人人影视右下角的“精彩评论”, 不知道是不是实时的)

再比如,做一个网站,抓取其他网站上的信息,比如租房价格。
但是其他网站上的租房价格的更新并不是定时的。

对于这些实时更新的需求? 有什么思路可以完成?

回复内容:

比如,实现一块区域专门进行最新留言的展示.. 每次有最新的留言就把它显示在上面..
(比如人人影视右下角的“精彩评论”, 不知道是不是实时的)

再比如,做一个网站,抓取其他网站上的信息,比如租房价格。
但是其他网站上的租房价格的更新并不是定时的。

对于这些实时更新的需求? 有什么思路可以完成?

这个需求跟在线聊天类似

  • ajax频繁请求
  • 长轮询

可以看看这篇[文章](http://blog.leezhong.com/tech/2011/03...)

  • websocket (开源swf库可以解决低版本浏览器的兼容,swf需要服务器端的一个授权)

swf开源库:[https://github.com/gimite/web-socket-...](https://github.com/gimite/web-socket-...)
这里我写了段简单的服务器端授权[代码](https://github.com/xiaozi/PolicyServe...)

如果服务端没有要求...node比较好点吧..

socket.io..多种方案,也支持多种浏览器

到现在为止的成熟方案似乎包括tornado, node, erlang, 另外不知道go实现的怎么样, python里面还有一堆gevent, greenlet可以用, twisted也可以考虑. PHP多线程或多进程就别想了.

在产品级别, 已知的比如 www.quora.com 是tornado, gtalk不知道如何实现, 可能是java?
mochimedia应该比较erlang
国内的腾讯阿里什么的就更不知道了, 他们都有做web chat的, zhihu.com也是tornado

http://segmentfault.com/q/10100000001...
我用socket.io解决了实时消息的问题。

Microsoft ASP.NET SignalR