Загружать hazelcast imap при запуске приложения - PullRequest
0 голосов
/ 06 мая 2020

Как мне загрузить map в startup. У меня есть конфигурация ниже в моем hazelcast.xml файле с inital mode eager. Но все равно его загрузка только при первом обращении к карте.

  <map name="cpMap">
        <map-store enabled="true" initial-mode="EAGER">
            <class-name>com.hazelcast.samples.spring.data.migration.CPLoader</class-name>
        </map-store>
    </map>

ТАКЖЕ у меня есть компоненты реализации map loader. Для этого я использую пружину.

Ответы [ 2 ]

1 голос
/ 06 мая 2020

Вы можете вызвать карту после того, как приложение готово, или любое событие изменения контекста Spring через Spring EventListener, как показано ниже. javadocs .

1 голос
/ 06 мая 2020

В документации это довольно ясно:

Когда getMap() впервые вызывается из любого члена, инициализация начинается в зависимости от значения InitialLoadMode. Если он установлен на EAGER, инициализация начинается для всех разделов при касании карты, т.е. , все разделы загружаются при вызове getMap.

Следовательно, необходимо получить доступ к карте , чтобы карта начала заполнять себя . Если вы используете Spring, я бы рекомендовал bean-компонент CommandLineRunner для доступа к карте и запуска процесса.

...