memcached wasted?
Sziasztok!
Szeretném kérni a tanácsotokat. Van egy debian 8.8 -as szerverem, amin fut egy Apache 2.4 + php7. Problémám, hogy felpakoltam a memcached -et (d-vel), s hozzá egy phpmemcachedadmin -t, ami számomra furán viselkedik.
Amit látok a felületen, hogy a Cache Size az következő módon oszlik meg:
Free: 71.9%
Used: 0.0%
Wasted 28.1%
Az normális, hogy nincs használatban semmi, viszont az "elpazarolt" memória 28.1%?
Előre is köszönöm a válaszokat.
Üdv
■ Szeretném kérni a tanácsotokat. Van egy debian 8.8 -as szerverem, amin fut egy Apache 2.4 + php7. Problémám, hogy felpakoltam a memcached -et (d-vel), s hozzá egy phpmemcachedadmin -t, ami számomra furán viselkedik.
Amit látok a felületen, hogy a Cache Size az következő módon oszlik meg:
Free: 71.9%
Used: 0.0%
Wasted 28.1%
Az normális, hogy nincs használatban semmi, viszont az "elpazarolt" memória 28.1%?
Előre is köszönöm a válaszokat.
Üdv
Memcached
Mire használjátok a memcached-et?
Memcached használat
Első
Kavarodás
Most az alábbi paraméterekkel indítom, hogy minél kevesebb legyen a wasted memory:
-n 5
-f 1.05
-I 512k
A wasted azt jelenti, hogy
A Gábor által küldött linkből, meg ebből ki lehet totózni a részleteket:
Memcached Doesn't Work the Way You Think It Does
A memcached az oprendszer slab allocatorát használja, amit arra találtak ki, hogy magas frekvenciával lehessen objecteket allokálni/felszabadítani, nagyon gyorsan. Az elsődleges felhasználási területe a kernel belső struktúrái mögött lévő memória kezelése. Mivel a memória allokáció elég költséges művelet, ezt úgy lehet elérni, hogy előre lefoglalnak memóriát. Ezt a preallokált memóriát felosztják fix méretű chunkokra, és ezeket a fix méretű chunkokat adják oda a "poolból"/teszik vissza bele, amikor allokál/felszabadít a programod. Ez baromi gyors memóriakezelést biztosít, de adott esetben nem optimális kihasználtság mellett. Ezt látod most.
Mivel a memcached mögött ez az slab allocator van + LRU eviction policyt használ, arra is fel lehet készülni, hogy ha elég nagy frekvenciával próbálsz belerámolni nagyjából ugyanakkora objecteket (ugyanabba az slab class-ba mennek), akkor elég magas eviction és cache miss rate-et tapasztalhatsz, meg ennek következtében teljesítményromlást.
A memory allocatoroknak kb mindig a sebesség, kihasználtság, töredezettség háromszögben kell valamilyen optimumot találjanak. Ezesetben itt a sebesség a fő szempont. Emiatt jogos Gábor kérdése, hogy mire akarjátok használni, tényleg ez-e a fő szempontotok. Persze ha van memóriátok, és nem hajtjátok nagyon, akkor ezekből valószínűleg kevés problémát fogtok érzékelni. Nézzétek viszont meg janoszen cikkét a session mentes weboldalakról, van még más csapda is :)
Emiatt jogos Gábor kérdése,
Journey to the centre of memcached
Kereső