у нас есть кластерное корпоративное приложение, использующее транзакцию JTA и режим гибернации для операций базы данных, развернутых на JBoss EAP.
Для повышения производительности системы мы планируем использовать сетку данных Jboss. Вот как я планирую использовать сетку данных jboss:
- Я добавляю/заменяю объект в кеше всякий раз, когда он вставляется/обновляется в базу данных с использованием cache.put
- когда объект удаляется из базы данных, он удаляется из кеша с помощью cache.remove
- при извлечении сначала попробуйте получить данные из кеша с помощью ключа или запроса. Если данных нет, загрузите данные из базы данных.
Однако у меня есть вопросы по сетке данных:
- Для запроса объектов мы используем критерии гибернации, однако сетка данных использует собственный построитель запросов. Можем ли мы избежать написания отдельного запроса для гибернации и сетки данных?
- Я хочу, чтобы список объектов возвращался в соответствии с критериями. Если один из объектов, соответствующих критериям, удаляется из кеша, автоматически ли он перезагружается из базы данных?
- Если транзакции откатываются, они также откатываются из кеша сетки данных
- Есть ли примеры, на которые я могу сослаться для моей реализации сетки данных?
- что лучше выбрать для моего требования infinispan в качестве кеша 2-го уровня или сетки данных в библиотеке или удаленном режиме?