Varnish Cache
  • Varnish Cache
  • Varnish Cache Nedir?
    • Varnish Cache
    • Varnish Açık Kaynak Bir Proje
    • Varnish Nasıl Çalışır?
  • Varnish Başlangıç
    • Varnish Kurulumu
      • Paket Yöneticisi Kullanarak Varnish Kurulumu
      • Ubuntu ve Debian Üzerinde Varnish Kurulumu
      • Red Hat and CentOS Üzerinde Varnish Kurulumu
    • Varnish Yapılandırma
      • Yapılandırma Dosyası
      • Ubuntu ve Debian için Systemd Ek Bilgi
      • Başlangıç Seçenekleri
    • TLS/SSL Hakkında
  • Varnish HTTP
    • Varnish ve HTTP
    • Idempotence
    • State (Durum)
    • Expiration (Süre sonu)
      • Expires Header
      • Cache-Control Header
      • Expiration Precedence (Bitiş Süresi Önceliği)
    • Koşullu İstekler
      • ETag
      • Last-Modifed
      • Koşullu İstekler ile Varnish İşlemleri Nasıl Yapılır?
    • Önbellek Varyasyonları
    • Varnish Hakkında Bazı Sorular
  • Varnish Yapılandırma Dili (VCL)
    • Varnish Yapılandırma Dili (VCL)
    • Kancalar ve Alt Yordamlar
      • İstemci Tarafı Alt Yordamları
      • Arka Uç Alt Yordamları
      • Başlatma ve Temizleme Alt Yordamlar
      • Özel Alt Rutinler
    • Dönüş İfadeleri
    • Akış Şeması
    • VCL Sintaks
      • Operatörler
      • Koşullar
      • Yorumlar
      • Değerler
      • Düzenli İfadeler
      • Include
      • Varnish Modüllerini Dahil Etme
    • Arka Uçlar (Backends) ve Health Probes
    • Erişim Kontrol Listeleri (ACL)
    • VCL Değişkenleri
    • Varnish'in Dahili VCL'i
  • Önbelleği Geçersiz Kılma
    • Purging
    • Banning
      • Lurker-Friendly Bans
      • Ban Listesi
    • Zorla Önbelleği Geçersiz Kılmak
  • Backend Kullanımı
    • Backend Kullanımı
    • Backend Seçimi
    • Backend Sağlığı
    • Directors
      • Round-Robin Director
      • Random Director
      • Hash Director
      • Fallback Director
    • Grace Mode
      • Grace Mode Aktif Et
  • Loglama ve Debug
    • Loglama ve Debug
    • Varnishstat
    • Varnishtop
  • Varnish Modüller
    • Varnish Modüller
    • libvmod-geoip
    • libvmod-vsthrottle
  • Kaynaklar
    • Kaynaklar
Powered by GitBook
On this page
  • Kurulum (Debian Tabanlı)
  • Fonksiyonlar

Was this helpful?

  1. Varnish Modüller

libvmod-vsthrottle

Varnish kullanarak Rate-Limit yapmanızı sağlar. Örneğin istemcinin 10 saniye için en fazla 15 istek yapmasını sınırlayabilirsiniz. Eğer sınırı aşarsa hata sayfası dönebilir veya istediğiniz herhangi bir işlemi yapabilirsiniz.

Kurulum (Debian Tabanlı)

Aşağıdaki paketlerin kurulu olması gerekli.

apt-get install build-essential varnish-dev

Aşağıda 4.0 sürümü için kurulum gösterilmiştir.

cd /tmp
git clone https://github.com/varnish/libvmod-vsthrottle -b 4.0
cd libvmod-vsthrottle;
./autogen.sh
./configure
make -j $(nproc)
sudo make install

Yukarıdaki adımları sorunsuz şekilde tamamladıktan sonra kullanıma geçebilirsiniz. Kullanmak için import etmeniz yeterli.

import vsthrottle;

Fonksiyonlar

is_denied(STRING key, INT limit, DURATION period)

key argümanı benzersiz bir tanımlayıcı olmalı genelde ip kullanılır. limit argümanı belirlenen zaman periyodunda kaç adet istek yapılabileceğini gösterir. period zaman periyodu.

Fonksiyon boolean bir değer döner.

sub vcl_recv {
    if (vsthrottle.is_denied(client.identity, 15, 10s)) {
        return (synth(429, "Too Many Requests"));
    }
}
Previouslibvmod-geoipNextKaynaklar

Last updated 6 years ago

Was this helpful?