§Play Cache API
Modern uygulamalarda veri önbelleme tipik bir optimizasyondur ve bu yüzden Play, evrensel bir önbellekleme sunmaktadır. Önbellekleme hakkında önemli bir nokta, önbelleğin gerektiği gibi davranmasıdır, yani sakladığınız veri kaybolabilir.
Önbellekte depolanan tüm veriler için, veri kaybı olması durumunda yenilenme stratejisi eklenmelidir. Bu felsefe Play arkasındaki temel ögelerden biridir, çalışma ömrü boyunca oturum bilgilerini tutması beklenen Java EE’den farklıdır.
Cache Api’nin varsayılan uygulaması EHCache kullanır ve build.sbt
dosyasında bulunan libraryDependencies
’e cache
eklenerek aktif edilebilir. Ayrıca eklenti ile kendi gerçeklemenizi sağlayabilirsiniz.
§Cache API’yi Uygulamaya Dahil Etmek
Bağımlılık listenize cache
ekleyin. Örneğin, build.sbt
içinde:
libraryDependencies ++= Seq(
cache,
...
)
§Cache API’ye Erişim
Cache API play.api.cache.Cache
nesnesi tarafından sağlanır. Bu nesne kayıtlı bir önbellek pluginine ihtiyaç duyar.
Not: Bu API çeşitli gerçeklemelerin eklenebilmesi için kasten asgari tutulmuştur. Eğer daha detaylı bir API’ye ihtiyacınız varsa, kendi Cache eklentiniz tarafından sağlananı kullanınız.
Bu basit API’yi kullanarak, önbellekte veri saklayabilirsiniz.
Cache.set("item.key", frontPageNews);
İsteğe bağlı olarak sona erme süresi (saniye) tanımlayabilirsiniz:
// Cache for 15 minutes
Cache.set("item.key", frontPageNews, 60 * 15);
Sonradan bu datayı tekrar alabilirniz:
News news = (News) Cache.get("item.key");
Önbellekten veri silmek için remove
metodunu kullanının:
Cache.remove("item.key");
§HTTP Yanıtlarını Önbellekleme
Kolaylıkla standart Action
bileşimini kullanarak, akıllı önbelleklenmiş eylemleri oluşturabilirsiniz.
Not: Play HTTP
Result
olayları önbelleklemek ve tekrar kullanmak için uygundur.
Play standart kullanımlar için dahili bir yardımcı sağlar:
@Cached(key = "homePage")
public static Result index() {
return ok("Hello world");
}
Sonraki: Web Servisleri Çağırmak
Dokümantasyonun bu çevirisi Play ekibi tarafından yapılmamaktadır. Eğer bir hata bulduysanız, bu sayfanın kaynak kodu burada bulunmaktadır. Dokümantasyon yönergelerini okuduktan sonra lütfen katkı yapmaktan çekinmeyin.