Geliştirdiğimiz projede Hibernate JPA kullanıyoruz. Bazı entityler hiç değişmeyecek veya çok nadiren değişecek veriler (mesela il, ilçe isimleri, bir projenin sahip olabileceği statüler vb.) içerdiği için bunları Hibernate'in 2nd Level Cache özelliğini kullanarak hafızada bütün uygulama için ortak sabit alanda tutmanın performans ve sistem kaynakları açısından yerinde olacağını düşünüyoruz.

Projemiz Wildfly uygulama sunucusu üzerinde çalışmakta. Hibernate dokümantasyonunda bazı 2nd Level Cache alternatifleri sıralanmış; oradaki listede olmayan diğer seçenekler de var, mesela Hazelcast. Alternatiflerden Infinispan'ı JBoss destekliyor.

  • Böyle bir senaryo için tecrübelerinizi paylaşır mısınız? Bu 2nd Level Cache için iyi bir kullanım biçimi mi? Hiç veya çok nadiren değişen verileri nasıl saklamak/kullanmak lazım?
  • Hibernate 2nd Level cache kullanım senaryoları hakkında tecrübelerinizi paylaşır mısınız? Geçmişte veya şuanda kullandığınız bir çözüm var mı? Size göre artıları eksileri nelerdir?

soruldu: 25 Eki '14, 04:34

Dkyc's gravatar image

Dkyc
1.6k1920
cevap kabul oranı: 29%

değiştirildi: 26 Kas '14, 17:56

Merhaba, 2nd level cache kullanmadım ama benzer bir senaryı için ben uygulamamda bu değerlerin olduğu bir singleton kullanıyorum. Singleton da aranan değer bulunamaz ise veritabanına tekrar sorgu yapılıyor, ve eksik olan değer de singleton daki verilerin arasına ekleniyor..

(27 Kas '14, 05:17) dreampowder dreampowder's gravatar image

Bir başka çözüm ise "memcached". http://memcached.org

(27 Kas '14, 05:18) dreampowder dreampowder's gravatar image

Öneriniz için teşekkür ederim. Basit bir senaryoda dediğiniz gibi bir çözümden daha fazlası gereksiz over-engineering sayılabilir. Bazı senaryolarda basit bir Enum da iş görebilir... Fakat bu tür verinin epey hacimli olduğunu hayal edelim, mesela yarım GiB kadar olsa, böyle bir şeyi hafızada tutma görevini JVM'in üstüne yıkmak yanlış olur. Veya çok hacimli olmasında, bu tür entity'ler mesela 15-20 tane olsa... Bu seferde bunun maintenanceı tam bir kabusa dönüşebilir. Birde Singleton'daki değerleri DB ile senkronize etmek için de ayrı bir çaba lazım gibi sanki

(27 Kas '14, 10:34) Dkyc Dkyc's gravatar image
Bu soruya ilk cevap veren sen ol!
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×109
×4
×1

Soruldu: 25 Eki '14, 04:34

Görüntüleme: 411 kez

Son güncelleme: 27 Kas '14, 10:34

powered by BitNami OSQA