Kontrol listesi & amp;Geliştiriciler için Yüksek Trafik E-TRAIAGA’yı optimize etmek için ipuçları

E-ticarette, en büyük yüksek trafik olayları her yıl Black Friday ve Siber Pazartesi günleri gerçekleşir. Şükran Günü ABD tatilinden sonraki günler ve Noel alışveriş sezonunun başlangıcını işaretleyin. Perakendeciler birçok özel teklif yapar ve bunları tüm kanallarda tanıtar ve web sitesi trafiği en yüksek yeni seviyeye atladı!

Woocommerce veya Magento mağazanızı yüksek trafik için hazırlamak için, sitenin ölçeklendirme yeteneğini artırmak anlamına gelir. Bu günlerde, web sitesi gerçekten performans göstermeli ve Jono Alderson’ın Yoast’ta söylediği gibi; “Burada sihirli mermi yok. 1000 Tweaks seyahatindeyiz “. Sitenizin performansını artırmak için her zaman yapabileceğiniz daha fazlası vardır ve performansın iyileştirilmesinin çoğu, mağazanızın ölçeklendirme yeteneğini de artıracaktır. Soru şu ki, nereden başlamalısınız? Sitenize ve belirli ayarlara çok bağlıdır, çünkü her site farklı bir trafik deseni ve ağrı noktasına sahiptir.
Trafik arttığında hasar görebilecek birçok şey vardır ve aşağı siteyi yapan en yaygın şey, biten bir CPU kaynağıdır. Bu, birkaç şeyden kaynaklanabilir, ancak genellikle çok meşgul bir veritabanı veya çok fazla kaynak tüketen PHP (Magento veya WooCommerce uygulamanız). Bu makalede, tarama yeteneği gerektiren herhangi bir web sitesinde her zaman yapmanız gereken temel şeyleri tartışmaktadır. Harika performansın anahtarı, işlem süresinden tasarruf etmektir ve bu, sonuçta harika performans sağlayacak tüm küçük parçaların sayısıdır. İnsanlar tarafından verilen en yaygın tavsiye, “önbellekleme etkinleştirme” gibi kısayollardır. Yapılması değerli bir şey olabilir – zemin bittiğinde, ancak böyle bir tavsiyeyle başlarsanız – büyük olasılıkla istenmeyen bir zamanda büyük bir kaza geçireceksiniz. Deneyimden, hatalar ve yapılandırma hataları, Kara Cuma sırasında düşme süresinin en yaygın nedenleridir. Bu makale, veritabanından arka uç ve ön uç uygulamasına kadar ve daha iyi bir şekilde üretecek olan adım adım ilerlemeniz gereken bir kontrol listesi sunar. Kullanıcı deneyimi ve ölçülen, artan ölçeklenebilirlik ve daha iyi genel performans. Bu, uygulamanızın tüm bölümlerinin veritabanını doğru kullanmasını, doğru sorguları yapmasını ve trafik geldiğinde küçük hataların patlamamasını sağlamakla ilgilidir. Hazır bir veritabanı oluşturun
Temel Veritabanlarının Hazırlanması ve Bakımı Veritabanındaki genel gecikme kaynağı, eski bir tablo türü (Myisam gibi) bir tablodur. Kara Cuma günü, hesap kaydı ve sipariş sayısı hızla arttı ve yazarken masanın kilitlenmemesi önemlidir. InnoDB, güncellenirken veya yeni veriler girerken daha iyi uyum sağlayan kilitleme hatlarına izin verir. Birçok eski eklenti, eski masa tipi myisam ile tablolar yapar, bunun Innodb’a dönüştürülmesi gerekir. Bunu PhpmyAdmin’e yapmadan önce veritabanınızı doldurun ve veritabanınız için tabloya genel bir bakış görün.

Tüm myisam tablolarını Innodb’a dönüştürün
Myisam tablosunun tablo adına tıklayın

