2013-11-21 105 views
0
  1. 我使用库http://phpseclib.sourceforge.net/ssh/intro.htmlSSH流和睡眠

  2. 我的脚本通过双向xml流与远程服务器进行通信。

  3. 它使用库的函数read()每隔30秒读取另一块数据。在这期间,我的脚本做别的+ sleep()

现在可以说,它是,我的脚本错过一些数据,因为它“睡”,而他们来了?那可能吗?还有什么可能会错过通过流传入的数据?

回答

1

如果您指的是PHP(客户端)上的sleep(),那么这是一个SSH客户端是在您的线程下还是在它自己的线程下运行的问题。

如果它是你的线程,那么它可能会丢失数据,如果它在它自己的线程上,它不会等待你回来。

注意:做你正在做的事情将会非常不稳定,一些SSH服务器会在一定的空闲时间后断开你的连接,以及不发送/接收数据的连接可能会终止。

0

如果您在客户端每隔30秒超时,服务器可能会在比没有读取或发送数据包的时间短的时间内超时。

真正有用的是你正在运行的命令,你期望的输出和你回来的输出。这将使诊断问题更容易。