Распределенный OrientDb при ожидании синхронных ответов - PullRequest
0 голосов
/ 24 октября 2018

У моих запросов истекает время ожидания с этой ошибкой ..

2018-10-24 01:30:28:710 WARNI [orient_node_0] Timeout (1237ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4365 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:29:069 WARNI [orient_node_0] Timeout (1221ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4367 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:29:160 WARNI [orient_node_0] Timeout (1229ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4368 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:29:581 WARNI [orient_node_0] Timeout (1218ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4372 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:29:799 WARNI [orient_node_0] Timeout (1217ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4377 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:30:931 WARNI [orient_node_0] Timeout (1225ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4383 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:31:030 WARNI [orient_node_0] Timeout (1215ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4385 task=TxPhase1) [ODistributedDatabaseImpl]
2018-10-24 01:30:31:112 WARNI [orient_node_0] Timeout (1217ms) on waiting for synchronous responses from nodes=[orient_node_1, orient_node_2, orient_node_0] responsesSoFar=[orient_node_0, orient_node_0] request=(id=0.4386 task=TxPhase1) [ODistributedDatabaseImpl]

Несколько вопросов

  1. Очевидный вопрос: почему истекает время ожидания?

  2. мой конфиг имеет "executionMode": "asynchronous" почему он все еще ожидает синхронных ответов?

  3. responsesSoFar=[orient_node_0, orient_node_0] почему он получает ответы от одного и того же узла дважды?

  4. Мой запрос всегда идет к "orient_node_0".Как я могу распределить нагрузку?Я использую org.apache.tinkerpop.gremlin.orientdb.OrientGraphFactory.Но нет никакого метода с именем OrientGraphFactory.setConnectionStrategy, как они сказали в документации: http://orientdb.com/docs/3.0.x/distributed/Distributed-Configuration.html#load-balancing

Полная конфигурация:

  • 3 машины orient_node_0, orient_node_1,orient_node_2 работает как докер-контейнер.
  • Oracle JDK
  • OrientDb версия 3.0.9
  • Tikerpop3
  • config / default-distrib-db-config.json выглядит следующим образом:

{ "autoDeploy": true, "readQuorum": 1, "writeQuorum": "majority", "executionMode": "asynchronous", "readYourWrites": true, "newNodeStrategy": "static", "servers": { "*": "master" }, "clusters": { "internal": { }, "*": { "servers": ["<NEW_NODE>"] } } } - config / hazelcast.xml по умолчанию.

...