Üst bıçaklardaki “İşlemi” tıklayın
Tablo seçeneğinin altında> Depolama Makinesi, Myisam yerine “Innodb” seçeneğini seçin ve “Git” i tıklayın
Tablonun özetinde bulduğunuz tüm myisam tabloları için bunu tekrarlayın
Veritabanınızdaki tüm tablolarda “Tablo Analizi” ni çalıştırın, veritabanlarının çok hızlı bilgi alabilmesinin nedeni, veritabanının onu bulmak için dizin kullanmasıdır. Dizin, özellikle verilerin silindiği ve girildiği yoğun bir tabloda büyük büyüyebilir ve tepeden alabilir.
Masanın üst kısmında aşağı kaydırın ve “Tümünü Kontrol Edin” tuşuna basın.
Hemen yanındaki gerilme menüsünde “Tablo Analizi” ni seçin ve Tamam’a basın.
Bu, tüm endeksleri yeniden inşa etmeye ve optimize etmeye zorlar, bu da size performansta bir artış sağlayabilir. Sitenizde trafik olmamasına rağmen, “optimize etme tablosunu” da çalıştırabilirsiniz. Bu bir tabloyu yeniden oluşturacak ve veritabanını yaparken kilitleyecektir. Bu, tablonuzun ve dizininizin sırasını ve boyutunu optimize eder ve bu nedenle performansı iyileştirir. Diğer veritabanı görevleri, işlenmesi uzun süren MySQL veritabanı izleme sorgularını yavaş kaydetti. Genellikle, kuyruk bir saniyenin bir kısmında yürütülür, ancak bazen kuyruk yavaş olabilir. Bazı yavaş sorgular iyi olabilir, örneğin CRON gibi bakım görevleri tarafından yapılan kuyruk, ancak ürün sayfasını veya sitenizdeki diğer sayfaları tıklarsanız, trafik arttığında bu ölümcül olabilir. Genellikle /var/log/mysqld.slow.log’da yavaş bir günlük bulabilirsiniz ve günlüğe erişiminiz yoksa, barındırma sağlayıcısından günlüğü sizin için kontrol etmesini ve yavaş soruları göndermesini istemelisiniz. sen.
Queri-Make’in optimizasyonu Dizin kullanımı kullanılarak sıklıkla kullanılan tüm sorguların dizin kullanımı eksikliği, web sitenizin ön uç uygulamasında yavaş sorguların en yaygın nedenleridir. Verilerin istendiği sütunda bir dizin bulunmayan veya başka nedenlerle dizinlerin kullanılması önlenen sorgular. Bu sorunu çözmek zor olabilir, ancak çok kullanışlı olabilir. Servicebolt’ta, tüm Woocommerce kullanıcılarına ServiLTolt Optimizer eklentisini yüklemelerini ve tarihler baz optimizasyon özelliğini çalıştırmasını öneririz. Eklenti, WordPress için en sık dizin ekler ve zamanınızın çoğunu ilk bayta dilimleyebilir. Uygulamanızdaki veritabanı sorgularının sayısını sınırlar, her sayfada hangi sorguların yürütüldüğünü izleyebilmeniz gerekir. Bir sayfa yüklemesi için birkaç yüz quent çalıştırmak normaldir, ancak bazen geliştiriciler onu binlerce veya binlerce olarak artıran kodu yaparlar. Bu, hiçbir koşulda iyi çalışamaz ve iyi çalışamaz ve uygulamanızda geliştirilmelidir.
Magento veya WordPress’teki hatalar, hatalar ve arka uç uyarıları genellikle web sitenizi azaltan en küçük şeylerdir. Çok zor, eğer bunu gerçekleşmeden önce bulmak imkansız değilse. Yapmanız gereken, sorun ortaya çıktığında katili hızlı bir şekilde bulmaya en hazır olduğunuzdan emin olmaktır. Bunu yapma şekliniz, daha önce bulabileceğiniz tüm hataları, hataları ve uyarıları düzeltmektir. Geliştiricilerin “Ah, bu sadece bir uyarı, bu yüzden sorun değil” deme eğilimi var. Normal koşullarda doğru olabilir, ancak aşırı kayıtların web sitesini hasar gördüğünü gördük. Ayrıca, günlük genellikle umursamadığınız uyarılarla doluysa, web sitenizin düşmesine neden olan belirli hatalar bulmak imkansızdır – çünkü yüksek trafik altındaki günlük hacmi olağanüstü olacaktır. Nginx veya apache kullansanız da, yapmışlar ve günlüklerinde hangi hatalar olur. Apache Erişim Günlükleri Sunucudaki Günlükler ve Hatalar eşliğinde kök klasör ve AccessLog sitesinde Apache erişim günlüğünü bulacaksınız. Diğer sistemlerde di/var/log/httpd/veya di/var/log/apache/veya/var/log/apache2/bulabilirsiniz. Nginx kullanıyorsanız, genellikle Di/var/log/nginx/nginx günlük dosyasını bulacaksınız. AccessLog dosyası, Apache tarafından sunulan tüm isteklerin ve HTTP durumunun bir listesini içerir. Bu günlüğü kontrol etmeniz gereken birkaç şey var:
Amplifikasyon İsteği Bir sayfa istendiğinde, bu aynı sayfaya çok fazla istek üretmemelidir. Dosya sistemi yerine web sitesinden dosya isteyerek, örneğin resim dosyasının boyutunu kontrol eden çeşitli eklentiler ve temalar (Halo WordPress) vardır. Sitenizi keşfederken bir günlük dosyası oluşturarak bu tür hataları bulabilirsiniz. Web sitenizin yayınlandığı IP sunucusunun günlük dosyasında olup olmadığını görerek genellikle kontrol edebilirsiniz. Evet ise, nedenini kontrol edin! Genellikle diğer günlük dosyaları, hataların neden oluştuğuna dair talimatlar verebilir.
404 elementin iyileştirilmesi Eksik unsurlar büyük bir sorun gibi gelmeyebilir, ancak ön uç daha yavaş hale getirir (tarayıcının bunun mevcut olmadığını bilmesi gerekir)-ve daha önemlidir ve bu israf kaynakları harcayacaktır.
Aktarımı Sınırlayın Sayfanıza doğru bağlantı kurduğunuzdan emin olun. Örneğin WordPress, tüm sayfalar için bir eğik çizgi ile sapmak – bu nedenle bağlantı doğrudan oraya götürmelidir. Bu, gidiş -dönüş kazandırır ve kullanıcı deneyimini hızlandırır.

