Memcached Nedir? Memcached ve Diğerleri – 2023

CSA Digital

Memcached Nedir, sorusuna kısaca cevap vermek gerekirse; açık kaynak kodlu, çoklu sunucuda çalışabilen, hafıza tabanlı bir veri önbellekleme sistemidir. Facebook, YouTube, Twitter ve Reddit gibi neredeyse tüm büyük platformlarda bu önbellekleme sistemi kullanılmaktadır.

Memcached, web uygulamaları başta olmak üzere veritabanı sorguları ve XML verilerini hızlı bir şekilde okumak, saklamak ve çağırmak için kullanılmaktadır. Özellikle yüksek trafikli web siteleri için yüksek performans sunduğu içinde birçok Web Hosting şirketi tarafından kullanılmaktadır.

Memcached ne işe yarar?

Memcached, verileri kullanılabilir bellek boyutuna göre işlediği için bu verilerin hızlı bir şekilde erişebilir hale getirilmesini sağlayarak veri tabanlarının yüklerini azaltmaktadır. Bu özelliklerinden dolayı da;

  • YouTube,
  • Facebook,
  • Slashdot,
  • Wikipedia,
  • Sourceforge
  • Twitter ve Reddit gibi platformlarda tercih edilmektedir.

Dünyadaki en büyük mem kullanımı, Facebook’dadır. Hali hazırda şirket, Mem’in resmi geliştiricilerinden biri olmuştur.

guru – eksisozluk kullanıcısı

Memcached Kurulumu – cPanel

Alma Linux, Rocky Linux, Ubuntu gibi işletim sistemlerinde bu önbellekleme çalışabilmektedir. Paketi yükledikten emin olduktan sonra;

apt install -y ea-podman-repo
apt update
apt install -y ea-podman ea-memcached16 

kodunu çalıştırın. Ardından, cPanel kullanıcısı olarak SSH’de oturum açtıktan sonra;

/usr/local/cpanel/scripts/ea-podman install ea-memcached16

dizinine ulaşın. Mem soket dosyası içeren kapsayıcı adına sahip bir dizin oluşturun;

~/ea-podman.d/container-name/memcached.sock

Bu soket dosyası, uygulamanızı Mem konumu olarak kullanması için yönlendireceğiniz dosyadır.

Unutulmaması gerekiyor ki, performans kaybı yaşanmaması için MEM’de herhangi bir authentication/authorization mekanızmasının olmaması gerekmektedir. Mem sunucusunun dinlediği porta erişebilen herkes, eğer key adını biliyorsa içeriğini de ulaşabilir.

guru – eksisozluk kullanıcısı

Memcached Kurulumu – Debian

Öncelikle;

sudo apt update
sudo apt install memcached

yukarıdaki kodları Terminal’a girin. Uzak bağlantının kapalı olması gerektiği için aşağıdaki işlemi yapmayı unutmayın.

-l 127.0.0.1

Unutmamakta fayda var, güvenlik sebebiyle dışarı açmak büyük risk taşır. Yönetim amacıyla açılacaksa sabit ip ile whitelisting yapmalı ve güvenliğini sağlamalıyız.

systemctl restart memcached

Ardından netstat -tolpn komutu ile 11211 portundan servisin çalışıp çalışmadığına emin olunuz.

root@debian:~# netstat -tolpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name     Timer
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      21131/memcached      off (0.00/0/0)
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      530/sshd             off (0.00/0/0)
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      17396/exim4          off (0.00/0/0)
tcp6       0      0 :::22                   :::*                    LISTEN      530/sshd             off (0.00/0/0)
tcp6       0      0 ::1:25                  :::*                    LISTEN      17396/exim4          off (0.00/0/0)

Anlatım için Mertcan Gökgöz’e teşekkürler.

Memcached vs RedisPin
Memcached vs Redis

Memcached ve Redis Arasındaki Farklar Nelerdir?

