WordPress Önbelleği: Neler önbelleğe alınabilir ve bunu nasıl yaparız

Yayınlanan: 2017-04-28

Web sitenizin hızlı ilerlemesini istiyorsunuz. Site hızına katkıda bulunan bir teknoloji önbelleğe almadır. Önbelleğe alma, gelecekteki istekler için hızla kullanılabilir olmaları için verileri depolayan bir dizi yazılım ve donanım tekniğidir. Bu yazıda, WordPress önbelleğinin ne olduğunu, birçok farklı düzeyde nasıl uygulanabileceğini ve sizin için her şeyi nasıl halledeceğimizi açıklayacağız, böylece endişelenmenize gerek kalmayacak.

önbelleğe alma nedir?

Bilgi işlemde, değerleri geçici olarak depolamak ve gelecekte daha hızlı almak için bir yazılım veya donanım bileşeninin kullanıldığı "önbellek" adı verilen bir şey vardır. MySQL sorguları veya derlenmiş PHP bayt kodu gibi değerler ile HTML ve resimler gibi yinelenen veriler. Hemen hemen her şey, gerçekten.

Önbelleğe Alma Faydaları

Verilerin kopyalarını çıkararak ve bunları "önbelleğe alma" bileşenine yerleştirerek önemli bir performans avantajı elde ederiz. Ziyaretçileriniz önbelleğe alınmış içeriği önbelleğe alınmamış içeriğe göre çok daha hızlı alabilir. Önbelleğe alınmış içerik, ziyaretçileriniz tarafından önbelleğe alınmamış içerikten daha hızlı alınabilir. Önbelleğe alma bileşenleri genellikle bellektir, ancak geleneksel depolamadan daha hızlı olabilen herhangi bir şey olabilir. Ancak ne kadar performans artışı elde edebilirsiniz?
Her şey ne kadar veriyi önbelleğe alabileceğinize bağlıdır, ancak genel olarak konuşursak, bir tam saniyelik performans iyileştirmeleri nadir değildir.

Neler önbelleğe alınabilir?

Önbelleğe almayı kullanarak web sitenizi optimize etmede ne kadar ileri gitmek istediğinize bağlı olarak birkaç seviye vardır.

HTML Çıktısı

İlk yol, HTML sayfasının kendisini önbelleğe almaktır. WP Rocket ve W3 Total Cache gibi bunu ve çok daha fazlasını yapan birçok WordPress önbellek eklentisi var. Bu eklentiler, gelecekteki istekler için zamandan tasarruf sağlayan HTML çıktısının sonucunu önbelleğe alır. Ek olarak, her eklenti size bir önbellek geçersiz kılma mekanizması sağlar, böylece istediğiniz zaman önbelleğe alınmamış içeriği sunabilirsiniz.

Başka bir teknik, HTML'yi "küçültmek", yani onu küçültmektir. Bu size sayfa başına birkaç kilobayt verir, ancak zamanla artar.

Bunu yapmak için Gösterge Tablosuna veya WordPress'e eklenti yüklemenin bir yoluna erişmeniz gerekir.

Referans:

  • WP Roketi
  • W3 Toplam Önbellek WordPress eklentisi

PHP OpCache

OpCaching, PHP'nin kaynak PHP dosyalarını aldığı ve bunları bytecode adı verilen bir ara formda derlediği bir tekniktir. Bayt kodu, bir bilgisayarın makine kodu gibidir, ancak gerçek bir makineden ziyade bir “sanal makine” (bu örnekte, PHP'ler) tarafından yürütülen makine kodunu ifade eder. Makine kodu olduğundan ve bellekte bulunduğundan, PHP yorumlayıcısının bir seferde bir komutu ayrıştırıp yürütmesini sağlamaktan çok daha hızlı yürütülebilir.

Önbelleğe alma, bu seviyede, uygulamanızın daha hızlı çalıştırılabilmesi için bu bayt kodu verilerini belleğe kaydeder.

PHP OpCache'in etkinleştirilmesi için PHP yapılandırma dosyasına erişiminiz olması gerekir.

Referans: OpCache

Pressidium ile web sitenizi barındırın

60 GÜN PARA GERİ GARANTİSİ

PLANLARIMIZI GÖRÜN

