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

如何样做实时网页

程序员文章站 2024-01-25 18:22:16
...
怎么样做实时网页
数据信息放在一个文件中,用php做实时网页,如果文件发生变动,就立马更新当前所在的网页,想知道用什么办法来实现比较好?之前的思路是js做轮询,每秒一次请求,如果一旦发现文件变化了,就重新加载,觉得这个不好

------解决方案--------------------
这个需求要做到真正的“实时”,主要有两个地方:

1 文件更新即时通知。
2 服务器能即时将数据发送到客户端(浏览器)。

首先,文件更新即时通知,这个你想的肯定是循环去扫描文件的最后更新时间,从这一步上你想的办法就无法做到实时。想做到实时,就要利用系统的时间驱动。比如linux 2.6内核的inotify。用c写个程序,跑个进程。当接收到这个通知后就去修改php的源代码。

服务器推,其实就是在客户端与服务器的一次http交互中,服务器循环的给客户端response数据。这个网上说的大多比较笼统,我总结一下,其实也没那么复杂。

1 需要修改web服务器的buffer。
2 关闭web服务器会主动控制buffer的模块,如gzip。
3 需要突破浏览器的buffer size,如让程序每次在response数据时填充一些空格另数据达到浏览器的buffer size。如ie是1024字节。

在apache上很好实现,在nginx上有时比较奇怪,据我一些朋友反映他们无法成功,但我在本机nginx+chrome成功了。


接下来你要考虑的就是,如何将这两点结合在一起。
------解决方案--------------------
如果页面和程序并不在同一台服务器,可采取推送的方式,就是说,在A服务器执行脚本程序生成最新页面,然后用shell脚本 将最新页面移动到B服务器
如何样做实时网页

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 如何样做实时网页
  • 专题推荐