【发布时间】:2017-05-29 02:54:09
【问题描述】:
作为容量和性能测试的一部分,我正在尝试使用 java 线程并行执行多个 gremlin 请求(图遍历)。它可以在较少的线程数下正常工作。
当我增加线程数(比如 500)时,我收到以下错误
线程“Thread-34”java.lang.RuntimeException 中的异常: java.lang.RuntimeException:java.util.concurrent.TimeoutException: 等待可用主机超时。 在 org.apache.tinkerpop.gremlin.driver.Client.submit(Client.java:146) 在 com.tests.java.titan.Vertices.exists(Vertices.java:37) 在 com.tests.java.titan.Complex.searchNodesRelatedByRelation(Complex.java:110) 在 com.tests.java.perfTests.TitanThread.run(ParallelGraphTraversal.java:112) 引起:java.lang.RuntimeException: java.util.concurrent.TimeoutException:超时等待 可用的主机。 在 org.apache.tinkerpop.gremlin.driver.Client.submitAsync(Client.java:194) 在 org.apache.tinkerpop.gremlin.driver.Client.submitAsync(Client.java:174) 在 org.apache.tinkerpop.gremlin.driver.Client.submit(Client.java:144) ... 3 更多
我尝试将 threadPoolWorker 的值从 1 增加到 2,将 gremlinPool 从 8 增加到 16(在文件 gremlin-server.yaml 中)。但我没有发现任何区别。
有人遇到过这个问题吗?您能否告诉我可能的最大同时连接数是否有限制?
我们的环境:CDH 5.7.1、Titan 1.1.0-SNAPSHOT、Solr 4.10.3、HBase 1.2.0,titan-tp3-driver 创建到 gremlin 服务器的远程连接并用于查询
【问题讨论】:
标签: titan gremlin tinkerpop gremlin-server