PHP:TCP连接监控

时间:2009-11-16 03:25:49

标签: php network-monitoring

我有一个应用程序,用于每周一次连接服务1小时。这个会话有很多要求,其中一个是我们一次只有一个开放的TCP连接。

在30个左右的会议中,我们已经完成了3个会话,其中1个小时内有多个tcp连接打开。

我想知道在php中是否有一个方法会返回连接状态,我考虑过使用netstat并查找我们连接的服务器的ip,然后通过该状态确定是否可以继续或我们应该等待。这样做的问题是我们计划在未来购买更多连接,这样一次只能传递1个连接。

我们正在使用zend框架中的Zend_Http_Client并尝试了以下内容:

取消设置客户端和适配器对象 在客户端请求函数之后显式调用适配器close函数 我最后一次取消设置并关闭适配器

一切顺利,

杰森

3 个答案:

答案 0 :(得分:0)

执行netstat命令并查看当前是否建立了与远程主机的任何连接可能是最简单的。

答案 1 :(得分:0)

你不应该试图在客户端解决这个问题。限制服务器中的并发连接。

答案 2 :(得分:0)

重新审视此问题后,我决定在套接字流选项中使用bindto选项,每次都绑定到同一个端口。这应确保关闭先前的连接并释放端口。

测试尚未完成,但初始结果未显示重复的连接。

http://ca.php.net/manual/en/context.socket.php