Rozważamy użycie ehcache (1.6.0-beta5) do włączenia buforowania drugiego poziomu wielu tabel, które nigdy nie są modyfikowane. Dla tej tabeli ustawiliśmy region ehcache tylko do odczytu i obecnie wygląda na to, że działa dobrze. Pozycje POJO Hibnerate przechowywane w pamięci podręcznej są niezmienne.Wydajność hibernacji buforowania drugiego poziomu ehcache
Jeden z twórców tutaj podniósł problem, że występuje znaczny spadek wydajności w czasie potrzebnym do "uwodnienia" obiektów z ehcache, czyli odwzorowania z wewnętrznej reprezentacji ehcache jednostki do rzeczywistego obiektu java. Zamiast tego zasugerował, byśmy ręcznie przechowywali obiekty w naszej pamięci podręcznej. Wymagałoby to znacznej modyfikacji naszego kodu i mam zastrzeżenia co do tego, jak duża byłaby poprawa.
Moje pytania są następujące:
- Czy ten spadek wydajności naprawdę istotna?
- Jeśli jednostki są niezmienne w pamięci podręcznej tylko do odczytu, to czy ehcache rzeczywiście musi w ogóle wykonać jakieś nawodnienie? Czy nie mógłbyś przechowywać obiektów bezpośrednio?
Dzięki za pomoc.
Tak, to zdecydowanie kolejny krok dla nas. Widziałem, czy inni wcześniej mieli problemy z wydajnością spowodowane wcześniejszym nawodnieniem. –
Jaki był rezultat twojego profilowania? Czy nawodnienie miało znaczący wpływ na wydajność w twoim przypadku? – Jardo