Поведение в кластерной среде - PullRequest
0 голосов
/ 10 декабря 2018

В кластерной среде, я думаю, в основном балансировщик нагрузки будет передавать запрос на один из E-узлов.Теперь, как каждый E-узел понимает, к каким D-узлам обращаться при выполнении определенного запроса?Я немного запутался в том, как работает индекс и кеш в кластерной среде.

1 Ответ

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

Позвольте мне сначала объяснить различие между узлами E и D.

Любой хост, который участвует в кластере MarkLogic, может потенциально работать как E или D, или даже оба.

Хост работает как E-узел, определяется тем, находится ли он в группе с подходящими для вас серверами приложений, как тот, который предоставляет вам REST API, который вам нужен.Таким образом, не только Admin или App-Services, но обычно что-то более конкретное.

Работает ли хост как D-узел, определяется тем, имеет ли он какие-либо леса базы данных, которая вам подходит, например,тот, который содержит часть или все данные, используемые соответствующим сервером приложений.Так что не только модули или документы, но обычно что-то более конкретное.

Все хосты в кластере имеют полную копию конфигурации кластера.MarkLogic позаботится о получении данных, когда одному хосту нужны данные, расположенные в лесу на другом хосте.

Таким образом, D-узлы связаны с хранилищем данных, включая индексы как на диске, так и в памяти..

E-узлы используются для «оценки» входящих запросов, отсюда и «E».Некоторое кэширование происходит на D-узлах, но расширенные кеши деревьев и тому подобное обычно находятся на E-узле, поэтому им не требуется доступ к другим хостам для получения данных.

Обычно вам не нужно беспокоитьсяслишком много обо всем этом, пока вы не достигнете стадии, когда вам нужно настроить производительность, которая может быть очень специфической для конкретного случая.Может быть полезно попросить MarkLogic помочь с этим, если вы в состоянии сделать это.

Теперь, что касается балансировки нагрузки, это касается только входящих запросов, поэтому относится к E-узлам.Если все хосты находятся в одной группе (нередко), каждый хост может выступать в качестве E-узла.Балансировщику нагрузки необходимо знать сетевые IP-адреса или имена этих машин для ретрансляции трафика.В виртуальной среде вы, вероятно, захотите сделать еще один шаг вперед и разрешить автоматическое масштабирование вверх и вниз. MarkLogic Query Service также имеет отношение к этому.

HTH!

...