web-gelistirme-sc.com

Web sitesi hızı çok kötü

Web ekibinden sorumlu olan (tüm arkadaşlarım ayrıldı) ve imkansız bir görevle bırakılan bir çırak web geliştiricisi olarak çalışıyorum.

Yeterli belleğe sahip 10 çekirdekli bir Windows sunucumuz var ve birden çok Joomla! web sitelerinin yanı sıra özel olarak oluşturulmuş HTML ve PHP web siteleri. Özel olarak oluşturulmuş web siteleriyle ilgili herhangi bir sorun yoktur, tüm yükleme anında gerçekleşir. Ancak, Joomla! ) çok yavaştır ve 30 saniye yüklenebilir.

Web sitelerinde birden fazla hız testi yaptım ve inan bana, çoğunuzun ne düşündüğünü biliyorum.

"Görüntü boyutunu küçültün ve CSS ve JavaScript'i sıkıştırın"

Bunu zaten yaptım. Sorun TTFB (İlk Bayt Süresi) ile ilgilidir, çünkü bu 30 saniyeyi alabilir .

Aşağıdaki web sitesi size TTFB'yi göstermektedir.

http://www.bytecheck.com/results?resource=http%3A%2F%2Fhealthypetstemp.co.uk.5-189-187-215.premierepos.co.uk%2Fen%2F

Bu sadece Joomla! Barındırdığımız web siteleri ve gerekirse daha fazlasını sağlayabiliriz. Hızları Google Chrome DevTools) kullanarak da kontrol edebilirsiniz, ancak aynı şeyi size söyleyecektir.

Dediğim gibi, soruna neden olan budur ve bu konuda bazı yardımları çok takdir edecektir.

Şimdiden teşekkürler.

6

Tamam, en baştan başlayalım.

Öncelikle, performansla ilgili sorunları tespit etmek için Chrome'un Deniz Feneri testini çalıştırıyor olmalısınız. Chrome'da F12 tuşuna basın, ardından Audit sekmesine gidin.

Masaüstünde kısıtlama olmadan bir denetim yaptım ve performans sadece korkunç.

İlk olarak, yüklenen tüm varlıkları görebilmek için Joomla JCH Optimize eklentisini devre dışı bırakın.

1. Genel:

Çok fazla öğe yüklüyorsunuz ve Node listeniz 1,5k'nin altında olması gerektiğinde 4,5k'nin üzerindedir. Sayfa yapınızı değiştirmeyi ve gerekirse belirli öğeleri diğer sayfalara taşımayı düşünmeye başlayın Kritik içeriği yalnızca ana sayfada görüntüleyin.

Birçok varlığa gelince, bir örnek 7 yazı tipi yüklediğinizdir. Bu hiç de haklı değil. Simgeler için FontAwesome'i yüklemek istiyorsanız, bu yeterince adil, ancak içeriğinizi şekillendirmek için 6 yazı tipine ihtiyacınız yok. Bu kötü bir tasarım. Markanız için 1 yazı tipi seçin, yapıştırın ve gerisini kaldırın.

2 - HTTP/2.0:

LetsEncrypt adresinden ücretsiz bir SSL sertifikası alın, sunucunuza yükleyin, sonra HTTP/2.0'ı etkinleştirin. Bu güncelleme, varlıkların getirilme şeklini değiştirir ve böylece bunları yüklemek için gereken süreyi azaltır.

3 - LazyLoad:

2018'deki iyi bir web sitesi, HTML'yi önce küçük bir kritik CSS yığınıyla oluşturuyor, böylece ilk sayfa yüklemesi her yere bakmıyor. Temel HTML yüklendikten sonra, CSS, JS ve resimlerinizi tembel olarak yüklersiniz. Şu anda ne yapacağınız <head>, yani tarayıcı HTML'nin geri kalanını oluşturmaya devam etmeden önce indirilene kadar bekleyecektir.

Bunu eklentilere güvenmek yerine şablon düzeyinde (daha hızlı) yapmayı tercih ederim ... ama sonra, bir UI geliştiricisiyim, bu yüzden kendi şablonlarımı geliştiriyorum.

Kendi şablonunuzu oluşturmayı düşünebilirsiniz.

Kişisel olarak Joomla CMS üzerinde çalıştığım birinin kendi şablonunuzu nasıl oluşturacağınız konusunda bazı harika eğitimleri var:

https://www.youtube.com/channel/UCSinMbPPdEPx6Hw5QcueITg/featured

4 - SVG'LER:

Sitenizde PNG yerine SVG olabilecek birkaç resim var. 200x200 piksel resimler yüklüyorsunuz ve bunlar 94x94'te oluşturuluyor. Çoğu durumda boyutu daha küçük olan ve sayfa yakınlaştırıldığında veya retina cihazında yakınlaştırıldığında netliği kaybetmeyecek SVG'leri kullanmaya başlayın.

