2009-05-25 3 views
6

Мы рассматриваем возможность использования ehcache (1.6.0-beta5), чтобы обеспечить кэширование второго уровня для ряда таблиц, которые никогда не изменяются. Мы установили для этой таблицы область ehcache для чтения, и в настоящее время она работает нормально. Хранилища Hibnerate, хранящиеся в кеше, являются неизменными.Производительность спящего режима кэширования второго уровня ehcache

Один из разработчиков здесь поднял вопрос о значительном снижении производительности за время, затрачиваемое на «гидратацию» объектов из ehcache, то есть отображение внутреннего представления объекта ehcache сущности на фактический объект java. Вместо этого он предложил нам хранить объекты вручную в нашем кеше. Это потребует значительного изменения нашего кода, и у меня есть оговорки в отношении того, насколько значительным будет улучшение.

Мои вопросы:

  1. Является ли это снижение производительности действительно важно?
  2. Если объекты являются неизменяемыми в кеше только для чтения, действительно ли будет иметь значение любой гидратации? Не может ли он просто хранить объекты напрямую?

Спасибо за любую помощь.

ответ

4

Вы должны определить время, необходимое для гидратации. И если это значимо (по крайней мере, пара процентов), вы должны подумать об изменении кода.

+1

Да, это определенно следующий шаг для нас. Я видел, были ли у других ранее проблемы с производительностью из-за гидратации. –

+0

Каков был результат вашего профилирования? Было ли увлажнение значительным эффектом в вашем случае? – Jardo

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