Hangi Varsayılan Modülleri devre dışı bırakabilirim?


25

Bu sorudan Sander Mangel'in cevabı:

Modülleri devre dışı bırakmak - performans iyileştirme?

Öncelikle, daha az modül, yükleme ve işleme için (potansiyel olarak) daha az kod demektir. Bunun yanında, örneğin Mage_Rss modülü gibi birçok modül arka planda belirli olaylarda reindex'leri zorlamak gibi birçok kod çalıştırır.

Yukarıdaki soru doğrudan bir modül listesini paylaşmak anlamına gelmediğinden, burada bilgi toplamak için iyi bir fikir olduğunu düşünüyorum.

Diğer faydalı Kaynaklar:

Başka modül önerisi var mı?
Hangi modülün performansta daha fazla etkisi var?

GÜNCELLEŞTİRME

@Marius önerileri içeren bir güncelleme listesi

  1. Mage_WishList - müşteri detaylarını kırıyor gibi görünüyor
  2. Mage_Rss
  3. Mage_PayPalUk
  4. Mage_Tag (bir projede kullanılmadığında)
  5. Mage_Poll (zaten anketleri kullananlar için neden)
  6. Phoenix_Moneybookers
  7. Mage_Sendfriend
  8. Mage_Rating (müşteri tarafından istenmiyorsa)
  9. Mage_Bundle (müşteri tarafından istenmiyorsa)
  10. Mage_Downloadable (müşteri tarafından istenmiyorsa)
  11. Mage_GiftMessage - 1.8 de ihtiyacınız var mı yoksa ürün detayları bozulur
  12. Mage_XmlConnect - Bir mobil uygulamanız yoksa / ihtiyacınız varsa.
  13. Mage_Authorizenet
  14. Mage_Paypal (bir ödeme yöntemi olarak kullanılmazsa)
  15. Mage_Paygate (Yalnızca Mage_Paypal, Mage_PaypalUk ve Mage_Authorizenet’i devre dışı bırakırsanız)
  16. Mage_Weee (yalnızca Mage_XmlConnect özelliğini de devre dışı bırakırsanız)
  17. Mage_Usa - sadece ce-1.8.1.0'da. (neden aşağıya bakınız)
  18. Mage_GoogleCheckout - yalnızca ce-1.8.1.0'da ve yalnızca Mage_Usa'yı devre dışı bıraktığınızda devre dışı bırakılabilir. Bu http://www.magentocommerce.com/bug-tracking/issue/?issue=14359 nedeniyle önceki sürümlerde çalışmaz.
  19. Mage_Oauth - REST API'sine ihtiyacınız yoksa
  20. Mage_Api
  21. Mage_Api2 - yalnızca Mage_Oauth'u da devre dışı bırakırsanız.

Sadece zor yoldan bir şey öğrendim. Devre dışı bırakamazsınız Mage_Wishlist. Bunu yaparsanız, arka uçta hiçbir müşteri detayını göremezsiniz.
Marius

1
Mage_Weee'yi devre dışı bırakma konusunda dikkatli olun. Bu benim dükkanımın vergileri iki kere hesaplamasına neden oldu (Magento 1.9.2.1).
Simon,

Yanıtlar:


12

Buna ekleyebilirim:

  • Mage_GiftMessage - dikişler 1.8’de devre dışı değil
  • Mage_XmlConnect - Bir mobil uygulamaya sahip değilseniz / ihtiyacınız yoksa.
  • Mage_Authorizenet
  • Mage_Paypal (bir ödeme yöntemi olarak kullanılmazsa)
  • Mage_Paygate (Yalnızca Mage_Paypal, Mage_PaypalUk ve Mage_Authorizenet’i devre dışı bırakırsanız)
  • Mage_Weee (yalnızca Mage_XmlConnect özelliğini de devre dışı bırakırsanız)
  • Mage_Usa- sadece . (neden aşağıya bakınız)
  • Mage_GoogleCheckout- Sadece devre dışı bırakılabilir ve ancak eğer devre dışı Mage_Usa. Bu http://www.magentocommerce.com/bug-tracking/issue/?issue=14359 nedeniyle önceki sürümlerde çalışmaz.
  • Mage_Oauth - REST API'sine ihtiyacınız yoksa
  • Mage_Api
  • Mage_Api2- sadece Mage_Oauthaynı zamanda devre dışı bırakırsanız .

