首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ES查询异常

ES查询异常
EN

Stack Overflow用户
提问于 2020-06-12 22:53:29
回答 1查看 59关注 0票数 0

我正在使用stormcrawler 1.16和ELasticsearch-7.2.0。java版本是1.8.0_252。storm版本是1.2.3,maven版本是3.6.3。

我已经使用mvn原型创建了项目-

代码语言:javascript
运行
复制
    mvn archetype:generate -DarchetypeGroupId=com.digitalpebble.stormcrawler - 
    DarchetypeArtifactId=storm-crawler-elasticsearch-archetype -DarchetypeVersion=LATEST

我制作了一个seeds.txt文件,并放置了9个urls仅用于测试,并在--remote模式下使用REAEDME.md文件中给出的命令提交了拓扑。

它会成功运行,并按照预期爬行页面。

但是当我在seeds.txt文件中放置8000个URL时,问题就出现了。

我再次运行ES_IndexInit.sh文件,并使用与之前相同的命令提交拓扑。然后我得到了这个错误-

代码语言:javascript
运行
复制
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
     2020-06-12 11:26:11.416 c.d.s.e.p.AggregationSpout pool-12-thread-1 [ERROR] [spout #1]  Exception with ES query
    java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[?:1.8.0_252]
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:714) ~[?:1.8.0_252]
at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:174) [stormjar.jar:?]
at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:148) [stormjar.jar:?]
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:351) [stormjar.jar:?]
at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:221) [stormjar.jar:?]
at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) [stormjar.jar:?]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]

然后我在worker.log文件中查找错误。我在那里发现了同样的错误。然后我检查我的碎片的健康状况-

代码语言:javascript
运行
复制
      {
   "cluster_name" : "my-cluster1",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
   "number_of_data_nodes" : 1,
   "active_primary_shards" : 2,
    "active_shards" : 2,
   "relocating_shards" : 0,
    "initializing_shards" : 0,
    "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
   "number_of_pending_tasks" : 0,
   "number_of_in_flight_fetch" : 0,
    "task_max_waiting_in_queue_millis" : 0,
    "active_shards_percent_as_number" : 100.0,
   "indices" : {
     ".kibana_task_manager" : {
      "status" : "green",
      "number_of_shards" : 1,
       "number_of_replicas" : 0,
      "active_primary_shards" : 1,
       "active_shards" : 1,
      "relocating_shards" : 0,
      "initializing_shards" : 0,
      "unassigned_shards" : 0,
     "shards" : {
       "0" : {
      "status" : "green",
      "primary_active" : true,
      "active_shards" : 1,
      "relocating_shards" : 0,
      "initializing_shards" : 0,
      "unassigned_shards" : 0
       }
      }
    },
      ".kibana_1" : {
  "status" : "green",
  "number_of_shards" : 1,
  "number_of_replicas" : 0,
  "active_primary_shards" : 1,
  "active_shards" : 1,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "shards" : {
    "0" : {
      "status" : "green",
      "primary_active" : true,
      "active_shards" : 1,
      "relocating_shards" : 0,
      "initializing_shards" : 0,
      "unassigned_shards" : 0
            }
           }
         }
      }
    }

shards的健康状况是绿色的。现在,如果我在不同的或新的项目中提交爬虫拓扑,拓扑仍然是理想的,并且不会发出或传输任何元组。

我使用的是相互兼容的版本吗?我应该使用java11来进行elasticsearch,还是可以正常工作?

有关实例的详细信息-我使用的是4 gb内存的ec2 medium instance ubuntu18.04。

有没有人能解释一下问题是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-15 16:57:08

您不需要再次运行ESInitScript,除非您想删除状态索引中的URL。如果您多次运行它,将不会有任何状态,这可能是拓扑空闲的原因。

没有理由在种子文件中有更多的URLs会导致问题,我们通常会有超过1M个urls的种子文件,这不是问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62346814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档