Şirket aramasıyla yüksek hacimli wooocommerce dükkanı serpin

Bir fısıltı duyduk. “WooCommerce gibi WordPress ve ticaret çözümleri, derin ürün kataloglarına sahip yüksek hacimli büyük mağazalar için yapılmamıştır.” Fakat bu gerçeklik mi yoksa sadece modası geçmiş algıların dikkate alınması gerekmiyor mu? Sonuncusu olduğuna inanıyoruz. Hızlı bir şekilde yenilik yapmak, zamandan ve müşteri parasından tasarruf etmek ve büyük ölçekli wooocommerce gibi kullanımı kolay açık ticaret çözümleri – 1 milyon ürünün hisse senedi ölçeği – WordPress VIP tarafından geliştirilen şirket araması yoluyla olduğunu söyledi. . Bunu kanıtlamak için, WordPress VIP Lab’daki zorlukları kabul ederek, çeşitli dillerde, kategorilerde ve düzinelerce özellikte stokla yüksek hacimli wooCommerce mağaza stresini tasarlar ve test ederiz. Ne öğrendiğimizi görün.
WooCommerce Shop’un zorlukları deneyimlerimizden yüksek hacimdir, MySQL veritabanına giren veri ne kadar çok veri, onu aramak daha zordur. Tabii ki, 1 milyondan fazla üründen oluşan bir katalog göstermek – ve müşterilerin gezinmesini kolaylaştırıyor – ciddi bir zorluktur. Başlamak için, taksonomi olan ürünler ve gerçek e-Niaga mağazalarına benzemek için yeterli terimler ilişkisi üretmek için WooCommerce dahili yöntemini kullanmaya karar verdik. Yardımcı olan paketlerden biri WooCommerce Smooth Jenerator. Bu, WooCommerce ürünlerinin üretimini on kez hızlandırmamıza yardımcı olan, hakaret edilen VIP Cron WordPress mimarisini kullanmamızı sağlar. İyi haber: Sadece 48 saat içinde, test edilecek yüksek hacimli verilere ve 1 milyon ürünlere sahip bir mağazamız var.


Teknik İpuçları: Böylece ilk içe aktarma işlemi hızlı kalır, gereksinimleri yeniden hesaplama sürecini devre dışı bırakır ve sadece son aşamada tekrar çalıştırırız: add_filter (‘wooocommerce_product_recount_terms’, ”);

Bu test için en son WooCommerce (sürüm 6.1.1) ve vitrin varsayılan temasını kullanıyoruz. Ön uçları değerlendirerek, sayfayı oluşturmada büyük bir gecikme görmeye başladık – MySQL yavaş kuyruğu sorunun kökü idi. Etkilenen ana alanlar: Ürün Arama Arama Ürünleri
Ürün Listesi Sayfası Kategorisi
Filtrelenmiş bir arama
Şirketin aramasına girmek – en son ürünlerimizden biri olan şirket araması, bu sorunun ölçeklenebilir bir şekilde üstesinden gelmede çok önemli olacaktır. Ana kod veya veritabanı şemasında değişiklik yapmadan yüksek hacimli wooocommerce mağazamızın işlevine yardımcı olduğunu bulduk.
İlk olarak, birkaç arka plan: Şirket araması, alttan şirket müşterilerinin ihtiyaçlarına kadar tasarlanmıştır. Bu, bir veritabanı ve site hacmi ölçeği gibi bile yıldırım kadar hızlıdır. Elasticsearch üzerine inşa edilen bu, milyonlarca içerikte bile doğru ve neredeyse anlık sonuçlar verir. Harici hizmetlere ihtiyaç duyulmadan doğrudan VIP Cloud ile entegre edildiğinden, Enterprise Search derhal yeni içeriği dizine ekleyerek en son ve en alakalı sonuçları hızlı bir şekilde görüntüler. Şirketin aramasını etkinleştirir ve veritabanımızdan yatay olarak verileri depolamamıza olanak tanıyarak ürün verilerimizdeki ilk dizini çalıştırırız.

