2016-11-10 5 views
0

Я столкнулся с несколькими отключениями с нашей установкой Hazelcast (Hazelcast, встроенной в Payara) в ситуации, когда рабочая нагрузка процесса, не связанная с газелибером, вызвала ошибки накладных расходов GC.Объявление мертвого члена, когда оно перестает отвечать на фактические запросы

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

Поэтому я хочу спросить, есть ли способ запустить элемент из кластера, если он перестает отвечать на другие запросы, а не только на сердцебиение.

+1

Это больше вопрос о payara. Я думаю, возможно, что можно запустить клиенты Hazelcast (вместо встроенных элементов, что в целом является рекомендуемой стратегией развертывания) и использовать отдельный кластер Hazelcast именно по той причине, о которой вы упомянули, GC. Резервные копии - это только чтение, если включено «чтение-от-резервное копирование», и оно также будет читать только в том случае, если у члена есть локальная резервная копия, он не будет запрашивать других членов с резервными копиями! – noctarius

+0

Да, автономный кластер - это то направление, которое я буду преследовать, только ребята из кабинета Hazelcast в Devoxx посоветовали также спросить здесь, было бы неплохо иметь такое поведение как функцию. – pdudits

ответ

1

Возможно, вы захотите рассмотреть возможность использования hazelcast в режиме «Lite» на экземплярах сервера Payara. Если вы включите режим «lite» на экземплярах, которые могут столкнуться с чрезмерным GC, эти экземпляры не должны влиять на производительность Hazelcast, так как эти узлы не будут хранить какие-либо данные для кластера ящерицы.

Однако необходимо дополнить это решение дополнительными экземплярами Full, которые будут хранить данные. Эти дополнительные экземпляры не должны запускать какое-либо ваше приложение и работать только в качестве отдельного узла ярусного дерева. В разделе Focused on throughput and performance в моем сообщении в блоге описываются некоторые сценарии использования членов кластера «Lite» Payara (поддерживаемых членами Lite hazelcast).

Подводя итог - если вы включите некоторые узлы в «Lite», и для каждого узла «Lite» вы добавите дополнительный «Полный» узел, который запускается сам по себе, без развертываемых приложений, вы должны отделить память, используемую вашим приложений и карусели в отдельные JVM. GC на JVM, который является «Lite» узлом и не содержит данных для кластера карусели, не должен влиять на производительность Hazelcast.

Смежные вопросы