Home >Backend Development >PHP Tutorial >php怎么每隔几秒读取一次数据

php怎么每隔几秒读取一次数据

WBOY
WBOYOriginal
2016-06-13 12:21:251576browse

php如何每隔几秒读取一次数据
项目的主要功能是利用编写注册好的com
通过php调用com接口进行远程服务器的连接和读取数据
并把数据展示到网页的功能。
$com->connect(server);
$com->read();

现在通过window.setInterval和ajax调用php文件已经可以实现每隔固定时间进行读取
但是使用此方法有个严重的问题,每次read之前都要connect服务器
不知道有没有什么方法可以只connect一次以后只需要read就可以了。

之前尝试使用单例模式也没有作用。 

------解决思路----------------------
每次请求结束,会自动释放当前php执行进程,所以php没有办法的。

对于网络连接,如果你的服务器是nginx,你可以用nginx做一个http长连接,php每次都是连接本地的nginx,这样php服务器连接目前机器,就只有一个网络连接了。
------解决思路----------------------
这个没有办法解决。
每次执行完都会断开连接的。除非你使用的是socket来连。
------解决思路----------------------
你前端用的是setInterval,不能做到connect一次,以后直接就read

你可以改成前端 websocket 和 php socket

------解决思路----------------------
还是你没明白我说的意思:只要你的程序不不终止,就不需要重新连接
但是在 HTTP 会话中,php 程序只运行在会话期间,也就是会话结束,程序就终止
所以重新连接是必然的。也不要错误的理解 C语言程序 的行为,因为在程序关闭前,他一直在运行。所以就不需要重新连接
如果你使用 websocket,那么会话就不是 HTTP 了,而是 websocket 协议(简称 WS)自然表现就不一样了

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn