php一次读取多次使用,php如何每隔几秒读取一次数据

项目的主要功能是利用编写注册好的com

通过php调用com接口进行远程服务器的连接和读取数据

并把数据展示到网页的功能。

$com->connect(server);

$com->read();

现在通过window.setInterval和ajax调用php文件已经可以实现每隔固定时间进行读取

但是使用此方法有个严重的问题,每次read之前都要connect服务器

不知道有没有什么方法可以只connect一次以后只需要read就可以了。

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

回复讨论(解决方案)

只要你的程序不不终止,就不需要重新连接

只要你的程序不不终止,就不需要重新连接

可能我没说明白

a.php:

mysql永久连接可以不? mysql_pconnect()

mysql永久连接可以不? mysql_pconnect()

连接方法被封装在com中,并不是mysql

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

对于网络连接,如果你的服务器是nginx,你可以用nginx做一个http长连接,php每次都是连接本地的nginx,这样php服务器连接目前机器,就只有一个网络连接了。

这个没有办法解决。

每次执行完都会断开连接的。除非你使用的是socket来连。

你前端用的是setInterval,不能做到connect一次,以后直接就read

你可以改成前端 websocket 和 php socket

还是你没明白我说的意思:只要你的程序不不终止,就不需要重新连接

但是在 HTTP 会话中,php 程序只运行在会话期间,也就是会话结束,程序就终止

所以重新连接是必然的。也不要错误的理解 C语言程序 的行为,因为在程序关闭前,他一直在运行。所以就不需要重新连接

如果你使用 websocket,那么会话就不是 HTTP 了,而是 websocket 协议(简称 WS)自然表现就不一样了

还是你没明白我说的意思:只要你的程序不不终止,就不需要重新连接

但是在 HTTP 会话中,php 程序只运行在会话期间,也就是会话结束,程序就终止

所以重新连接是必然的。也不要错误的理解 C语言程序 的行为,因为在程序关闭前,他一直在运行。所以就不需要重新连接

如果你使用 websocket,那么会话就不是 HTTP 了,而是 websocket 协议(简称 WS)自然表现就不一样了

刚开始确实没明白,不过现在懂了,已经花了2天时间改用websocket了

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值