Memcached ve Redis, veri önbellekleme sistemleri olarak kullanılabilen iki farklı araçtır. Ancak, ikisi de farklı işlevler sunar ve farklı kullanım senaryoları için optimize edilmiştir.

  1. Veri tipi desteği: Redis, daha geniş bir veri tipi desteğine sahiptir ve verileri çeşitli şekillerde depolayabilir: string, hash, liste, küme, zincir, bit haritası vb. Öte yandan, Memcached, sadece anahtar-değer çiftleri olarak depolanan verileri destekler.
  2. Süreklilik: Redis, verilerin diske yazılmasını (persistence) destekler ve bu verileri kalıcı hale getirir. Bu, verilerin sunucu kapatıldığında ya da başka bir sorunla kaybı durumunda korunmasını sağlar. Memcached ise, verileri sadece bellekte saklar ve sunucu kapatıldığında verilerin kaybolduğu bir sistemdir.
  3. Replikasyon: Redis, verilerin replikasyonunu (yedekleme) destekler ve bu verilerin birden fazla sunucuda yedeklenmesini sağlar. Diğeri ise replikasyon desteği yoktur.
  4. Fonksiyonel özellikler: Redis, verilerin zaman aşımı (expiration), pub/sub mesajlaşma sistemi, Lua script desteği gibi ek fonksiyonel özelliklere sahiptir. Diğeri ise bu tür ek fonksiyonaliteleri desteklememektedir.
  5. Performans: Her ikisi de yüksek performanslı araçlar olsa da, bellek tabanlı önbellekleme için optimize edilen Mem, yalnızca anahtar-değer verileri için en yüksek performansı sunar. Redis ise, daha fazla veri tipi desteği ve fonksiyonel özellikler sunmasına rağmen, daha yavaş bir performans sunabilir.

Genel olarak, Mem, hızlı ve etkili anahtar-değer veri önbellekleme için uygundur, ancak daha fazla veri tipi desteği ve fonksiyonel özellikler gereksinimi olan kullanıcılar için Redis daha uygundur.

Memcached Litespeed Cache AyarıPin
Memcached Litespeed Cache Ayarı

Memcached Object Cache nedir?

Memcached Object Cache, WordPress gibi bir web uygulamasında, veritabanından verilerin bellekte depolanmasını ve hızlı erişilmesini sağlayan bir önbellek sistemidir. WordPress, her sayfa yüklenirken veritabanından verileri çekmek zorundadır, ancak bu işlem yavaş ve zaman alıcıdır. İşte bu noktada, Mem Object Cache devreye girer ve veritabanından çekilen verileri bellekte saklar. Böylece, bir sonraki sayfa yüklemesinde bu veriler hızlı bir şekilde erişilebilir ve sayfa yükleme süresi hızlandırılabilir.

Ayrıca, Mem Object Cache, verilerin çoklu sunucu arasında senkronize edilmesine olanak tanır, böylece veritabanındaki değişiklikler anında tüm sunucular tarafından görülebilir. Bu, veritabanındaki yükü azaltır ve uygulamanın performansını artırır.

Mem Object Cache, WordPress gibi bir web uygulamasının performansını ve hızını artırma potansiyeli bakımından çok önemlidir ve önerilen bir önbellek sistemidir.

Eğer bağlantı testini geçti (yeşil yazı ile yazar) ibaresi mevcut değilse sunucunuzda Mem desteği yoktur. Bu yüzden de bu fonksiyonu açmanız büyük oranda işinize yaramayacaktır.

– Doğukan KOZBA

WordPress’de yer alan Litespeed Cache eklentisinin detayları WordPress Site Hızlandırma başlıklı yazımızda anlatılmıştır. Bu konuyla bağlantılı olarak; cPanel PHP Sürümü Değiştirme ve Mod Security Nedir sorularının cevaplarını da ilgili içeriğimizde bulabilirsiniz.

Yorum yapın

1