加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

畅聊关于PHP中Sphinx长连接问题

发布时间:2022-07-05 16:40:19 所属栏目:PHP教程 来源:互联网
导读:关于什么是Sphinx这里我不不介绍了大家可百度查一下,下面我来介绍的是关于PHP中Sphinx长连接问题解析,希望些文章对各位朋友有帮助. SphinxClient::open $s-setServer(192.168.1.108,9312); //$s-open(); var_dump($s-query(abxxxx)); var_dump($s-query(abxx
  关于什么是Sphinx这里我不不介绍了大家可百度查一下,下面我来介绍的是关于PHP中Sphinx长连接问题解析,希望些文章对各位朋友有帮助.
 
  SphinxClient::open
 
   $s->setServer('192.168.1.108','9312');
  //$s->open();
  var_dump($s->query('abxxxx'));
  var_dump($s->query('abxxxx'));
  注意这里$s->open()先屏蔽,然后我们在cli状态下利用strace命令跟踪执行此php脚本,收集系统调用信息会发现.
 
  在系统调用中出现了两次connect到192.168.1.108的请求,也就是说在没调用open方法的时候,在同一个php运行时中会导致两次对sphinx产生的tcp请求.
 
  611 fcntl64(3, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
  612 connect(3, {sa_family=AF_INET, sin_port=htons(9312), sin_addr=inet_addr("192.168.1.108")}, 16) = -1 EINPROGRESS (Operation now in progress)
  613 select(4, NULL, [3], NULL, {60, 0})     = 1 (out [3], left {59, 999996})
  614 fcntl64(3, F_SETFL, O_RDONLY)           = 0
  615 send(3, "1", 4, MSG_NOSIGNAL)    = 4
  616 recv(3, "1", 4, 0)               = 4
  617 send(3, "1312241", 16, MSG_NOSIGNAL) = 16
  618 send(3, "246abxx"..., 140, MSG_NOSIGNAL) = 140
  619 recv(3, "131`", 8, 0)       = 8
  620 recv(3, "25title4text2"..., 96, 0) = 96
  621 close(3)     
  。。。。。。。。。。。。。。。。。。。
  。。。。。。。。。。。。。。。。。。。
  756 socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
  757 fcntl64(3, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
  758 connect(3, {sa_family=AF_INET, sin_port=htons(9312), sin_addr=inet_addr("192.168.1.108")}, 16) = -1 EINPROGRESS (Operation now in progress)
  759 select(4, NULL, [3], NULL, {60, 0})     = 1 (out [3], left {59, 999997})
  760 fcntl64(3, F_SETFL, O_RDONLY)           = 0
  761 send(3, "1", 4, MSG_NOSIGNAL)    = 4
  762 recv(3, "1", 4, 0)               = 4
  763 send(3, "1312241", 16, MSG_NOSIGNAL) = 16
  764 send(3, "246abxx"..., 140, MSG_NOSIGNAL) = 140
   618 select(4, [3], NULL, [3], {0, 0})       = 0 (Timeout)
  619 send(3, "1312241", 16, MSG_NOSIGNAL) = 16
  620 send(3, "246abxx"..., 140, MSG_NOSIGNAL) = 140
  621 recv(3, "131`", 8, 0)       = 8
  622 recv(3, "25title4text2"..., 96, 0) = 96
  623 write(1, "array(9) {n", 11array(9) {
  624 )    = 11
 

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读