Wpis z mikrobloga

#java #programowanie Kiedy i jak uzywac cache? Np. mam metode getItemsByLocation(Location loc) ktorej wynik chce cachowac (np. za pomoca springa i @Cacheable). Kazdy Item moze miec kilka lokalizacji. Narazie nie ma problemu. Ale jakbym chcial aktualizowac te dane z rozna czestotliwoscia, to wtedy musze odswiezac wszystkie zcachowane listy ktore maja dana lokacje. Czy to na sens?
  • 8
  • Odpowiedz
@newbie_235235: #!$%@? tylko kiedy jesteś w stanie udowodnić, że to pomaga. Tworzenie cache w Javie może nawet szkodzić: prawie wszystkie algorytmy garbage collectora używane w Javie nie są przystosowane do zarządzania danymi o charakterze cache
  • Odpowiedz
stosuj cache dopiero wtedy kiedy zauważysz problem z wydajnością.


@newbie_235235: i nawet wtedy postaraj się rozwiązać ten problem w inny sposób. Traktuj cache jako rozwiązanie ostateczne, gdy inne zawiodą.

prawie wszystkie algorytmy garbage collectora używane w Javie nie są przystosowane do zarządzania danymi o charakterze cache


@Saly: ( ͡° ʖ̯ ͡°)
  • Odpowiedz
@newbie_235235: Nie lepiej użyć (zakładając, że korzystasz z hibernate) cache pierwszego i drugiego levelu? Nie będziesz musiał zarządzać czyszczeniem go tak jak przy @Cacheable

EDIT: cache pierwszego levelu jest zawsze używany ale można dorzucić drugiego poziomu.
  • Odpowiedz