Apache Hatası Günlükleri Pratik kurallar, hataların boş olması gerektiğidir.Bununla birlikte, kaçınılamayan bazı şeyler kaydedilir, örneğin var olmayan dosyalara yönelik istekler (eski dosyalar veya örneğin komut dosyalarını araştıran botlar).Magento, erişimi normal bir uyarı olarak reddedilmesi gereken Local.xml dosyalarına erişimi ve tam olarak ne yapmaları gerektiğine erişimi test eder.
PHP hatalarına ve uyarılarına geldiğinizde, her şeyden kurtulmaya çalışmalısınız. Bu, üçüncü bir taraf eklentisi kullanırken zor olabilir – ancak eklenti günlüğünüzde bir hata yaparsa, çok denemelisiniz ve eklenti yöneticisine bir hata bildirmelisiniz. PHP sürümünüzü, eklenti sürümünüzü belirleyin ve bir hata mesajı gönderin – ve birisi gelecekteki güncellemeler için bitirebilir. Açık kaynak topluluğu bu şekilde ilerliyor. Bu hata günlüğü, olağandışı bir şey olduğunda hata ayıklamaya başlamanız gereken en değerli kaynaktır – ve tüm PHP hataları burada kaydedilir (kayıt devre dışı bırakılmadıkça). WordPress için web uygulamasını kaydedin, hataları düzelttiğinizde hata ayıklama günlüğünü etkinleştirebilirsiniz, ancak çalışmayı bitirdiğinizde devre dışı bırakmanız çok önemlidir. Kapsamlı günlüğü sitenizi yavaşlatır ve günlük dosyası yüksek yükün altında hızla çok büyüyebilir. Magento günlük kaydı sistemleri çok kapsamlıdır ve genellikle aşırıdır ve genellikle oturum açma girişleri yoktur. Magento var/log klasörünü doldurur/System.log istisna.log ve bunun yanında var/raporlar/hataların insidansını kaydedecektir. Tüm bunlarla birlikte PHP günlüğündeki ile aynı şeyi yapmanız ve tüm hataların ve uyarı olaylarının düzeltildiğinden emin olmanız gerekir. Saklanan her küçük kaynağın, sitenizin son kullanıcısının ölçeklenebilirliğine, performansına ve deneyimine fayda sağlayacağını unutmayın. Cron işini gözden geçirin ve ne sıklıkta yürüdüklerini, ne yaptıklarını, neden yaptıklarını, ne kadar süre gittiklerini ve ne kadar kaynak tükettiklerini bilin.
Her dakika yanan ve planlanan görevi yerine getiren bir cron görevine sahip olmak yaygındır. Yıl boyunca neredeyse her gün kataloğu 00: 01’de yeniden endekslemenin mantıklı olmasına rağmen, süper satışınız aynı anda başlarsa bu çok kötü bir plandır. Ayrıca, örtüşen Cron görevi yaygın bir sorundur – özellikle Magento ile. Aynı veritabanı tablosunda aynı anda ağır iş yapan iki CRON göreviniz olmaması için bir program planladığınızdan emin olun. Fiyatı güncellerken ürünü yeniden incelemek kötü bir fikirdir, önce fiyatı güncellemek ve daha sonra yeniden indexing daha önce tamamlanacak ve daha istikrarlı bir katalog üretecektir. CRON çalışmasını işlemek için daha az kaynak harcayın, yani sunucunuz daha fazla işlemi işleyebilir! Bakım çalışmaları genellikle ağır bir veritabanıdır, çünkü kuyrukların birikmesine neden olabilir ve bu nedenle siteyi azaltabilir çünkü yüksek trafik beklediğiniz günlerde cron görevlerini erteleme veya gerçekleştirme planları yapmayı düşünün. WordPress kullanıcıları Cron’u gerçek bir Cron işi olarak çalıştırmayı sağlamalıdır. Varsayılan Cron WordPress’e (tarayıcıda çalışan) güvenmek veya WGY kullanarak Cron’un görevini yerine getirmek yaygındır. CRON çalışması, HTTP aracılığıyla aktarılmadan ve web sunucusundan dönmeden doğrudan sunucuda çalıştırılmalıdır. CRON görevini doğrudan WP-CHLI veya PHP ile çalıştırmak, daha verimli ve hatalara karşı savunmasız olmayan daha az kaynak harcayacaktır.
Trafik kapasitenizi katlar ile artırın, yukarıdaki adımları izlerseniz, mağazanız (daha önce yapılan iş yoksa) barındırma güncellemeden canlı trafik yeteneğini iki katına çıkarabilmeli veya çoğaltabilmelidir. Bu, neredeyse tüm mağazalara yatırım yapmak için en makul şeydir, çünkü arka uçları yatay olarak dağıtmak zorunda olan mağazaların her zaman düzgün çalışması gerekir. Kötü inşa edilen veya birçok hata olan web sitelerini dağıtmak çok imkansızdır. Tek sunucu ortamından ayrıldığınızda ölçek maliyeti de artacaktır. En büyük maliyetiniz ek bir sunucu değildir – ancak parçalanmış hazırlıktan karmaşıklığın artması, geliştirme maliyetini, bakım maliyetlerini ve eğitim maliyetlerinizi de artıracaktır. Norveç’teki en yoğun WooCommerce mağazalarından biri hala bir web sunucusu ortamında çalışıyor ve Kara Cuma ve Siber Pazartesi günleri hafta içi yüzlerce işlem ve binlerce işlem yapıyor. Geliştiricileri tamamen optimizasyona takıntılı ve hala 1000 doların altında barındırma maliyetlerine sahipken, mağaza normal ayda 1 milyon doları aşan siparişleri sürdürüyor. Servebolt’ta, tüm WooCommerce ve Magento paketleri aynı anda 500’den fazla kullanıcıyı kolayca tarayacaktır. Mağaza iyi çalışıyorsa ve hatalardan arınmışsa, 4GB’lık bir pakete sahip bir mağazamız var, 2500’den fazla çevrimiçi eşzamanlı kullanıcıyı olumsuz performans etkileri olmadan işledik. Hataları düzeltmek için sevgi gösterin ve hayatınız değişecek!
Ön uç-HTML, CSS ve JavaScript Arka uç iyi işlev gördüğünde, şimdi son kullanıcı performansını kullanmaya başlama zamanı.Ön uç performansı geliştirmek için yapabileceğiniz binlerce şey var, ancak arka uç gibi, performans açısından en değerli iş aynı prensibi uygulamaktır.Daha az kaynak atın!
Hat içermeyen HTML, CSS ve JS’nin önemi hafife alınmamalıdır. Sayfanız olması gerektiği gibi görünebilir, ancak tarayıcı bunu oluşturmak için çok fazla kaynak harcayabilir. Veya tarayıcınızda iyi görünüyor – ancak birkaç tarayıcı veya diğer cihaz kullanan ziyaretçilerin sizinkiyle aynı özelliklere sahip bir tarayıcı olmayabilir. Ön ucunuzun planladığınız gibi davranmasını sağlamanın en iyi yolu, hatalardan arınmış olmasını sağlamaktır. Tarayıcı, zamanının çoğunu sayfalarınızı oluşturmak için harcar. Hatalar, belirsizlik, uyarı veya çoğaltma, hatasız sitelere ve hatasızlara kıyasla tamamlanması için ekstra zaman gerektirecektir. Temizlik ve Yoksullaşmayı Ortadan Çıkarma Genellikle optimizasyon çalışmalarımıza temizlik ile başlarız. Kurulumu kaldırın ve ihtiyacınız olmayan her şeyi silin. Daha sonra bir şeye ihtiyacınız varsa, her zaman tekrar yükleyebilirsiniz – ancak şimdi kullanmazsanız, silin. Tüm ek kodlar (JS, CSS, HTML veya PHP) çeşitli kaynak türleri harcayacaktır. İnsanlar, hataları düzeltmenin önemini gerçekten hafife alıyorlar. Hata -Free web siteleri daha iyi görüntülenir, daha hızlı görüntülenir ve daha hızlı etkileşimlidir. Bu tarifi daha önce hiç denemediyseniz, doğru bir şekilde yapmanız gerekir – çünkü iyi çalışan sitelerin nüansları gerçekten şaşırtıcıdır. Her tıklama zevktir ve bekleme süresi tarihtir. Temizlikle Çalışmaya Başlayın: Kullanılmayan veya gereksiz eklentilerin kurulumunu kaldırın
Kullanılmayan harici komut dosyalarını sil

