Register Now

Login

Lost Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Login

Register Now

Canyoupwn.me ~

TR | Linux Varnish


varnish-1

 

Varnish Cache Nedir?

Varnish bir http hızlandırıcı yazılımıdır.Peki bu http hızlandırıcı yazılımı nedir? Web application accelerator(Web uygulama hızlandırıcı) ziyaret ettiğimiz internet sayfalarına erişimi hızlandırmak amacıyla tasarlanmış sistemlerdir.

Web sunucu,dinamik ve statik web sayfaları

Bir internet sitesini ziyaret etmek istediğimizde o sitenin web sunucuna istekler göndermiş oluruz.Bu web sunucularında ise sitede yayınlanmak istenen sayfalar,resimler veya dökümanlar gibi metaların tutulması sağlanır.Bir nevi sitelerin depoları olarak bilinebilir.Bu ziyaret etmek istediğimiz siteler dinamik ve statik olarak ayrılabilir.Statik web sitelerinin güncellenme sıklığı azdır.Yani uzun bir süre değişiklik olamadan yayın yapabilirler.Değişken bir yapı göstermezler.Dinamik web siteleri ise her bir ziyaretçiye özel olarak tasarlanabilir ve değişken bir yapı göstermektedir.Kullanıcı-üye içeren bir web sitesi ise her üyenin sayfası farklı içeriklere sahip olabilir.Örneğin Google anasayfasına erişmek isteyen her kullanıcı aynı içerik ile karşılaşabilir.Fakat birde facebook profil sayfasını ele alırsak her kullanıcının sayfası farklı olabilir.

Nasıl Çalışır?

         Varnish yazılımı ziyaret ettiğimiz statik web sitelerine istek gönderdiğimizde içerikleri web sunucusu üzerinden geri döndürmek yerine içerikleri kendi önbelleğinde var ise ordan döndürmektedir.Buda bize hız ve zaman kazancı olarak geri dönmektedir.Ayrıca web sunucusunu yormadığı için sunucunun daha sağlıklı çalışmasına neden olabilir.Statik web sitelerindeki html,css,jpg,png,pdf gibi içerikler önbelleğe alınabildiği gibi varnish dinamik web sitelerindeki bazı içerikleri de önbelleğine alabilmektedir. Varnish’in en büyük avantajlarından biri ise bu içeriklerin ne zaman dinamik olarak oluşturulup ne zaman statik olarak oluşturacağını bilmesidir.Bu olayı bildiğimiz bir olayla bağdaştırmak istersek şu örneği verebiliriz.Her gün ekmek aldığımız bakkala gitmek yerine ekmek isteğimizi kapıcıya iletiriz ve kapıcı da bize isteğimizi getirir.Böylece bakkala gitmek için harcadığımız zaman ve enerjiden kazanç elde ederiz. Varnishte de kazancımız büyük oranda hız kazancı olmaktadır.

  • Linux için kurulum aşamalarını ekran görüntüleriyle inceleyelim.

İlk olarak aşağıda vereceğimiz adresi ziyaret ederek işletim sistemimize uygun kurulum yönergelerini ve dosyalarını elde edebiliriz.

https://varnish-cache.org/releases/index.html

Ayrıca vereceğimiz varnish linkinden dokümantasyonlara,yeniliklere,versiyonlara göz atabilirsiniz.

https://varnish-cache.org
  • Bu adresteki kurulum yönergeleri ise şu kısımdadır.

varnish-2

  • Bizim inceleme yapacağımız sistemimiz Kali Linux – Debian sistem olduğu için  Installation on Debian  kısmına göz atalım.

varnish-3

  • apt-transport-https  paketini yükleyerek kuruluma başlayalım.

varnish-4

varnish - 5

  • Daha sonra kendi depo adresini ekleyelim.
curl https://repo.varnish-cache.org/GPG-key.txt | apt-key add - echo "deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1"\

varnish-6

  • Daha sonra girdi kısmına
/etc/apt/sources.list.d/varnish-cache.list

yazalım

varnish-7

  • Şu şekilde bir ekran görmekteyiz devam edelim.

varnish-8

  • Herhangi bir hata durumunda /etc/apt/sources.list dosyasına kendimiz depo adresini ekleyebiliriz.Bunun için aşağıdaki adımları takip edelim.
nano /etc/apt/sources.list
  • Komutu ile kaynak depo dosyamıza yazmak için nano  metin editörü ile açalım.
deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1
  • Yeni bir satıra bu kodu ekleyerek kaydedip kapatalım.
apt-get update

ile depomuzu güncelleyelim.

apt-get install varnish
  • Komutu ile varnish’i kuralım.

varnish-9

varnish-10

  • Ve aşağıdaki ekran ile kurulumu tamamlamış bulunmaktayız.

varnish-11

  • Kurulum işlemimizi tamamladık şimdi Varnish konfigürasyon ayarlarımızı yapalım.
nano /etc/default/varnish

komutu ile varnish dosyamızı düzenleyelim.

varnish-12

  • Daha sonra Alternative 2 kısmında DAEMON_OPTS = “-a:80 \  kısmını yazdığımız şekilde değiştirelim.

varnish-13

  • “-a: 80 \” kısmını değiştirdikten sonra kaydedip çıkalım.
  • Daha sonra default.vcl dosyamızı düzenleyelim.

varnish-14

backend default{ .host = “127.0.0.1”; .port = “8080”; }
  • “backend default” kısmını belirtildiği gibi düzenleyelim.Kaydedip çıkalım.

varnish-15

  • Varnish dosyalarımızın konfigürasyon ayarlarını da tamamladık.
  • Şimdide apache2 ayarlarımıza göz atalım.
nano /etc/apache2/ports.conf

komutu ile apache2 port ayarlarını düzenleyelim.

varnish-16

  • Ports.conf dosyasının içerisine şu satırları ekleyelim:
 NameVirtualHost 127.0.0.1:8080
 Listen 127.0.0.1:8080

varnish-17

  • Daha sonra
nano /etc/apache2/sites-available/default

komutu ile default dosyamızı düzenleyelim.

varnish-18

  • default içerisine <VirtualHost 127.0.0.1:8080>  ekliyoruz ve kaydedip kapatıyoruz.

varnish-19

  • Apache2 konfigrasyon ayarlarımızıda tamamladık.Şimdi apache2 ve varnish servislerimizi yenileyelim.
service apache2 restart
service varnish restart

varnish-20

  • Ayarlarımızı tamamladık şimdi ayarlarımızı kontrol etmek için test edelim.
  • Apache2 servisini :8080 portuna ayarlamıştık.Varnish yazılımını kullanarak ise :80 portundan ulaşacağız görelim.
  • İlk olarak varnish’i kullanmadan erişmeyi deneyelim.Bunun için 8080 portunu kullanıyoruz.
ab –n 6000 –c 1 http://127.0.0.1:8080/

komutu ile çıktılarımızı inceleyelim.

varnish-21

  • Şimdide Varnish üzerinden erişelim ve sonuçları görelim.

varnish-22

  • Varnish üzerinden erişimimizin sonuçlarınıda böylece görmüş olduk.

Yazımızda Varnish kurulum,konfigürasyon ayarları ve apache-Varnish test eylemleri ile Varnish yazılımını inceledik.


About Murat TORAMAN

Süleyman Demirel Üniversitesi Bilgisayar Mühendisliği 4.sınıf öğrencisi

Follow Me