2016-07-16 3 views
0

Я хочу развернуть сервлет на кластере tomcat с двумя узлами, в которых используется кэширование карусели. Настройка следующая:Развертывание сервлета tomcat с кэшированием карусели

  • две виртуальные машины. каждый с настройкой tomcat7.
  • java-программа для создания иллюстраций на каждой виртуальной машине. распределенный кеш создается на двух виртуальных машинах независимо от контекста tomcat.

Сервлет создает соединение с клиентом ореха лебедки и доступ к IMAP в карусели.

Я заметил, что на каком-то форуме я сказал, чтобы создать экземпляр hazelcast в контекстеInitialized() функции в tomcat. Таким образом, всякий раз, когда начинается контекст tomcat, запускается карие лебедки; контекст tomcat уничтожен, также будет уничтожен кариес.

Я сомневаюсь, будет ли создание экземпляра карибского фона в контекстеInitialized() функция будет более эффективной и подходящей для интеграции tomcat-hazelcast? Или на самом деле не так уж много, если я использую мою текущую java-программу для создания каретки, независимо от жизненного цикла контекста tomcat?

В настоящее время я сталкиваюсь с проблемой длительного времени отклика сервлета, когда несколько пользователей получают доступ к веб-странице serlvet. Я также использую блокировку IMAP, чтобы обеспечить соответствующий процесс параллелизма. Итак, вы хотите знать, как настроить его для лучшей производительности. Цените любые советы.

Спасибо! Ryan

ответ

0

Мое предложение было бы использовать функцию NearCache для клиентов Hazelcast, чтобы вы могли отключить узел Hazelcast от tomcat.

Hazelcast Cluster: Настройка кластера Hazelcast с конфигурацией IMap и реализовать MapStore, которые должны заботиться о загрузке IMap с кэшем правомочных сегментов. Также используйте Обработчики событий, чтобы позаботиться об обновлении кеша.

Tomcat Servlet Layer: Запуск клиентов Hazelcast на каждом из серверов tomcat и включение NearCache на этих клиентах. Как только клиент Hazelcast встанет, настройки NearCache будут следить за синхронизацией содержимого из своего кластера. Оба экземпляра tomcat будут обновлены с содержимым кеша.

Что нужно помнить:

  1. Число узлов в кластере HZ зависит от размера кэша. Рекомендация заключается в том, чтобы размер Max Heap составлял около 4 ГБ, чтобы избежать накладных расходов GC и увеличить количество узлов по мере необходимости.
  2. The NearCache будет частью самого контейнера tomcat, поэтому при запуске tomcat распределите правильный размер кучи.
  3. Правильно отредактируйте содержимое карты и сохраните ее в небольшом размере, чтобы избежать проблем ввода-вывода, поскольку при синхронизации будет выполняться передача данных между кластером и контейнером tomcat.

Сообщите мне, если это соответствует вашей архитектуре и возникнут вопросы.