怎么样做实时网页 数据信息放在一个文件中,用php做实时网页,如果文件发生变动,就立马更新当前所在的网页,想知道用什么办法来实现比较好?之前的思路是js做轮询,每秒一次请求,如果一旦发现文件变化了,就重新加载,觉得这个不好 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个需求要做到真正的“实时”,主要有两个地方: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成功了。接下来你要考虑的就是,如何将这两点结合在一起。 用了ajax长连接,发现在保持连接的时候,如果再发起一次ajax请求的话,就会卡掉,要等到长连接响应后才会跟着响应。执行页面刷新,不是想要的结果。 可以这样实现,写个更新程序当前网页的程序,然后将其放在 linux中的计划任务中执行即可 如果页面和程序并不在同一台服务器,可采取推送的方式,就是说,在A服务器执行脚本程序生成最新页面,然后用shell脚本 将最新页面移动到B服务器 安装mysql时mysqladmin password '密码' 命令报错 关于类的设计问题 PHP新手求 网站浏览量统计方法.可用文件记忆 求PHP经典资料 zend studio for eclipse 6.0 中怎么配置服务器APACHE和数据库MYSQL ? 求助:请问php中时间段的正则表达式怎么写? 我想让php 支持mssql 应该怎么做 PHP能否即时响应数据库的数据变动? 小弟问一个简单的问题 我的程序为什么不支持 echo <<< JS trim()无法去除的空格,chr(161)。用户提交文章总是出现。 php 如何获取JS的值 ,新手折腾几天了 还请大侠赐教!
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成功了。
接下来你要考虑的就是,如何将这两点结合在一起。