Documentation

You are viewing the documentation for the 2.3.x release series. The latest stable release series is 2.4.x.

§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.