Domyślnie odkładasz pamięć podręczną na bok, nasze użycie pamięci podręcznej w aplikacji Spring Boot wygląda podobnie
@Cacheable(cacheNames = "someCache")
public String cacheThis(String id){
return "this Is it";
}
W większości scenariuszy w aplikacji Spring Boot buforujemy wyniki zapytań JPA lub innych zapytań do bazy danych. W takich przypadkach dodajemy Cacheable
w metodzie zapytania, która daje nam funkcję buforowania pamięci podręcznej.
Aplikacja może emulować funkcjonalność buforowania z odczytem poprzez implementację strategii buforowania z boku. Ta strategia ładuje dane do pamięci podręcznej na żądanie.
Ref:https://docs.microsoft.com/en-us/azure/architecture/patterns/cache-aside
Używanie wzorca buforowania na bok nie zawsze jest rozwiązaniem problemu, w zależności od przypadku użycia może być konieczna zmiana strategii buforowania. Zmiana strategii buforowania nie jest prosta, z wyjątkiem niektórych adnotacji, które znamy z frameworka Spring, takich jak
- Pamięć w pamięci podręcznej
- Wykluczenie z pamięci podręcznej
- Przesyłanie pamięci podręcznej
Musisz zaktualizować kod aplikacji, aby korzystać z innych strategii buforowania, chociaż możesz zbudować dowolną strategię buforowania przy użyciu tych adnotacji. Jeśli nie lubisz używać tych adnotacji, pobaw się rzeczywistym obiektem pamięci podręcznej, w dowolnym momencie możesz wywołać metody pamięci podręcznej, aby zmodyfikować pamięć podręczną.
np.
Cache myCache = cacheManager.getCache("myCache");
Gdy masz już obiekt pamięci podręcznej, możesz wywołać wszystkie odpowiednie metody, niektóre metody mogą nie działać zgodnie z oczekiwaniami ze względu na ograniczenia bazowej pamięci podręcznej.