1 milyona kadar ürüne sahip bir e-ticaret sitem var ve site birçok bölgede. Her ürün sayfasında DB'ye yaklaşık 10-15 sorgu, url ile ürün almak, ürün kategorisi almak ve ürün formatı almak gibi şeyler vardır. Currenly, dosya tabanlı önbellekleme kullanarak imkansızdır ve ürün sayfasında hiçbir şey önbelleğe almaz.Laravel çok sayıda sorguyu önbelleğe alıyor
Sorun, ürün sayfalarının, DB'ye yapılan çok sayıda sorgu anlamına gelen çeşitli tarayıcılar/botlar için hedefleridir. Ayrıca, bir ürün sayfasını önbelleğe alırsam, bu sayfaların tüm sayfaları hedeflediğinden 1 saat boyunca o zamana rastlanmasının olası olmadığını söyler. Ayrıca farklı bölgelere (farklı alan adları) sahip olduğumdan, sayfaların sayısının bölge sayımına göre zamanlaması anlamına gelir (5-10).
Bu yüzden, önbelleğe alma hakkında fikirlerim yok. Tüm bu sorguları sonsuza kadar (zaman sınırı olmadan) önbelleğe almayı ve ürün değişiklikleri hakkında bir şey olduğunda önbelleği değiştirmeyi düşündüm. Bu gitmek için bir yol mu? Laravel, önbelleğe alınan her sorgu için bir önbellek dosyası oluşturur mu? Evet ise, dosya sayısı bir sorun olabilir.
Ayrıca redis kullanmayı düşündüm. Ama sanırım o kadar çok anahtarı önbelleğe alırken hafızam tükenecek? Herhangi bir fikrin Bunu önbelleğe alma konusunda nasıl gitmeliyim? Şimdiden teşekkürler.
Edit1: REDIS ile html önbelleğe alma konusunda
Düşünce. Böylece ürün fiyatını ve html'sini önbelleğe alabiliyordum. Önbellek için ne kadar belleğe ihtiyacım olursa olsun, bazı html değeriyle 10-20 milyon tuşa değinir?
Redis'i kullanabilirsiniz. – nextt1