выполнение запроса neo4j - PullRequest
       5

выполнение запроса neo4j

0 голосов
/ 13 декабря 2018

Я установил кластер Neo4j с 5 основными серверами и без реплик чтения.Я хочу понять, как Neo4j выполняет балансировку нагрузки и распределяет выполнение запроса.Насколько я знаю, каждый запрос, выданный кластеру, выполняется только на одном из узлов (реплика core / read), и каждый узел будет поддерживать копию базы данных графа.Под узлом я подразумеваю машину, которая может быть либо главным сервером, либо репликой чтения.

В этом случае, чтобы распределить выполнение запроса на 5 основных серверах, должен ли я каждый раз запрашивать узел-лидер илия должен запросить все 5 основных серверов?Будет ли узел-лидер позаботиться о направлении запросов к самому доступному или подходящему узлу в кластере?Может кто-нибудь объяснить, как работает балансировка нагрузки, если у нас есть 1) только основные серверы в кластере или 2) комбинация реплик ядра / чтения в кластере?

Я прошел по ссылке на документацию Neo4j: https://neo4j.com/docs/operations-manual/current/clustering/introduction/, но мне не было ясно, как будет работать распределение нагрузки и распределение запросов.Спасибо.

1 Ответ

0 голосов
/ 14 декабря 2018

Вероятно, это то, что мы можем улучшить, убедившись, что у нас есть обзор операций маршрутизации в этом разделе.

Маршрутизация не происходит внутри кластера, но через драйвер при использовании протокола маршрутизации bolt + и когда сеанс или транзакция явно помечены как транзакция WRITE или READ.

При использовании протокола маршрутизации bolt + при первоначальном подключении к кластеру драйвер запрашивает и получаеттаблица маршрутизации, чтобы знать, какие узлы в кластере имеют какие роли (эта таблица периодически обновляется).Драйвер будет использовать эту таблицу для маршрутизации транзакций, явно созданных в коде как транзакции READ или WRITE.

Транзакции WRITE всегда будут направляться лидеру.Транзакции READ будут перенаправлены на один из последователей или узлов реплики чтения с использованием циклического подхода (если не указано иное).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...