相关疑难解决方法(0)

使用 Rest 高级客户端检索或插入数据到 Elastic Search 时出现 SocketTimeoutException

我在SocketTimeoutException从/向弹性检索/插入数据时面临。当周围有 时,就会发生这种情况10-30 request/second。这些请求是 get/put 的组合。

这是我的弹性配置:

  • 3 master nodes 每一个 4GB RAM
  • 2 data nodes 每一个 8GM RAM
  • 连接到上述数据节点的 Azure 负载均衡器(似乎只打开了 9200 端口)。并且 java 客户端连接到这个负载均衡器,因为它只是公开的。
  • 弹性版本:7.2.0
  • 休息高级客户端:

    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-high-level-client</artifactId>
        <version>7.2.0</version>
    </dependency>
    
    <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>7.2.0</version>
    </dependency>
    
    Run Code Online (Sandbox Code Playgroud)

索引信息:

  • 索引分片:2
  • 索引副本:1
  • 索引总字段数:10000
  • 来自 kibana 的索引大小:Total- 27.2 MB&Primaries: 12.2MB
  • 索引结构:
    {
      "dev-index": {
        "mappings": {
          "properties": {
            "dataObj": {
              "type": "object",
              "enabled": false
            },
            "generatedID": {
              "type": "keyword"
            },
            "transNames": { //it's array of string
              "type": …
    Run Code Online (Sandbox Code Playgroud)

java azure elasticsearch elasticsearch-java-api azure-elasticpool

8
推荐指数
1
解决办法
8074
查看次数