<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 與 Elasticsearch 通信 如何與 Elasticsearch 通信要取決于你是否使用 JAVA。 ### Java API 如果你使用的是 JAVA,Elasticsearch 內置了兩個客戶端,你可以在你的代碼中使用: 節點客戶端: 節點客戶端以一個 _無數據節點_ 的身份加入了一個集群。換句話說,它自身是沒有任何數據的,但是他知道什么數據在集群中的哪一個節點上,然后就可以請求轉發到正確的節點上并進行連接。 傳輸客戶端: 更加輕量的傳輸客戶端可以被用來向遠程集群發送請求。他并不加入集群本身,而是把請求轉發到集群中的節點。 這兩個客戶端都使用 Elasticsearch 的 _傳輸_ 協議,通過**9300端口**與 java 客戶端進行通信。集群中的各個節點也是通過9300端口進行通信。如果這個端口被禁止了,那么你的節點們將不能組成一個集群。 > ### TIP Java 的客戶端的版本號必須要與 Elasticsearch 節點所用的版本號一樣,不然他們之間可能無法識別。 更多關于 Java API 的說明可以在這里找到 [Guide](http://www.elasticsearch.org/guide/). ### 通過 HTTP 向 RESTful API 傳送 json 其他的語言可以通過_9200端口_與 Elasticsearch 的 RESTful API 進行通信。事實上,如你所見,你甚至可以使用行命令 `curl` 來與 Elasticsearch 通信。 Elasticsearch 官方提供了很多種編程語言的客戶端,也有和許多社區化軟件的集成插件,這些都可以在 [Guide](http://www.elasticsearch.org/guide/) 里面找到。 向 Elasticsearch 發出的請求和其他所有的 HTTP 請求的組成部分是一致的。例如,計算集群中文件的數量,我們就可以使用: ~~~ <1> <2><3><4>curl -XGET 'http://localhost:9200/_count?pretty' -d '{ <5> "query": { "match_all": {} }}' ~~~ 1. 相應的 HTTP _請求方法_ 或者 _變量_ : `GET`, `POST`, `PUT`, `HEAD` 或者 `DELETE`。 1. 集群中任意一個節點的訪問協議、主機名以及端口。 1. 請求的路徑。 1. 任意一個查詢后再加上 `?pretty` 就可以生成 _更加美觀_ 的JSON反饋,以增強可讀性。 1. 一個 JSON 編碼的請求主體(如果需要的話)。 Elasticsearch 將會返回一個 HTTP 狀態碼類似于 '200 OK',以及一個 JSON 格式的主體(除了單純的 'HEAD' 請求),上面的請求會得到下方的 JSON 主體: ~~~ { "count" : 0, "_shards" : { "total" : 5, "successful" : 5, "failed" : 0 } } ~~~ 在反饋中,我們并沒有看見 HTTP 的頭部信息,因為我們沒有告知 `curl` 顯示這些內容。如果你想看到頭部信息,可以在使用 `curl` 命令的時候再加上 `-i` 這個參數: ~~~ curl -i -XGET 'localhost:9200/' ~~~ 從現在開始,本書里所有涉及 `curl` 命令的部分我們都會進行簡寫,因為主機、端口等信息都是相同的,縮減前的樣子: ~~~ curl -XGET 'localhost:9200/_count?pretty' -d ' { "query": { "match_all": {} } }' ~~~ 我們將會簡寫成這樣: ~~~ GET /_count { "query": { "match_all": {} } } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看