SORU
16 EYLÜL 2010, PERŞEMBE


&; Havuz" için bellek ayrılamıyor " ne neden oluyor; PHP mi?

Bazen bir sunucu bellek ayırma sınırı, özellikle Wordpress gibi şişirilmiş bir uygulama ile karşı borcum vardı ama asla" ve sorun yaşıyorsanız herhangi bir bilgi aşağı izleme. "havuz için bellek ayrılamıyor karşılaştı

Herkes bunun ne anlama geldiğini biliyor mu? Başarı olmadan memory_limit artan çalıştım. Ben de bu uygulama için herhangi bir önemli değişiklikler olmadı. Bir gün hiçbir sorun yok, bu hata vurdum ertesi gün oldu.

CEVAP
27 AĞUSTOS 2012, PAZARTESİ


0 TTL kullanarak APC floş olacaktırtüm önbelleğibellek tükendi. Hata artık görünmüyor ama APC çok daha az verimli hale getirir. Hiçbir risk, hiçbir sorun, "benim işim" kararı. yapmak istemiyorum. APC bu şekilde kullanılmak üzere tasarlanmıştır. Bir TTL en erişilen sayfalar dolacak olmayacak şekilde yeterince yüksek seçmelisiniz. Yeterli bellek yani APC vermek iyi olur önbellek temizleme gerek yok.

Sadece ttl nasıl kullanıldığını anlamak için kullanma kılavuzunu okuyun : http://www.php.net/manual/en/apc.configuration.php#ini.apc.ttl

Çözüm bellek APC tahsis artırmaktır. Apc artırarak bunu.shm_size.

Eğer APC Paylaşılan Bellek Segmenti kullanılarak derlenmişse işletim sistemi ile sınırlı olacak. Sistem her kesimi için sınırı görmek için bu komutu yazın :

sysctl -a | grep -E "shmall|shmmax"

Daha fazla bellek alocate için parametre apc ile parça sayısını artırmak gerekecek.shm_segments.

Eğer APC sonra yüksek bellek kullanıyorsa sınırı var. Bellek miktarını hala aynı seçeneği apc ile tanımlanır.shm_size.

Eğer sunucuda yeterli bellek varsa, o zaman filtreler seçeneği önbelleğe olmaktan daha az erişilen php dosyaları önlemek için kullanın.

Ama asla 0 TTL kullanın.

C33s dediği gibi, apc.php senin config kontrol etmek için kullanın. Bu Web klasörü ve nokta bir tarayıcı için apc paketi dosyayı kopyalayın. Gerçekten ayrılan ne olduğunu ve nasıl kullanıldığını göreceksiniz. Grafikler ise tamamen değişen her yenile bir saat sonra sabit kalması gerekir, kurulumunuzu yanlış her şeyi bırakılıyor APC () anlamına gelir. Düzenli olarak gerçekten bir güvenlik boşluğu olarak kullanmak APC ve kontrol olandan daha fazla ram ayırın.

Sadece 32 MB izin verme varsayılan gülünç derecede düşük. Bir PHP sunucuları 64 MB iken tasarlanmış ve en betik sayfa başına bir php dosyası kullanarak. Günümüzde Profesyonel gibi çözümler 10k'den fazla dosya (~60 MB APC) gerektirir. Yeterli bellek izin vermelisiniz php dosyaları çoğu zaman önbelleğe alınır. Bir atık değil, daha verimli dosya önbelleği ilgili ham php yerine RAM'de işlem kodu. Günümüzde düşük olarak $80/month için bellek 24 GB ile özel sunucular bulabiliriz, bu yüzden birkaç GB APC için izin vermek için tereddüt etmeyin. 2 GB 24 GB bir server 5Magento mağazaları hosting üzerine koydum ve ~40 wordpress web sitesi, APC 1.2 GB kullanır. Bazı eklentileri ile Wordpress için Profesyonel kurulum için 64 MB, 40 MB Kont.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chaoticmoogle

    Chaoticmoogl

    13 ŞUBAT 2006
  • colacas

    colacas

    29 EKİM 2006
  • Peter Sharp

    Peter Sharp

    11 ŞUBAT 2013