PHP Nesne Önbelleği

Bu, dilin OOP düzeyinde yapılan önbelleğe alma işlemidir. PHP nesne yönelimli bir dildir, yani mantığı, verileri ve fikirleri tanımlamak için "nesneler" kavramını kullanır. Uygulamanız çalışırken, bu nesneler sürekli olarak oluşturulur ve yok edilir (dinamik olarak, çöp toplayıcı adı verilen bir alt sistem tarafından). Bu nesnelerin oluşturulması ve başlatılması süreci zaman alır. Böylece nesne önbelleğe alma, nesnelerin kendilerini önbelleğe alarak bunu çözer.

Bu, Memcached gibi eklentiler ve Redis için çeşitli eklentiler aracılığıyla uygulanır. Redis, veritabanı olarak kullanılabilen güçlü bir bellek içi veri yapısı deposudur. Memcached, dağıtılmış bir nesne önbelleğe alma sistemidir. Her ikisi de bu düzeyde önbelleğe alma yapmak için mükemmel seçimlerdir.

PHP Nesne önbelleğe almayı etkinleştirmek için PHP'nin yapılandırmasına erişiminiz olması gerekir. Ayrıca bir Redis veya Memcached örneğine erişmeniz gerekir.

Referans

  • Redis WordPress eklentileri
  • Memcached WordPress eklentisi
  • Redis Belgeleri
  • Önbelleğe Alınmış Wiki

MySQL Sorgu Önbelleğe Alma

Bu aynı fikirdir ancak veritabanı düzeyinde uygulanır. Veritabanı, girilen sorguya göre bir dizi veri döndürür. Bu sorguların sonuçlarını önbelleğe alabilirseniz, bir dahaki sefere birisi bu sorguyu kullandığında verileri çok daha hızlı alacaklardır çünkü bunlar bellekte önbelleğe alınmış olacaktır.

Bunun için veritabanı sunucusuna erişiminiz olması gerekir.

Referans: MySQL 8.0 Sorgu Önbelleği

Tüm bunların düzgün bir şekilde kurulması ve bakımının yapılması için birçok şey gereklidir. Tecrübeniz yoksa teknik bilgi, zaman ve hatta para. Ancak bunların hepsine yardımcı olabiliriz.

Pressidium'un Çok Katmanlı Önbelleğe Alma özelliğiyle her şeyi nasıl çözeriz.

Cevap basit. Her yerde önbelleğe almayı uyguladık: WordPress'in tüm katmanlarında.

HTML çıktısı için iki katman önbelleğe alma uygularız, sıcak ve sıcak . Bu katmanlar, uyarlanabilir önbellek motorumuzun bir parçasıdır. Motorumuz ayrıca sitenizin profilini çıkarabilir ve en verimli önbelleğe alma kurallarını uygulayabilir. Ancak, bu konuda daha fazla ayrıntıya başka bir makalede gireceğiz. Dolayısıyla, Sıcak önbellek, bellekte bulunan ve hızlı bir şekilde erişilebilen verilerdir. Sıcak Önbellek, son teknoloji SSD disklerde bulunan verilerdir. Bu , genel önbellek isabet oranlarını artırır ve sitenizin geleneksel depolamaya göre önemli ölçüde daha iyi performans göstermesine neden olur.

Kurumsal müşterilerimiz için, mükemmel bellek içi veri yapısı deposu Redis'i kullanarak bir nesne önbelleğe alma sistemi oluşturduk. Son olarak, MySQL Sorgu önbelleğe alma. Bu, varsayılan olarak etkinleştirilir ve DevOps'umuz tarafından sürekli olarak izlenir. MySQL Sorgu Önbelleğe Alma, web sitenizin performansıyla ilgili size değerli bilgiler verebilir.

Bunların hepsinin, bazı WordPress önbellek eklentileri aracılığıyla değil, Platformumuzun arka ucunda uygulandığına dikkat etmek önemlidir. Bu, a) depolama için harici sunucular kullanıyoruz, bu nedenle web sunucunuzun kaynaklarına yük olmuyoruz ve b) verileri, erişimi diskten daha hızlı olan bellekte saklıyoruz.

Önbelleğe alma ihtiyaçlarınız ve bütçeniz ne olursa olsun, sunabiliriz.