什么是具有net_空闲状态的sphinx线程?

什么是具有net_空闲状态的sphinx线程?,sphinx,sphinxql,Sphinx,Sphinxql,我使用sphinx搜索引擎,有时跑步时 show threads; 我在下面看到一幅类似于线程的图片,其中的“netu Idle”状态是线程的“Time”值上升到100秒,在某些情况下上升到500秒,然后自动消失 这个线程是什么?它运行的时间和原因是什么?它意味着通过sphinxql协议有一个开放的连接。如果您只需同时打开两个到searchd的连接,您就可以轻松地复制它,然后在其中任何一个连接中,您将看到另一个连接,如果您不在那里执行任何操作,则状态将为net_idle。例如: Tab 1:

我使用sphinx搜索引擎,有时跑步时

show threads;
我在下面看到一幅类似于线程的图片,其中的“netu Idle”状态是线程的“Time”值上升到100秒,在某些情况下上升到500秒,然后自动消失


这个线程是什么?它运行的时间和原因是什么?

它意味着通过sphinxql协议有一个开放的连接。如果您只需同时打开两个到searchd的连接,您就可以轻松地复制它,然后在其中任何一个连接中,您将看到另一个连接,如果您不在那里执行任何操作,则状态将为net_idle。例如:

Tab 1:
[snikolaev@dev01 ~]$ mysql -P9314 -h0
mysql>

Tab 2:
[snikolaev@dev01 ~]$ mysql -P9314 -h0
mysql> show threads;
+-------+----------+----------+----------+--------------+
| Tid   | Proto    | State    | Time     | Info         |
+-------+----------+----------+----------+--------------+
| 16626 | sphinxql | query    | 0.000001 | show threads |
| 16598 | sphinxql | net_idle | 3.774544 |              |
+-------+----------+----------+----------+--------------+
2 rows in set (0.00 sec)
如果您不知道是谁打开了连接,您可以使用lsof、netstat和ps或其他类似的工具来跟踪,例如:

[snikolaev@dev01 ~]$ lsof -p 14267|grep TCP
searchd_o 14267 snikolaev    6u  IPv4 568694105      0t0       TCP *:9314 (LISTEN)
searchd_o 14267 snikolaev   13u  IPv4 568804452      0t0       TCP localhost:9314->localhost:24228 (ESTABLISHED)

[snikolaev@dev01 ~]$ sudo netstat -apn|grep 24228
tcp        0      0 127.0.0.1:9314              127.0.0.1:24228             ESTABLISHED 14267/./searchd_old
tcp        0      0 127.0.0.1:24228             127.0.0.1:9314              ESTABLISHED 28949/mysql

[snikolaev@dev01 ~]$ ps aux|grep 28949
518      28949  0.0  0.0 234088 10596 pts/58   S+   23:49   0:00 mysql -P9314 -h0

在我的例子中,我可以看到连接来自“mysql”,而在你的例子中,可能会有所不同。

你的答案总是很好。