Dağıtık sunucu mimarisi üzerine cakephp önbelleğe alma sorunu

2 Cevap php

Biz CakePHP'de uygulama için birden webservers kullanarak edilerek,

server architecture

Sorun iki cache dizinleri sunucusu 2 onun veritabanındaki herhangi bir ekleme yapmadan önce onun önbelleğini temizleyerek, söz konusudur. But sunucusu 1 veritabanı hakkında değişmiştir bilmiyor, bu yüzden sunucu 1 önbelleğe temizlenmedi

Yeni web isteği sunucuya 2 gelince, o yeni önbellek dosyaları oluşturur ve iyi sonuçlar döndürebilir. Bu sunucuya 1 geldiğinde ANCAK, o aynı eski sonuçlarını göstermektedir: (.

Sanırım performans ödün vermeden, çeşitli fiziksel sunucular arasında önbellek dizini paylaşmak herhangi bir yolu var merak ediyorum.

Biz web sunucuları artırmak, böylece bunun için iyi bir uzun vadeli bir çözüm öneriyor geçiniz olabilir

Okuduğunuz için teşekkürler

2 Cevap

Ben önbelleğe alma mekanizması gibi Memcache kullanarak içine bakmak istiyorum. Tek bir sunucu üzerinde Memcache daemon (memcached) kurmak ve daha sonra bir önbellek hem sunucu bağlayabilirsiniz. Kurmak Ayrıntılar için core.php bakın. Tabii ki de memcache php ext ve cini yüklemeniz gerekir, ama buna değer olacaktır.

En kolay yolu, bir nfs (dosya) sunucusundan hizmet için önbellek dizinini kurmak olacaktır. Başka bir şey değiştirmek olmazdı.

Performans için ben de bucho dediğim gibi MEMCACHE sopa istiyorum, ama büyük olasılıkla uygulama kodunu değiştirmek için gerektirir.