Magento 2.x PHP memory_limit gereksinimleri


11

Ben Magento 2.1 manuel önerir fark memory_limit=2Giçindephp.ini . Bu çılgınca bir bellek, HTTP isteğine göre bu belleğe izin verilmiyor mu? PHP komut dosyaları için bu miktarda bellek sağlayan ve kesinlikle Magento paylaşılan barındırma için uygun olmayan yapar herhangi bir hosting sağlayıcı şüpheliyim.

Bu belki de kurulum ve geçiş için bir miktar mıdır? Bu miktar üretim için gerçekten gerekli mi?

Belgelerde de buldum:

Set the PHP memory limit.
Our detailed recommendations are: 
Compiling code or deploying static assets, 756M 
Installing and updating Magento components from Magento Marketplace, 2G 
Testing, 2G

Üretim önerilerinden bahsetmiyor. Üretim için neler önerilir?

Yanıtlar:


8

Bulduğunuz belge snippet'inin açıkladığı gibi, 2Golası tüm kullanım durumlarını kapsayan bellek sınırıdır. Bazı işlemler (özellikle kurulum, test ve derleme gibi komut satırı işlemleri) kurulumunuzun boyutuna ve karmaşıklığına bağlı olarak önemli miktarda bellek alabilir.

Dikkat edilmesi gereken bazı noktalar:

  1. memory_limitolan maksimum belirli bir PHP isteği sonlandırılacaktır önce almasına izin bellek miktarı. O değil her istek alacak belleğin toplam miktarı. Uygulamada, öne bakan çoğu istek çok daha az bellek alır (çoğu CMS sayfası, kategori, ürün için muhtemelen 60 MB veya daha az), bazı aykırı değerler (ödeme) entegrasyonlara, özelleştirmeye vb.Bağlı olarak birkaç kat daha fazla zaman alır.
  2. Bazı sunucular, web istekleri için komut satırına göre farklı bellek sınırları ayarlamanıza izin verir. Öyleyse, CLI sınırınız 2Gve web sınırınız 768Mveya daha az olmalıdır.
  3. Magento kendisinde kuralları aracılığıyla, geniş kapsamlı bir varsayılan 768 milyon sınırını zorlamak çalışır .htaccessve pub/.htaccess: php_value memory_limit 756Mve içinde .user.ini:memory_limit = 756M
  4. Muhtemelen minimum 2 GB ile ilgili gördüğünüz ' teknoloji yığını gereksinimleri ' sayfası , PHP bellek sınırından değil, toplam sistem belleğinden bahsediyor . Magento2'yi 2 GB'tan az RAM (takas dahil) ile sanal bir özel sunucuda çalıştırmayı denerseniz, kötü bir zaman geçireceksiniz.
  5. Özel bir ortam her zaman paylaşılan barındırma daha iyi olacaktır, ancak Magento2 paylaşılan barındırma üzerinde çalışır. Magento, GoDaddy dahil olmak üzere bazı yaygın barındırma sağlayıcılarıyla tek tıklamayla kurulumları gerçeğe dönüştürmek için kapsamlı bir şekilde çalıştı. Ayrıca, birkaç dolar daha fazla paylaşılan hizmet sağlayan Nexcess gibi Magento-uzman ana bilgisayarlar da vardır.

Nokta 4 ile ilgili olarak: OP'nin "İstenen PHP Ayarları" belgesindeki alıntısı, teknoloji yığını gereksinimleri değil. devdocs.magento.com/guides/v2.1/install-gde/prereq/… 2 GB bellek_limit ile test edilmesini ve kurulmasını önerirler .
belirsiz süre

.user.iniMagento'nun bu sınırı uygulamak için kullandığı / oluşturduğu dosyalar listesine eklemek istiyorum . Hem kökte hem de içinde pub/.
Bart Friederichs

Önerilen 2G ortamı, istek başına 2G'den önemli ölçüde farklıdır! İkincisinin yoğun bir site için uygun olduğunu düşünemiyorum. Ve komut satırı PHP işlemleri 2G tüketse bile, bu son derece verimsiz bir koddur.
MarkE
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.