Genel bir kural olarak, herhangi bir modülü devre dışı bırakabilirsiniz (neredeyse), ancak app/etc/modules/*.xmldevre dışı bırakmak istediğiniz modüle bağlı olarak başka bir modül olup olmadığını kontrol etmeniz gerekir . Eğer hiç yoksa, yapabilirsiniz. Eğer varsa, bunları da etkisizleştirmelisiniz.

Genel kuralın bir istisnası olarak, Magento 1.x'in yapılışı nedeniyle devre dışı bıraktıysanız yöneticiyi kırabilecek bazı modüller vardır. Mage_Adminhtmlmodül diğer modüllere referanslar içeriyor (müşteri gibi, satış, ...). Görünüşe göre Magento 2.0'da bu değişecek.


Peki ya API / API2 modülü ... ihtiyacım yoksa
Fra

1
@Francesco. Evet. Haklısın. Onları unuttum. Cevabı güncelledim.
Marius

Ne bir keşif modülüne ihtiyacım yoksa?
Fra

1
@Francesco. "Genel bir kural olarak" dan başlayan son güncellememe bakın
Marius

1
hmm ... bu kuralın istisnalarından biri gibi görünüyor
Marius

3

SchumacherFM'den Magento Mock modülüne bir link eklemek istiyorum . Belirli modülleri devre dışı bırakırken sorun yaşıyorsanız (istisnaları okuyun), sahte modülü kullanmak sizin için bir çözüm olabilir. Yine de bu modüle ilişkin herhangi bir performans testi bilmiyorum. Bununla ilgili herhangi bir performans sorunu olup olmadığını bilmek ilginç olurdu.


çok ilginç bir proje görünüyor paylaşım için teşekkürler
Fra

3

Hala 50'ye tekrar ihtiyacım olduğu için yorum yapamıyorum ...

Bahsettiğiniz için teşekkürler Simon :-)

Sahte Modülün gelişimi sırasında farklı yerlerde farklı modüllerin tuhaf olayları ile karşılaştım.

Amacım, dosyaları basit yerine tamamen kaldırmaktı <active>false</active>.

Mage_Adminnotifications, Mage_WishList, Mage_Tag, Mage_GoogleCheckout veya Mage_GiftMessage'ı devre dışı bırakamazsınız çünkü bazı sabitler ve statik yöntemler Mage_Adminhtml'de veya bazı ön uç modüllerinde kullanılır.

Örneğin, Mage_WishList veya Mage_GiftMessage'ı devre dışı bırakırsanız, adminhtml müşteri düzenleme bölümü artık yüklenmeyecektir.

Mage_Shipping özelliğini devre dışı bırakmak bile mümkündür. Hala bunun için iyi olan bir kullanım durumu bulamıyorum ;-)

Ayrıca, devre dışı bırakılmış ve kaldırılmış bir Mage_Payment modülü için alay oluşturmaya çalıştıysanız, ancak bu kesinlikle mümkün değildir. 8-19 saat sonra pes ettim.

Mock modülü ile kendi https://github.com/colinmollenhour/magento-lite versiyonunu oluşturabilirsiniz.


Mage_Shippingyalnızca hizmet veya indirilebilir ürünler satıyorsanız devre dışı bırakılabilir
Fra

Mage_GoogleCheckout 1.8'de devre dışı bırakılabilir ancak bir ürün özelliğini de kaldırmanız gerektiğini düşünüyorum (available_for_googlecheckout veya benzeri bir şey).
Marius

Bence Mock harika ve akıllı bir fikir! Magento'yu bir tür çerçeve olarak kullanarak herhangi bir lisans problemi görüyor musunuz ... sizce lisansın sınırı nedir?
Fra

3

Mage Modüllerini ve ACL'yi devre dışı bırakmak konusunda bugün keşfettiğim bir şeye işaret etmek istiyorum. "Tümü" olarak ayarlanan izinlerle bir rol kullanıyorsanız ve bir Çekirdek Büyücü Modülünü devre dışı bırakırsanız, modülün kodunun çalışmaya devam etmesi ve bir şeyleri bozması ihtimali vardır.

Özel bir çözüm kullandığımız için Mage_Newsletter'a gerek yok, bu yüzden içinde Mage_Newsletter'ı devre dışı bıraktım Mage_All.xml. Ancak bu, Yönetici Admin Mage_Newslettermodülünün kırılmasına neden oldu çünkü yönetici hala modül içinde kod çalıştırmaya çalışıyordu .

Sorun, ACL'nin izinleri nasıl kontrol ettiği ile ilgilidir. Benim durumumda, müşterilerin Tabs.phpblok sınıfı içinde, bülten sekmesini oluşturan kod bir ACL izinleri kontrolünde kapsüllenir. Yana Mage_Newslettermodül devre dışı bırakılır, bu ACL seçenekleri artık sistem rolü izninin menüsü ile görüntülenir.

Ancak , eğer rolünüzün izni 'tümü' olarak ayarlanmışsa, Magento bir modülün aktif olup olmadığının arkasında uçan bir sıçan vermez. Amacı atlanmaya niyetli olsa bile, herhangi bir kapı mantığının çalışmasına izin vererek, doğru (izin verilir) döndürür.

Çekirdek modülleri kapatmak istiyorsanız, rolün ACL izinleri için 'all' kullanamazsınız. 'Custom' seçeneğini kullanmanız ve ardından role gerekli tüm izinleri manuel olarak vermeniz gerekir. Magento'nun devre dışı bırakılmış modüllere karşı izinleri uygun şekilde kontrol etmesini sağlamanın tek yolu (buldum).


1
Güzel gözlem. ACL ile ilgili bulgular ve "uçan sıçanın arkasındakiler" için +1
Marius
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.