PHP'nin memcache için sıkıştırma nedir?

2 Cevap php

PHP.net ben Memcache::set işlevi bakıyorum ve sıkıştırma kullanmak için bu isteğe bayrağı vardır ...

Use MEMCACHE_COMPRESSED to store the item compressed (uses zlib).

$memcache_obj->set('var_key',
                   'some really big variable',
                    MEMCACHE_COMPRESSED,
                    50);

Ben merak ediyorum, sadece ne daha az yer kullanarak, bu yararı olurdu? Bu süreci yavaşlatmak olacak gibi görünüyor?

2 Cevap

Ağınıza ve sunucular üzerindeki yükü bağlı olarak, ağ üzerinden memcached sunuculara ve daha (not compressed) veri aktarımı daha hızlı olabilir - Sıkıştırma ve PHP çalıştıran sunucularda açılırken hızlı olabilir .

Verilerinizi sıkıştırarak da memcached sunucularda az bellek kullanarak anlamına gelir.

Sık sık olduğu gibi, CPU, ağ ve RAM arasında seçim yapmak zorunda - ve karar edebilmek için, göz içine sunucularını ve ağ, onların yükünü ve mevcut kaynakları almak zorunda.

Ne özel durumda "quickiest" çözüm olacak? Sadece söyleyebilirim ... Ve bilmek tek yolu "gerçek koşullarda" hem de çözümler test ederek muhtemelen.


Also, memcached entries cannot be bigger than 1 MB ; I suppose, in some ways, that compression can help put entries a bit bigger than 1 MB (when not compressed yet) into memcached.

Haklısın, o taking up less space veya eating up more CPU cycles arasında bir ticaret var.

Sen de senin, RAM veya CPU daha değerli olan bir kaynak tercih ettik.