如何关闭 SolrClient 连接?
How to close a SolrClient connection?
我在 python 中使用 SolrClient 和 Solr 6.6.2。它按预期工作,但我在打开连接后关闭连接的文档中找不到任何内容。
def getdocbyid(docidlist):
for id in docidlist:
solr = SolrClient('http://localhost:8983/solr', auth=("solradmin", "Admin098"))
doc = solr.get('Collection_Test',doc_id=id)
print(doc)
不知道客户端有没有自动关闭。如果没有,如果多个连接保持打开状态,那会不会有问题?我只想知道是否有任何方法可以关闭连接。这是文档的 link:
https://solrclient.readthedocs.io/en/latest/
连接不会无限期地保持。据我所知,Jetty 中任何持久性 http 连接的标准超时时间为五秒,因此您不必担心保持活动状态的连接数量激增。
如果需要,Jetty 服务器也只会断开连接,因为它不需要保留它作为对客户端的保证。 solrclient
在内部使用请求会话,因此它应该为后续查询进行流水线操作。如果您 运行 对此有疑问,您可以在您的应用程序中保留一组可用的客户端作为池,然后请求一个可用的客户端,而不是每次都创建一个新客户端。
不过我很确定您 运行 默认设置不会遇到任何问题。
我在 python 中使用 SolrClient 和 Solr 6.6.2。它按预期工作,但我在打开连接后关闭连接的文档中找不到任何内容。
def getdocbyid(docidlist):
for id in docidlist:
solr = SolrClient('http://localhost:8983/solr', auth=("solradmin", "Admin098"))
doc = solr.get('Collection_Test',doc_id=id)
print(doc)
不知道客户端有没有自动关闭。如果没有,如果多个连接保持打开状态,那会不会有问题?我只想知道是否有任何方法可以关闭连接。这是文档的 link: https://solrclient.readthedocs.io/en/latest/
连接不会无限期地保持。据我所知,Jetty 中任何持久性 http 连接的标准超时时间为五秒,因此您不必担心保持活动状态的连接数量激增。
如果需要,Jetty 服务器也只会断开连接,因为它不需要保留它作为对客户端的保证。 solrclient
在内部使用请求会话,因此它应该为后续查询进行流水线操作。如果您 运行 对此有疑问,您可以在您的应用程序中保留一组可用的客户端作为池,然后请求一个可用的客户端,而不是每次都创建一个新客户端。
不过我很确定您 运行 默认设置不会遇到任何问题。