Причинно-кластерная реализация

Я создаю приложение, которое использует собственный драйвер JavaScript neo4j. Я хочу убедиться, что мой код будет работать, если мы перейдем к причинному кластеру.

Онлайн-документация, похоже, не совсем ясна о том, как это сделать: я замечаю редкие ссылки на такие вещи, как "закладки" и "чтение того, что вы написали" и т. Д. Но как все это сочетается, неясно.

Может ли кто-нибудь предоставить краткий обзор?

1 ответ

Решение

Для использования причинного кластера вам необходимо изменить:

1) URL-соединение: заменить bolt://localhost:7687 от bolt+routing://localhost:7687

Это позволит вашему приложению выполнить некоторый LB-запрос к кластеру и быть отказоустойчивым, ничего не делая

2) Когда вы открываете новый сеанс, вы должны указать, что вы будете делать в этом сеансе, т.е. ЧИТАЙТЕ или ПИШИТЕ. Это поможет водителю выбрать хороший сервер (то есть сервер ядра или реплики). В противном случае предполагается, что вы выполните некоторые операции WRITE, а драйвер всегда выберет главный сервер...

3) поскольку вы будете в кластере env., Существует некоторое отставание (несколько секунд) для распространения обновления внутри кластера. Или иногда вам нужно read your own writes в течение двух сессий. Это где вам понадобится функциональность закладки.

Документация находится здесь: https://neo4j.com/docs/developer-manual/current/drivers/

Приветствия.

Другие вопросы по тегам