2016-09-29 2 views
0

Я хотел бы знать, как кеш myBatis (локальный и второй уровень) обрабатывать данные в распределенной системе. У меня есть 5 экземпляров, работающих с Oracle db, и я использую MyBatis для доступа к данным. Все 5 экземпляров одинаковы, но работают на разных серверах. В Mybatis настроено использование кеша SESSION, который говорит, что кеш очищается при выполнении любого оператора insert/delete/update.Стратегия кэширования MyBatis в распределенной системе

Когда выполняется 1 экземпляр, локальный кэш этого сервера очищается. Как другие 4 экземпляра знают, что кеш нужно очистить/обновить?

ответ

0

Предоставление дорожки:

Я предполагаю, что все экземпляры за балансировки нагрузки и работает против одной БД Oracle. Узлы экземпляров лучше будут в кластере, иначе, как они могут общаться друг с другом. Затем кеш может делиться между узлами кластера, например, как указано в Jboss doc, working with Hibernate.

Вопрос в том, как настроить сервер (или приложение в файлах, таких как beans.xml), для использования кеша MyBatis.

Если SessionFactory объявлен @ApplicationScoped, этого может быть достаточно.

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