Magento 2 geliştirme sitelerini nasıl hızlı hale getirebiliriz?


18

Tüm önbellekleri kapattım ve dağıtım modunu geliştirmeye ayarladım. Bu yüzden tüm makinelerdeki Magento 2 geliştirme sitelerim Magento 1.x sitelerine kıyasla çok yavaş.

Magento 2 için normal mi?

Magento 2 geliştirme siteleri için maksimum hıza sahip olması için kullanmamız gereken sunucu ve Magento yapılandırmaları nelerdir?

Güncelleme:

Yerel geliştirme için Mac'te, yapılandırma sorunu olduğundan opcache'yi devre dışı bırakarak siteyi hızlandırabildim.


Arka uç dosya önbelleğini değiştirmek için Redis'i yükleyin. Ve php oturumları için memcache kullanın. Belirli bir görev üzerinde çalışırken önbelleği etkinleştirin ve etkinleştirilmesini istemediğiniz önbellek bölümlerini devre dışı bırakın. Yalnızca temayı şekillendiriyorsanız, homurdanma saatini kullanın ve tüm önbelleği etkinleştirin. Nasıl yapılandırılacağı magento 2 resmi dokümanındadır.
belirsiz

100k + ürününüz olmadığı sürece redis işe yaramaz
Claudiu Creanga

Ayrıca yerel pencere bilgisayarında yavaş gelişme yaşıyorum. Deneyimlerinize göre, Ubuntu veya Linux Mint'te yerel kalkınmaya başlamak benim için daha iyi olur mu? ve hangi yapılandırmayı öneriyorsunuz?
Jai

Yanıtlar:


12

Bu vagrant kutusunu https://github.com/EcomDev/fast-hypernode kullanabilirsiniz .

Ben kullanıyorum ve oldukça hızlı. Önbellek devre dışı ve xdebug olan geliştirici modunda, sayfa yenileme yaklaşık 2-3 saniyedir.

Veya magestead tarafından sağlanan vagrant kutusunu kullanabilirsiniz: http://www.magestead.com/

  • php7 kullanın.
  • css ve js üretmek için gulp kullanın (homurdanmadan daha hızlı). Önceden oluşturulmuş yapılandırmayı snowdog ile deneyebilirsiniz (2 dakika içinde hazır): https://github.com/SnowdogApps/magento2-frontools
  • test yapıyorsanız 3GB RAM kullanın.
  • yalnızca ihtiyacınız olan önbelleği devre dışı bırakın . Kullanıcı arabirimi kullanıyorsanız, önbelleği devre dışı bırakmanız gerekmez.
  • sayfaları yeniden yüklemenize gerek kalmaması için ön uç gelişimi için livereload veya browsersync kullanın.

Magento komutlarının ne yaptığını ve ne zaman çalıştırılacağını anlayın. Eğer çok fazla koşuyorsanız setup:static-content:deployo noktaları görerek delireceksiniz. Grunt veya gulp, @magento_import hakkında bilmiyor, bu yüzden dosyaları eklediğinizde veya kaldırdığınızda dev:source-theme:deploy, yukarıdaki dosyadan çok daha hızlı çalışmanız gerekiyor .

Neler gelişmez:

100 binden fazla ürününüz olmadığı sürece redis hiçbir fark yaratmaz, bu yüzden rahatsız etmeyin ( http://www.developers-paradise.com/wp-content/uploads/2016/05/05-Yaroslav-Rogoza-Magento-2-performance- farklı ortamlarda karşılaştırma.pdf ).

Şu anda magento2'nin requirjs (2mb of js) kullanımından dolayı, http2 de fark etmez.


Ayrıca yerel pencere bilgisayarında yavaş gelişme yaşıyorum. Deneyimlerinize göre, Ubuntu veya Linux Mint'te yerel kalkınmaya başlamak benim için daha iyi olur mu? ve hangi yapılandırmayı öneriyorsunuz?
Jai

@Jai üzgünüm, Mint ile deneyimim yok. Mac ve Ubuntu kullanıyorum.
Claudiu Creanga

Efendim ... Magento 2'nin iyi gelişme hızını bekleyebilir miyim ... Vagrant'ı penceremde 7 kullanırsam (i5 + 12Gb Ram) Veya pencere geliştirme aşamasında yavaş olduğu için ubuntu'ya gitmeli miyim
Jai

1
@Jai Windows iyi. Önbelleklerin bazıları açıkken geliştirici modunda 2-3 saniye yenilemeyi hedeflemelisiniz. bunun github.com/alankent/docker-gsd dosyasının bilgisayarınızda ne kadar hızlı olduğunu kontrol edin ve bu hızı hedefleyin. vagrant için hypernode packagist.org/packages/byteinternet/hypernode-vagrant
Claudiu Creanga

Önerin için teşekkürler. Tavsiyenizi uygulayacağım ve ubuntu ve Mac'te macenta geliştirmenin pencerelere kıyasla hızlı bir şekilde yapılabileceğini düşünüyor musunuz?
Jai

7

Ne tür bir geliştirme yapmayı planladığınıza bağlı olarak, istemci tarafı css derlemesine geçmenin bir geliştirme sitelerinin hızını önemli ölçüde geliştirdiğini görebilirsiniz.

Mağazalar> Yapılandırma> Gelişmiş> Geliştirici> Ön uç geliştirme iş akışı

Geçin İstemci tarafında az derleme


Bu ayar Magento 2.2'ye taşınmış gibi görünüyor. Şimdi nerede bulacağınıza dair herhangi bir işaretçi var mı?
fritzmg

1
docs.magento.com/m2/ee/user_guide/system/… Sitenizin, Geliştirici modunda görünmüyorsa görünür olmadığını kontrol ediyorum
bjornredemption

Evet, geliştirici modunda değildi, thx :)
fritzmg

