Eksperymentowałem z pamięcią podręczną platformy i natknąłem się na interfejs CacheBuilder
, który wygląda solidnie na naszą pamięć podręczną. Jedynym problemem jest to, jak ustawić czas życia w tym interfejsie? Domyślnie będzie to 24 godziny, chcę ustawić 2 godziny.
Kod:
class UserInfoCache implements Cache.CacheBuilder { public Object doLoad(String userid) { User u = (User)[SELECT Id, IsActive, username FROM User WHERE id =: userid]; return u; }
Użycie:
User batman = (User) Cache.Org.get(UserInfoCache.class, ‘00541000000ek4c");
Odpowiedź
Wygląda to na ograniczenie użycia CacheBuilder.
Kreator pamięci podręcznej zapisuje i odczytuje dane z pamięci podręcznej za Ciebie i nie ma możliwości ustawienia TTL pamięci podręcznej podczas używania jej można zobaczyć w dokumentacji: Bezpiecznie buforuj wartości za pomocą interfejsu CacheBuilder
Odpowiedź
Ten interfejs pomaga tylko w pobieraniu wartości z pamięci podręcznej bez dodawania dużej ilości dodatkowego kodu obsługującego błędy pamięci podręcznej. Nadal musisz używać metody put
dla Pamięć podręczna organizacji lub sesji do przechowywania wartości w pamięci podręcznej. Możesz wtedy ustawić wartość TTL.
Przykład:
Cache.Org.put("00541000000ek4c", userVar, 60*60*2);