由于体积和性能测试的一部分,我试图执行多个并行的gremlin请求(图遍历)使用java线程。它工作正常的线程数量较少。TITAN-并行查询-Concurrent超时例外在org.apache.tinkerpop.gremlin.driver.Client.submit
当我增加线程(说500),我收到以下错误线程 “主题-34” 了java.lang.RuntimeException
异常的数量: 了java.lang.RuntimeException:JAVA .util.concurrent.TimeoutException: 超时等待可用主机。 at com.tests.java.titan.Vertices.exists(Vertices.java:37) at com.tests.java org.apache.tinkerpop.gremlin.driver.Client.submit(Client.java:146) 。 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更
我试图从8从1增加threadPoolWorker的值,以2和gremlinPool至16(在该文件的gremlin -server.yaml)。但我没有注意到任何区别。
有没有人遇到过这个问题?您能否告诉我是否有可能同时连接的最大数量限制?
我们的环境:CDH 5.7.1,1.1.0泰坦-SNAPSHOT,Solr的4.10.3,HBase的 1.2.0,泰坦TP3驱动器创建远程连接到服务器的小鬼和查询
非常感谢Stephen的解释和指向[Gremlin Driver Configuration](http://tinkerpop.apache.org/docs/current/reference/#_configuration)的指针。我在driver-settings.yaml文件中将maxInProcessPerConnection配置为500,并解决了问题 – smang