Eklenti tarafından kullanılmayan/gereksiz eklenmeyen yerel CSS ve JS dosyalarını silin ve 2. Adım hakkında yeniden düşünün, gerçekten tüm komut dosyalarına ihtiyacınız var mı? Biraz motivasyon için bu makaleye bakın
HTML’nizdeki şişkinlikten kurtulun
Kod tabanınız azaltıldığında ve daha az varlık olduğunda, bu zor iş yapma zamanı: Tüm hataları iyileştirin

HTML hatalarını düzeltin (sayfalarınızın çeşitli türlerini kontrol etmek için W3C validatörü kullanın ve doğrulandığından emin olun)
CSS hatalarını onarın (doğrulayıcı CSS kullanın)
JS hatalarını düzeltin (tarayıcınızdaki hata konsolunu kontrol edin)
Konsolunuzu karışık içerik, kayıp öğeler veya diğer hatalar için kontrol edin ve düzeltin.
Eğer şimdiye kadar geldiyseniz ve gerçekten bu işi yaptıysanız, takıntılı olabilirsiniz, bu da mükemmel web performansı elde etmenin tek yoludur. Web siteniz başlamadan önce olduğundan çok daha iyi ve daha ölçülebilir olmalıdır. Peki, tam sayfa önbelleğe alınmaya ne dersiniz? Tam bahçe önbellekleme ölçeklendirme içindir. Ve bu, en yüksek trafik zirvesini sökmek için tam bir avlu önbellek kullanmak için iyi bir fikirdir. Ancak, önce bunu yapmamalısınız!
İlk olarak, alacağınız trafiğin zirvesinin gereksinimlerini karşılayan bir tahmin yapmalısınız. Geçen yıl en yoğun dakikada kaç sayfa görüntüleme alıyorsunuz? Pazarlama listeniz bu yıl daha mı büyük? Pazarlama giderlerini artıracak mısınız? Bu yıl trafiğinizin zirvesi hakkında en iyi tahmini toplayın, çarpın ve yapın. Trafiğinizin tahmini zirvesiyle, mevcut ayarlarınız tarafından kaç ziyaretçinin ele alınacağını tahmin edebilirsiniz. Barındırma sağlayıcınızla konuşun ve sahip olduğunuz barındırmanın en azından zirve tahminlerinize kadar dağılacağından emin olun. Geliştirici modu gibi sunucu özelliklerini devre dışı bıraktığınızdan emin olun ve statik öğe önbelleğinin doğru etkinleştirildiğinden emin olun. Sunucu cıvatasında, kontrol panelindeki bir düğmedir. Oh, neredeyse tam bahçe önbelleğini unuttum. Web siteniz artık çok iyi çalıştığından, tam bahçe önbelleğe alınmadan trafiğin zirvesinden geçmesi muhtemeldir. Ancak, önbellek eklemek ek sunucu kaynaklarını serbest bırakacak ve en kötü trafiği ortadan kaldıracak, bu yüzden evet – kolaysa, bunu yapın. Ölçeklenebilirliğin çözülmesi bazen zordur. Optimal sonuçlar üretilene kadar sürekli izleme ve iyileştirme gerektiren çok sayıda parametre vardır. Daha sonra hızlandırılmış alanlar geliştirmek için bir neden haline gelen Serverbolt müşterilerine yardımcı olurken aynı kaşıntı hissediyoruz. Bu, daha fazla sunucu eklemeden veya yük dengeleyicileri gibi karmaşıklık eklemeden e -ticaret mağazanızın ölçeğine yardımcı olan bir hizmettir. Her şeyi set ve tanımlayarak düzenler. İyi şanlar!

admin

Bir Cevap Yazın

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