5 - Resimler:

Resimlerinizin boyutu, boyutlarına göre çok büyük. Her kaydırıcı görüntüsü 250kb ile 500kb arasındadır. Ayrıca, görüntüler tembel olarak yüklenmez. Fotoğraf gibi veya SVG olarak en iyi şekilde performans göstermeyen herhangi bir şey gibi resimler için, Google tarafından geliştirilen bir biçim olan WEBP'yi kullanın. Yine de desteklemeyen tarayıcılar için bir yedek almanız gerekir.

5 - Önbellekleme:

Varlıklarınızı önbelleğe almak için PHP kullanmayın! Sunucu düzeyinde yapın (Apache, NGinx, vb.) Bu konuda bazı eğitimlere göz atın veya barındırma sağlayıcınız/sunucunuzla konuşun amdinistrator.

Umarım bu size ürününüzü geliştirmenize yardımcı olacak bir fikir verir.

3
Lodder

Bu temel kontrolleri zaten yaptınız mı?

1 - Joomla Önbelleğe Almayı Etkinleştir

Bu, sayfa yükleme sürelerinizi zaten önemli ölçüde artıracaktır

Eklentilerinize gidin ve açın Sayfa Önbellek eklentisi Genellikle zaten şu şekilde yapılandırılmış olacaktır:

enter image description here

Kaydet ve kapat

2 - Önbelleğinizi yapılandırın TTL ve davranış

Sisteme Git - Global Yapılandırma - Sistem (-tab)

enter image description here

  • Önbelleği "Aşamalı" olarak etkinleştir
  • önbellek süresini buna göre ayarlayın (ölçümlerimizden)
    • Günde 200+ ziyaret içeren yüksek yüklü sayfalar için 30 veya daha az
    • Günde 100+ ziyaret içeren orta yüklü sayfalar için 60
    • Günde 50+ ziyaret içeren düşük yüklü sayfalar için 120
    • Günde 20+ ziyaretle çok düşük yüklü sayfalar için 240

Bu değerler, yaklaşık 1 yıllık birden fazla sayfayı ölçmekten elde ettik. Günde 200'den fazla ziyaretiniz varsa, önbellek zamanından ne yaptığınızı zaten bileceksiniz. Ancak genel bir kural: içeriğinizi düzenli olarak güncellerseniz (diyelim ki 15 dakikalık aralıklarla) önbellek süreniz elbette ihtiyaçlarınızla eşleşmelidir (15 dakika veya daha az). Daha eski içeriklerin teslimatı ile yaşayabiliyorsanız, elbette daha uzun bir önbellek süresi saklayabilirsiniz.

Dezavantajları Ancak bu önbellek sizin için bir 500 hatası üretebilecek herhangi bir joomla/eklenti/uzantı güncellemesini unutmayın. Bu durumda, önbelleği Menü - Sistem - Önbelleği Temizle (Tümünü Sil) alanına bırakabilirsiniz, ancak burada açıkça bir gözünüz olması gerekir. İzlemeniz ve kontrol etmeniz gerektiği anlamına gelir!

3 - Bir küçültücü ve önbellek eklentisi ekleyin

Orada birden fazla eklenti var. Ayrıca gerçekten eklentiyi ne kadar sevdiğinize bağlı. Hepsi aynı şeyi yapar:

  • cSS, JS, HTML'yi küçültün
  • birden fazla CSS dosyasını bir veya daha azına birleştirin
  • birden fazla JS dosyasını bir veya daha azına birleştirin
  • birden fazla HTML dosyasını bir veya daha azına birleştirin

Bazen görüntü dönüşümünü veya sprite'ları birleştiren görüntüyü geliştirmenize bile yardımcı olabilirler. Ancak bu, sayfa performansınızı pek artırmaz. Burada "kek üzerine kiraz" seviyesini yapıyorsun

2
laendle

Genellikle buna kötü tasarlanmış bir kod, kötü bir eklenti, bazı hatalar veya koddaki kötü yaklaşımlar ve/veya optimize edilmemiş mysql sorguları neden olur.

Bazen sunucu yapılandırması ile kombinasyon da olabilir.

Hata ayıklamanız ve bir dizi test ve deneme yapmanız gerekir. eklentileri devre dışı bırakma, şablonları değiştirme vb.

Bazı durumlarda, jch gibi optimizasyon eklentileri iyi performans göstermeyebilir ve daha yavaş bir web sitesine neden olabilir.

Ayrıca Joomla'nın en son sürümlerini ve uzantılarını kullandığınızdan emin olun ve sorunları geliştiricilerine bildirin.

1
FFrewin