0

Ayrıca, geliştirici modunda bu gerçekten performansa ulaştığında JS / CSS birleştirmesinin devre dışı bırakıldığından emin olun, testler hızların 20-30 saniyeden 2-3 saniyeye düşebileceğini gösterir.

Bunu geliştirici modunda yapmak açık gibi görünebilir, ancak kaçırılmışsa inanılmaz derecede yavaş bir ortama yol açabilir, çünkü geliştirme yapmak için bir üretim ortamını kopyaladım ve bunu bir süre kaçırdım.

Güncelleme

Bu beni 2.1.7'den 2.1.9'a etkileyen bir sorun gibi görünüyor ve Magento 2.2.X içinde giderilmiş gibi görünüyor.


bu bilgi yanlış görünüyor. Birleştirme ile hız düşmemelidir
ladle3000 6:18


@ ladle3000 Ayrıca, geliştirme sırasında birleştirmek ve küçültmek istemezsiniz, yine de CSS / JS modifikasyonları için hangi dosyaların değiştirilmesi gerektiğini görmeyi zorlaştırır.
harri

Puanlarını görüyorum. Sanırım belki doğrudan 2.2'ye göç ettiğim için bununla hiç karşılaşmadım. Hangi versiyondasınız?
ladle3000

Bu şimdi 2.2.0'da düzeltilebilir, ancak ekstra bir adım gibi görünüyor. Bu sabah test etmeye çalıştım ama geliştirici modunda etkinleştirdiğimde hala devre dışı görünüyor?
2.2.3'te

0

Önbelleği temizlemek için CLI komutlarını çalıştırmanıza gerek kalmaması için aşağıdaki önbellekleri devre dışı bırakın.

CONFIG
LAYOUT_GENERAL_CACHE_TAG
BLOCK_HTML
FPC

0

Magento2'nin geliştirici modunda yavaş olmasının temel nedeni, anında oluşturulan statik ve derlenmiş binlerce dosya ile ilgilidir.

Bunun için 3 çözüm var:

  • Tüm dizini NFS ile bağlayın (SSD hala zorunludur).

  • Yalnızca uygulama dizini yükleyin (donanımınız kim olursa olsun iyi çalışır) ancak ana makinenizdeki / vendor dizinine erişiminizi kaybedersiniz.

  • Tüm projeyi rsync ile bağlayın ve dosyaların oluşturulduğu dizinleri (pub / statik, oluşturulan / kod vb.) Hariç tutun.

Buradan deneyebilirsiniz: https://github.com/zepgram/magento2-fast-vm/


0

Opcache performansı önemli ölçüde artırır, dosyaları değiştirirken önbelleği yenilemekten kaçınmak için zaman damgası doğrulamayı etkinleştirmeyi unutmayın.

opcache.validate_timestamps = On


-4

Magento 2 mağazasının hızını artırmak için şu adımları izleyin:

  • Öncelikle tüm sistem ve sunucu gereksinimlerini karşıladığınızdan emin olun.
  • Magento'yu en son sürümüne güncelleyin.
  • Vernik Önbelleğini Etkinleştirdi
  • Düz Kategoriler ve Ürünler -Optimize, Javascript ve CSS'yi Optimize Etme
  • CDN Kur
  • Her zaman hatasız uzantılar ve hafif tema kullanın.
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.