Ping
Ping API 範例
雖然 UI 畫面可以輕鬆查看 ping 回應時間,但當由遠端監控工具執行時,底層的 ping 命令可能更有用
輸入
https://127.0.0.1:8983/solr/<core-name>/admin/ping
此命令會 ping 核心名稱以取得回應。
輸入
https://127.0.0.1:8983/solr/<collection-name>/admin/ping?distrib=true&wt=xml
此命令會 ping 給定集合名稱的所有副本以取得回應
範例輸出
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">13</int>
<lst name="params">
<str name="q">{!lucene}*:*</str>
<str name="distrib">false</str>
<str name="df">_text_</str>
<str name="rows">10</str>
<str name="echoParams">all</str>
</lst>
</lst>
<str name="status">OK</str>
</response>
這兩個 API 呼叫的輸出相同。status=OK 表示節點正在回應。
搭配 SolrPing 的 SolrJ 範例
SolrPing ping = new SolrPing();
ping.getParams().add("distrib", "true"); //To make it a distributed request against a collection
rsp = ping.process(solrClient, collectionName);
int status = rsp.getStatus();
搭配 SolrClient 的 SolrJ 範例
SolrClient client = new HttpSolrClient.Builder(solrUrl).build();
SolrPingResponse pingResponse = client.ping(collectionName);
int status = pingResponse.getStatus();