我有一个使用 stream_socket_client() 的 Php 应用程序,通过 tcp 从后端服务器获取数据,但我想保持连接活跃,或者在池中更好,或者避免连接/断开开销。
但我不是 Php 高手,所以我不知道该怎么做。虽然我可能会在几个小时内弄清楚,但我的时间可能更适合花在征求每个人的意见上,所以有什么建议吗?
最佳答案
在创建流时设置 STREAM_CLIENT_PERSISTENT
标志可防止连接空闲。在内部,该标志使 stream_socket_client()
调用 pfsockopen()
( doc ) 而不是 fsockopen()
( doc )。
连接持久性仅限于打开连接的服务器进程。当您的脚本结束并再次调用它时,可能无法保证同一进程处理您的请求 - 在这种情况下将打开另一个连接。将连接放入 $_SESSION
以共享它是行不通的。
关于php - 如何使 Php stream_socket 保持事件状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/242316/