Hazelcast несколько встроенных экземпляров на одной машине

#hazelcast

#hazelcast

Вопрос:

Возможно ли настроить hazelcast так, чтобы в одной jvm у вас были сервер и клиент и было несколько таких jvm на одной машине, где имя группы всегда одно и то же, а клиент всегда подключается к серверу в одной и той же jvm?

Ответ №1:

Да, это возможно

JVM может содержать более одного экземпляра, клиента или сервера

Или иметь две или более JVM

Необходимо проверить режим интеллектуального клиента.

«Умный» клиент подключается ко всем серверам и использует «наилучшее» соединение для каждого запроса. Итак, у него есть соединение, открытое для всех серверов, обратное тому, что вы хотите.

Установите smartClient значение false, и вы подключитесь к указанному серверу, который будет действовать как прокси и при необходимости извлекать данные для этого клиента с других серверов.

Комментарии:

1. Дело в том, что я не хочу указывать, к какому серверу должен подключаться клиент. Все серверы запущены на одной машине. Таким образом, клиент должен просто подключиться к серверу в той же jvm, что и сервер. Прямо сейчас, когда я запускаю несколько jvm (каждая с сервером клиентом), клиент на второй jvm подключается к серверу с первой jvm вместо сервера в той же jvm

2. В настоящее время вы не можете этого сделать. Вы можете подключаться ко всем серверам одновременно или изолированно ко всему определенному. Возможно, вопрос здесь в том, почему . Почему бы не перенести логику с клиента на нужный вам сервер. Вы можете, например, запустить Java Callable на определенном экземпляре.