Понимание работы hazelcast

368
24 января 2017, 22:22

Добрый день уважаемые гуру, я с hazelcast только начинаю работать поэтому возможно мои вопросы покажутся тривиальными:

  1. Допустим у нас есть 2 ноды и hazelcast в embedded режиме: н1 и н2, есть какая-то мапа и данные распределились по обеим нодам, у мапы 1 синхронный бекап. Теперь я находясь в н1 я хочу получить по ключу данные которые лежат в н2, я обращаюсь к мапе, hazelcast понимает что данные на другой ноде, обращается к ней, но в этот самый момент н2 падает, что мне будет возвращено в итоге как результат метода get? Будет ли сразу начат механизм исключения не отвечающей ноды из кластера?

  2. Правильно ли я понимаю, что в hazelcast кластере все узлы соединены со всеми? Как в данном случаи работает механизм исключения ноды из-за пропущенных heartbeat если нет мастера? Кто принимает данные решение?

  3. Правильно ли я понимаю, что когда мы добавляем слушатель для мапы к примеру на добавление элемента, то его код отправляется на все ноды кластера и потом уже на конкретной ноде когда происходит вставка данных в ее локальную мапу, логика hazelcast видит что слушатель есть и что был добавлен с такой-то машины и посылает на эту машину событие?

  4. Правильно ли я понимаю, что при старте приложения если hazelcast используется в embedded режиме, то пока нода не задеплоится, в кластере приложение как бы не работает, то есть не будут в мапу ходить put-get и обращающийся поток будет просто висеть запаркованным в системе? А если нода уходит из кластера и оставшимся нужно перестроить кеш у них операции с hazelcast «встают на паузу»? Можете объяснить как это работает?

  5. Если не сложно, опишите пожалуйста как работает DurableExecutorService, особенно при разрыве сетти или падении выполняющей ноды,как на второй ноде происходит понимания этого и запуск таска? Я читал в документации про подмену значений в кольцевом буфере и т. д., но к сожалению не полностью это понял.

Заранее благодарен

READ ALSO
Проверяемые исключения

Проверяемые исключения

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

362
Как построить дерево при помощи Jstree?

Как построить дерево при помощи Jstree?

Здравствуйте, есть вопрос касательно плагина JstreeУ меня есть информация такого вида

484
JNI Проблема с вызовом функции на С из Java кода

JNI Проблема с вызовом функции на С из Java кода

Здравствуйте, мне необходимо из java кода вызвать функции, реализованные на С/C++Как добиться того, чтобы сохранялась вызываемая последовательность...

341
Java, Android: создание видео из набора фотографий и аудиозаписи

Java, Android: создание видео из набора фотографий и аудиозаписи

Есть 38 фотографийИзвестен промежуток времени между каждой фотографией (в миллисекундах), когда и какая была сфотографирована

291