makaleler / Python Kütüphaneleri / Memcached nedir? Python Memcached Kullanımı

Memcached nedir? Python Memcached Kullanımı

29.08.2014 22:02:38

Memcached python önbellek yönetimi

Memcached "daemon" servis olarak çalışan bir yazılımdır amacı ise bir veya daha fazla verileri önbellek üzerinde depolamamızı sağlar ve istediğimizde tekrar önbelleğe başvurup kullanabilmemize olanak tanır.

Pyhon üzerinde kullanımı

Memcached Kurulum
        aptitude install memcached
        aptitude install python-memcache


Python Memcached örnek kodu
#!/usr/bin/python
import memcache

servers = ['127.0.0.1:11211', '127.0.0.1:11212']
mmc = memcache.Client(servers, debug=1)

key = mmc.get('key1001')
if not key:
        print("memcache'de deger yok")
        deger = 'deger1001'
        # 30 saniye cache de tut
        mmc.set('key1001', deger, 30)·
else:
        print("memcache de deger var")
        deger = mmc.get('key1001')

print(deger)


Python memcache komutları
Memcache'e kaydedilirken değerler otomatik olarak serileştirilir.

Client(sunucu_listesi)
get(key) -> Değer yoksa None gelir.
set(key, value, ) -> expire süresi boyunca değer saklanır.
0 olursa expire olmaz.
expire süresi 30 günden (30*24*60*60) fazla ise
epoch değeri olarak kabul edilir.
delete(key, ) -> time süresince değer saklanır ve sonra silinir.
Bu süre boyunca değer değiştirilemez.
incr(key, ) -> Değeri value değeri kadar arttırır.
decr(key, ) -> Value verirmezse 1 artar.


Memcached istatistikleri

aptitude install telnet
        telnet 127.0.0.1 11211

                stats

                STAT pid 17110                  -> pid
                STAT uptime 190                 -> Oturum süresi
                STAT time 1321789537            -> Epoch time
                STAT version 1.4.5              -> Sürüm
                STAT pointer_size 32
                STAT rusage_user 0.008000       -> Oturum için toplam user süresi
                STAT rusage_system 0.056003     -> Oturum için toplam sistem süresi
                STAT curr_connections 5         -> Açık bağlantı sayısı
                STAT total_connections 13       -> Oturum için yapılan toplam bağlantı sayısı
                STAT connection_structures 7
                STAT cmd_get 12                 -> Oturum için toplam get komutu sayısı
                STAT cmd_set 2                  -> Oturum için toplam set komutu sayısı
                STAT cmd_flush 0                -> Oturum için toplam flush komutu sayısı
                STAT get_hits 10                -> Oturum için depodan cevaplanan get sayısı
                STAT get_misses 2               -> Oturum için cevaplanamayan get sayısı
                STAT delete_misses 0            -> Oturum için gerçekleştirilen delete sayısı
                STAT delete_hits 0              -> Oturum için key'i olmayan delete sayısı
                STAT incr_misses 0              -> Oturum için key'i olmayan incr sayısı
                STAT incr_hits 5                -> Oturum için gerçekleştirilen incr sayısı
                STAT decr_misses 0              -> Oturum için key'i olmayan decr sayısı
                STAT decr_hits 0                -> Oturum için gerçekleştirilen decr sayısı
                STAT cas_misses 0
                STAT cas_hits 0
                STAT cas_badval 0
                STAT auth_cmds 0
                STAT auth_errors 0
                STAT bytes_read 335             -> Memcached'in ağdan okuduğu veri miktarı
                STAT bytes_written 4305         -> Memcached'in ağa yazdığı veri miktarı
                STAT limit_maxbytes 67108864    -> Memcached'in kaydedebileceği maksimum veri miktarı
                STAT accepting_conns 1
                STAT listen_disabled_num 0
                STAT threads 4
                STAT conn_yields 0
                STAT bytes 60                   -> Kayıtlı değerleri saklamak için kullanılan alan boyutu
                STAT curr_items 1               -> Kayıtlı değer sayısı
                STAT total_items 2              -> Oturum için toplam kaydedilen değer sayısı
                STAT evictions 0                -> Oturum için hafızayı boşaltmak için kaç geçerli değerin silindiği
                STAT reclaimed 0
                END

                stats slabs

                STAT 1:chunk_size 80            -> Her chunk için ayrılan alan miktarı
                STAT 1:chunks_per_page 13107    -> Her sayfadaki chunk sayısı
                STAT 1:total_pages 1            -> Toplam sayfa sayısı
                STAT 1:total_chunks 13107       -> Toplam chunk sayısı
                STAT 1:used_chunks 1            -> Kullanılan chunk sayısı
                STAT 1:free_chunks 0            -> Boş chunk sayısı
                STAT 1:free_chunks_end 13106    -> Son sayfanın sonundaki toplan boş chunk miktarı
                STAT 1:mem_requested 60         -> İhtiyaç duyulan gerçek RAM alanı
                STAT 1:get_hits 10              -> Toplam get sayısı
                STAT 1:cmd_set 2                -> Toplam set sayısı
                STAT 1:delete_hits 0            -> Toplam delete sayısı
                STAT 1:incr_hits 5              -> Toplam incr sayısı
                STAT 1:decr_hits 0              -> Toplam decr sayısı
                STAT 1:cas_hits 0
                STAT 1:cas_badval 0
                STAT active_slabs 1             -> Aktif slabs sayısı
                STAT total_malloced 1048560     -> Slab sayfaları için ayrılan toplam hafıza alanı
                END

                stats items

                STAT items:1:number 1           -> Kayıtlı olan değer sayısı
                STAT items:1:age 1958           -> En eski değerin saniye olarak yaşı
                STAT items:1:evicted 0          -> Alan yaratmak için silinen değer sayısı
                STAT items:1:evicted_nonzero 0  -> Son geçerli değer silme zamanı (nonzero)
                STAT items:1:evicted_time 0     -> Son geçerli değer silme zamanı
                STAT items:1:outofmemory 0      -> Hafıza yetersiz sonucu alan değer sayısı
                STAT items:1:tailrepairs 0
                STAT items:1:reclaimed 0
                END

                stats sizes

                STAT 64 1                       -> (Boyut, adet) çifti
                END

                quit
yazar husonet

Yorumlar

Bu içerik için sizde yorum yapabilirsiniz!
anasayfa | makaleler | haberler | dosyalar | linkler | hakkımızda