Что делает сервер Terracotta, когда он используется в качестве бэкэнда для EHCache с Hibernate? - PullRequest
6 голосов
/ 31 января 2011


Мой DAL реализован с Hibernate, и я хочу использовать EHCache в качестве кэша второго уровня с его распределенными возможностями (для масштабируемости и высокой доступности).
Поскольку EHCache обеспечивает распределенное кэширование только с Terracotta, мой вопрос заключается в том, какова роль экземпляра сервера Terracotta? Он также содержит данные? Координирует ли оно только распределение между частями разделенного кэша?
Моя путаница проистекает главным образом из этого объяснения относительно TSA, в котором говорится, что сервер хранит данные, но я думаю, что, возможно, в моем сценарии кэш и сервер Terracotta объединены. Я прав?
Если сервер хранит данные, то почему узкое место не должно просто перейти с БД на сервер Terracotta?

Обновление: Ответ Аффе ответил на вторую часть моего вопроса, которая была важной, но на всякий случай, если кто-то придет в поисках первой части, я скажу, что сервер TC должен хранить все данные, которые хранит EHCache в памяти, и если вы если требуется распределенный кэш (не реплицируется), то L2 (сервер TC) также должен содержать все объекты.

Заранее спасибо,
Еффий

Ответы [ 2 ]

4 голосов
/ 31 января 2011

Идея состоит в том, что все еще значительно быстрее связываться с кластером терракоты через драйвер терракоты и делать то, что в основном выполняет поиск по карте, чем устанавливать соединение с базой данных и выполнять оператор SQL.Даже если это станет дроссельной точкой приложения, общая пропускная способность, как ожидается, все равно будет значительно выше, чем дроссельная точка JDBC Connection + SQL.Открытые соединения и открытые курсоры - большие ресурсы в базе данных, а открытый сокет для терракотового кластера - нет!

3 голосов
/ 01 февраля 2011

Вы можете получить кластер ehcache без использования терракоты. У них есть документация для этого через RMI, JGroups и JMS. Мы используем JMS, так как у нас уже есть значительная инфраструктура JMS для обработки связи. Я не знаю, насколько хорошо он будет масштабироваться в долгосрочной перспективе, но сейчас нас беспокоит только HA.

...