我有两个PHP文件,它们运行很长时间(没有执行限制)。其中一个文件用于检查远程服务器上的一些数据。为了使它更有效,我运行了文件#1的几个实例。第二个文件应该是规范行为,一旦任何文件#1收到有效的响应。PHP - 将数据从一个进程发送到其他进程
问题 - 如何将数据从一个正在执行的文件传递给其他人?第一个想法是通过文件#1和文件#2将数据保存到文件定期检查文件修改时间。问题是它会给服务器造成很大的负载,如果我通过使用睡眠函数来限制它,那么我能够达到的最小睡眠时间是1ms(Linux系统的时间量 - 是否有任何方法可以改变它)?所以 - 也许任何人有任何想法如何将信息从一个过程传递给其他人?
$last = filemtime('action.txt');
while(!$stop) {
if($last != filemtime('action.txt')) { echo microtime(true); $stop = 1; }
clearstatcache('action.txt');
usleep(100);
$i++;
}
任何低于< usleep(1000)的工作原理是相同的 - 它睡觉1ms的只有1000迭代每秒完成的。
问候, 乔纳斯
感谢您的评论 - 在我的情况下,似乎流将是最合理和最有效的解决方案,因为我也能够在不需要读取/写入文件的情况下传递数据。 – flyeris 2010-11-06 16:49:50