2012-10-20 18 views
8

Bu beni rahatsız eden şey. Sadece APC önbelleğini yükledim ve test ediyorum. APC Admin arabirimini kullanırken, apc.php dosyasında, APC vb. Ile ilgili tüm bilgileri görebiliyorum Sistem Önbellek Girişlerine gittiğimde, çağırdığım her komut dosyasının orada yazıldığını görebiliyorum.PHP APC Önbellek, kutunun dışında çalışır mı?

Bu, APC Önbelleği kutusunun dışında çalıştığı anlamına mı geliyor? Sadece APC önbelleğini yükleyebilirim ve zaten betikleri önbelleğe alarak uygulamamı hızlandırıyor mu? Ve eğer istersem, daha hızlı hale getirmek için değişkenleri önleyebilir miyim?

Soruyu alırsanız, APC ile daha fazla deneyimi olan biri için muhtemelen basittir.

Onun önbelleğe bazı değişkenler ekleyebileceğimi biliyorum ve sonra onları dışarı çıkarın ve bu benim app hızlandıracak. Ama doğru mu, APC uygulaması kendiliğinden hızlandıracak ve betikleri önbelleğe alacaktır? Ve APC hakkında daha fazla şey öğrenebileceğim iyi bir dokümantasyon var mı?

+1

Evet, önbelleğe oluyor çalışır. Muhtemelen bazı [yapılandırma dosyasının ince ayar] ihtiyacı var (http://www.php.net/manual/en/apc.configuration.php), ama hepsi bu. – fvu

+1

Teşekkürler, bu nedenle varsayılan olarak APC her betiği önbelleğe alır ve RAM'e kaydeder. Böylece bu şekilde HDD'den daha hızlı erişilir. Bu yüzden APC önbelleğini kullanmanın faydalarını, başka bir şey yapmadan yükleyerek görebiliyorum? – otporan

+1

** Ana ** avantajı, diskten yükleme kaydetmeniz değil, baytkodun saklanması gerçeği - önbellek olmadan her çalıştırıldığında kod yeniden yorumlanır, bu adım atlanır. – fvu

cevap

8

Evet, APC "sadece çalışır". PHP'yi APC/(diğer opcodecache) olmadan çalıştıran herkes, kolayca elde edebilecekleri en kolay performans geliştirmede eksiktir.

Birkaç uyarı olsa da.

Geliştirme aşamasındaysanız, yine de APC'yi çalıştırabilirsiniz, ancak büyük olasılıkla durum çağrılarını etkinleştirmek isteyebilirsiniz. Bu, APC'nin dosyalarınızın son değiştirilmiş halini kontrol edeceği anlamına gelir.

apc.stat = [1|0]

Yani, stat çağrıları etkin olmayan ve bir dosyayı değiştirmek ve APC zaten o zaman değişiklikleri gözlemek olmaz ve önbelleğe işlem kodu kullanmaya devam edecek, bunu önbelleğe eğer.

Belirtmiş olduğunuz gibi, APC yalnızca opcode önbelleğe alma için değildir, aynı zamanda kullanıcı alanı önbelleklemesi için de yararlıdır. system önbelleğiniz ve user önbelleğiniz var.

Sadece böyle bir şey yaparak kullanıcı önbelleği karşı şeyler saklayabilir: komut dosyalarını görürseniz

apc_store("fooKey", "barValue");

+1

Teşekkürler, bu yüzden sistem önbelleği bu deneyimi yaşadım, her betik otomatik olarak RAM'a kaydedilir ve apc_store() kullanarak önbelleğe bir şey kaydedip apc_fetch() kullanarak çıkarırsam kullanıcı önbelleği olur mu? Bu doğru mu? Tekrar teşekkürler! – otporan

İlgili konular