【发布时间】:2012-03-31 11:53:04
【问题描述】:
我需要编写一个由 setInterval("ajaxrequest('ftp.php', 'context')", 1000); 调用的 php 脚本功能。 php 脚本相当简单。它是一个 ftp 地址数组。它循环阵列并检查每个在线或不在线的IP地址。
这是一个php脚本的示例代码:
$conn_id = ftp_connect("192.168.1.108",21,1) or die ("Cannot connect to the server");
ftp_close($conn_id);
所以基本上这里发生了什么:我们有一个 javascript,它每秒调用一个 php 脚本来检查 ftp 服务器是否在线。在 PHP 脚本中尝试连接,如果它不能写出“无法连接到服务器”,那么它会关闭连接。
我的问题是我必须这样做,没有机会通过 cron 作业使用它,因为我们需要通过网页检查服务器是否实时在线。但是以这种方式,某处存在内存泄漏,它真的很快吞噬了我的记忆。
有什么方法可以释放内存或以其他方式解决此问题?
【问题讨论】:
-
使用 fsockopen() 代替。另外,这里是您的问题的相关答案stackoverflow.com/questions/2226374/…
-
感谢您的快速回复。不幸的是,这里没有解决问题是我如何做到的: $conn_id = fsockopen("192.168.1.108", 21, $errno, $errstr, 1) 或 die ("Cannot connect to the server"); fclose($conn_id);并且仍然存在内存问题,尽管它开始稍晚一点,然后使用 ftp_connect() 函数
-
内存问题可能与在许多 IP 上每秒请求检查有关。这已经结束了,为什么每一秒? FTP 服务器几乎 99.9% 的时间都在线,您检查了多少 IP?
-
所以它基本上可以是10 - 200范围内的任何服务器。1秒因为他们想实时查看服务器是否有任何问题。
标签: php javascript ajax