Teknik ipuçları: şirket aramasını kolayca etkinleştirme: tanımlayın (‘vip_enable_vip_search’, true); // kurumsal aramayı etkinleştirir. tanımlama (‘vip_enable_vip_search_query_integration’, true); // Arama sorgularını kurumsal arama ile entegre eder. ES => ekleme Site ön ucunda bulunan yavaş MySQL sorgusuna doğru. Bir veritabanı sorgusu yapmak yerine, hızlı yangın çağrıları kullanarak şirketin arama motorundan alınan her sorgunun sonuçları. Bu yöntemi kullanarak, ürün arama için yanıt süresi, ürün listesi kategorisi sayfaları ve filtreleme araması on kez artar. Evet, 10x! Örnek Kodu WP_Query ile ilgili fretend ürününün aşağıdaki şirket aramasına nasıl düşürüldüğü: add_action (‘pre_get_posts’, ‘boşal_query_to_es’); İşlev boşalma_query_to_es ($ query) {// Arka uç sorguları için kasıtsız sorgu boşaltma işleminden kaçının. if (is_admin ()) {return; } if (! $ query-> is_main_query ()) {return; } if (‘ürün’! == $ query-> get (‘post_type’)) {return; } // Kurumsal aramaya sorguyu boşaltma. $ query-> set (‘buz’, true); } Kısa sürede elde edilen sonuç, mevcut VIP bulut mimarisiyle birlikte yüksek ve ölçülen yüksek hacimli bir WooCommerce sitesidir, büyük miktarlarda trafiği ele almasına izin verir.
Buna ek olarak, wooCommerce arka uç hızı da pahalı MySQL Quees’i şirket aramasına taşıyarak yükseltilir ve mağaza sahipleri için daha optimal deneyimlere izin verir. JSON Elasticsearch sorgusu DSL’ye aşağıdaki filtreyi kullanarak tercüme edildiği için tamamen ayarlanmıştır: Block-separator “/> işlenirken büyür, testte sonraki adımlarımız yüksek dereceli hacimler ve ilgili müşteri verileri üretmektir.Yukarıda belirtildiği gibi benzer adımları kullanarak, ~ 1 milyon sipariş ve ilgili müşteri verileri yapmayı başardık.
Testimiz sırasında, yavaş MySQL arka uç sorgularıyla ilgili optimizasyonun çoğunun olduğunu bulduk. Bu, bir kez daha, daha pahalı bir sorguyu şirket aramasına ve ilgili verileri endekslemeye taşımak anlamına gelir. Not: WooOcommerce siparişleri WooCommerce’de özel bir sevkiyat türü olarak saklanır, bu nedenle sipariş, şirketin özel sevkiyat durumları ile aramanın izin verdiği sevkiyat türüne kaydedilmelidir. Aşağıdaki örnek kodu: // “ Shop_order ‘post türü kamuya açık değildir, bu nedenle bunları dizin almak için eklememiz gerekir. Add_filter (‘ep_indexable_post_types’, işlev ($ post_types) {$ post_types [‘shop_order’] = ‘shop_order’; return $ post_types;}); // Dizine özel sipariş durumunu ekleyin. add_filter (‘ep_indexable_post_status’, function ($ status) {return array_merge ($ status, array_keys (wc_get_order_statate ());}); Buna ek olarak, WooCommerce ekibi, veri sorgularının daha hızlı ve daha ölçeklenebilir bir şekilde yardımcı olması için yeni özel sipariş tabloları sunmak için çalışır. Bu, kurumsal aramanın ölçeklenebilirliği ve e-niaga uygulama performansını iyileştirmeye devam etmesine yardımcı olacaktır.

Çok dilli seçenekler hakkında konuşmak … Yüksek hacimli çok dilli bir e-Niaga sitesi hazırlarken iyi keşfedilebilen bir yaklaşım, WordPress ağ kurulumunda ayrı bir site oluşturmak ve her birinin şirket aramasına ayrı olarak bağlanmasına izin vermektir. . Örneğin, WPVIP teknoloji ortağı Inpsyde, yüksek hacimli sitelerde sınırsız dil sayısını destekleyen benzer ağ ayarlarının oluşturulmasını kolaylaştıran MultillaLuLealPress eklentileri sunar. Bununla birlikte, bu, siteler arasındaki senkronize etme ile ilgili zorluklar yaratır. Woocommerce için merkezi stok eklentisi de dahil olmak üzere bunun üstesinden gelmek için çeşitli çözümler vardır. Daha pahalı MySQL sorgularını sökmenin yanı sıra kontrol edildiğinde son kelime, şirket araması da yeni arama işlevleri sunar – belirsiz arama, eşanlamlı ve ağırlık dahil olmak üzere – Yüksek hacimli wooocommerce dükkanlarının daha verimli olmasını sağlayabilir. Bize şirket aramasını sevdiğimizi söyleyebilir misiniz? Dürüst olmak gerekirse, bu iş ölçeklenebilirliğinizi artırmak, geliştirme ve uygulama süresi ile ilgili ücretleri kesmek ve yeni E-Niaga’nın uygulanmasına yol açmak için gerçek bir çözümdür. Mevcut WordPress VIP ve WooCommerce müşterilerini gördük ve yüksek hacimli E-E sınırlarını teşvik etmek için faydalı. Bu daha ölçülebilir bir gelecek için!
Yazar
Ovidiu Luta, Ana Mühendis, WordPress VIP

admin

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir