Developersland

Teknoloji ve Yazılım Blogu

  • Yazıtipi boyutunu arttır
  • Varsayılan yazıtipi boyutu
  • Yazıtipi boyutunu azaltır
Veritabanı

Hibernate Cache Algoritmaları

Veritabanıyla çok fazla alış veriş içerisinde olan uygulamalar yoğun veritabanı trafiği nedeniyle performans düşüklüğü gösterirler. Bu sorunu çözmek için en iyi çözüm yolu cache algortimaları kullanmaktır.

Hibernate web uygulamalarının performansını arttırmak için yapılması gerekenler

Cache daha önce yaptığımız sorgular sonucu ulaşılan verileri tutmaktadır genel olarak. Böylece aynı veriye tekrar ulaşmak istediğimizde bu veri cache’den getirilerek bu veriye daha hızlı ulaşmamızı sağlanır. Ancak farklı bir veriye ulaşmak istediğimizde tekrar veritabanıyla bağlantı kurulmak zorundadır.

 

JPA'da @version tagı kullanılarak optimistic locking mekanizmasının sağlanması

JPA'da @version tagı veritabanına birden çok kişinin aynı anda erişmesi durumunda  optimistic locking mekanizmasının kullanılmasını sağlar. Bir tabloda sadece bir tane version alanı olabilir. Normal şartlarda veritabanlarında optimistic veya pessimistic locking kullanılmadığında  birden çok kişi aynı anda veritabanina eriştiğinde birbirini ezme prensibi kullanılıyor yani en son yapılan değişiklik daha önceki değişiklikleri eziyor. Arkadaşımla yaptığımız denemelerde aynı anda  veritabanina eriştikten sonra önce ben değişiklik yapıp commitledim daha sonra arkadaşım değişiklik yapıp commitledi ve onun yaptığı değişiklik benim yaptığım değişikliği ezdi. Version alanı kullanarak yaptığımız denemelerde ise ben veritabanina eriştim ve bazı değişiklikler yaptım ve commitlemedim, daha sonra arkadaşım tabloya erişerek bazı değişiklikler yapmaya çalıştı ama sistem buna ben commit yapmadan izin vermedi.Sistem sadece veritabaninin o anki durumunu görmesine izin verdi.