Jak se počítá využití RAM pro účtování
Napsal: pát 19. kvě 2017 16:36:12
Dobrý den,
Před 3 měsíci mi náklady na server narostly o 60% a i přes snahu o optimalizaci dále rostou. Zdá se, že rozdíl se týká účtování využití RAM.
Je obtížné dohledat co se stalo, protože statistiky v administraci vps jsou prakticky nepoužitelné, resp. trvá velmi dlouho než se načtou ty denní. Na načtení každého dne čekám > 2 minuty. Jinde není účtování rozdělitelné na jednotlivé položky (HDD, RAM, atd.).
Na 4smart.cz se mi líbil přístup, že optimalizací a vlastním přičiněním se dalo dosáhnout úspor. Tak to tedy alespoň fungovalo dříve. Tak jsem před pár měsíci optimalizoval svůj poštovní server aby neotvíral cca 8-10 persistentních spojení do DB, ale jen maximálně dvě, které ještě po pár sekundách zavírá. Jediný výsledek je, že i přes to náklady dál na první pohled nesmyslně rostou, i když využití prostředků je objektivně nižší, alespoň podle toho co jsem schopný naměřit přímo ve virtuálu.
Mám tedy několik dotazů:
1) Jak se aktuálně účtuje využití RAM? Co se do toho započítává? Změnilo se něco kolem 9.3.?
Když se podívám na minutové vyúčtování RAM pro dvě časová období, tak tam je typicky:
Leden (a zhruba podobně i celý minulý rok): cca -0.00164 za 5 minut při ceně 0,001041667 za minutu a 100MB, to odpovídá cca 160 MB ram, což cca byla asi celkem odpovídající moje spotřeba paměti běžícími programy tehdy. (3.3. jsem postfix přesunul na využívání DB, náklady skokově vzrostly 9.3. a od té doby rostou a klesají podle toho jak mám nastavený limit)
Začátek května: -0.007 za 5 min, tedy cca za 700MB (měl jsem nastaven limit 1GB ram - náklady najednou 5x vyšší)
Dnes: cca -0.00428 za 5 min, tedy cca za 420MB (stáhnul jsem limit na 640MB), kdežto v ten samý okamžik měřím ve virtuálu:
Což působí, že to měří spotřebu RAM nově včetně využití diskové cache (!). Podle free je využití paměti programy 252 MB ale účtuje se mi ve stejný okamžik podle statistik cca za 450MB.
2) Neustále mi chodí každých pár minut notifikace o nedostatku RAM, přestože na serveru "free -m" ukazuje toto:
Tj. 382 MB volné paměti. Když se započte využitá disková cache, tak 242MB volné paměti, ale to by mělo být irelevantní. Dal jsem free do sekundové smyčky, abych ověřil zda tam něco skokově nevyužívá paměť moc a zdá se že ne. Tu a tam to skočí o 100MB, ale to je prakticky nezachytitelné v sekundových intervalech (zachytil jsem to tak 3x za cca 15 minut měření).
Buď úplně vypnu notifikace o problémech, kvůli nesmyslným hlášením o nedostatku RAM, pak se ale nedozvím ani o jiných problémech. Nebo zvýším limit RAM, ale to stojí peníze i když by nemělo. Dá se s tím něco dělat, aby to bylo rozumnější?
3) Je nové měření paměti zamýšlený a trvalý stav? Pokud ano, pak přejdu jinam, protože 4smart pro mě ztratilo výše uvedenou hlavní výhodu. RAM je největší nákladová položka a s tímhle způsobem účtování včetně systémové cache nemám žádný způsob jak ovlivnit její využití svými programy. Defakto platím za nastavený limit jako jinde a ne za skutečné využití jak se 4smart prezentuje.
Diskovou cache neovlivním a systém se jí snaží vždy vyplnit, takže se většinou blíží limitu využití RAM. Taky nevím proč bych za ní měl platit, když to je něco co nezabírá paměť mým ani cizím programům a je uvolněná okamžitě kdykoliv jiný program paměť potřebuje. Jediné co mohu a co jsem zkusil bylo stáhnout horní limit nastavení RAM, ale pak mi neustále chodí maily o tom jak mám nedostatek ram i když je volných cca 400MB. Jen dnes mám těchhle mailů ve schránce 110.
Před 3 měsíci mi náklady na server narostly o 60% a i přes snahu o optimalizaci dále rostou. Zdá se, že rozdíl se týká účtování využití RAM.
Je obtížné dohledat co se stalo, protože statistiky v administraci vps jsou prakticky nepoužitelné, resp. trvá velmi dlouho než se načtou ty denní. Na načtení každého dne čekám > 2 minuty. Jinde není účtování rozdělitelné na jednotlivé položky (HDD, RAM, atd.).
Na 4smart.cz se mi líbil přístup, že optimalizací a vlastním přičiněním se dalo dosáhnout úspor. Tak to tedy alespoň fungovalo dříve. Tak jsem před pár měsíci optimalizoval svůj poštovní server aby neotvíral cca 8-10 persistentních spojení do DB, ale jen maximálně dvě, které ještě po pár sekundách zavírá. Jediný výsledek je, že i přes to náklady dál na první pohled nesmyslně rostou, i když využití prostředků je objektivně nižší, alespoň podle toho co jsem schopný naměřit přímo ve virtuálu.
Mám tedy několik dotazů:
1) Jak se aktuálně účtuje využití RAM? Co se do toho započítává? Změnilo se něco kolem 9.3.?
Když se podívám na minutové vyúčtování RAM pro dvě časová období, tak tam je typicky:
Leden (a zhruba podobně i celý minulý rok): cca -0.00164 za 5 minut při ceně 0,001041667 za minutu a 100MB, to odpovídá cca 160 MB ram, což cca byla asi celkem odpovídající moje spotřeba paměti běžícími programy tehdy. (3.3. jsem postfix přesunul na využívání DB, náklady skokově vzrostly 9.3. a od té doby rostou a klesají podle toho jak mám nastavený limit)
Začátek května: -0.007 za 5 min, tedy cca za 700MB (měl jsem nastaven limit 1GB ram - náklady najednou 5x vyšší)
Dnes: cca -0.00428 za 5 min, tedy cca za 420MB (stáhnul jsem limit na 640MB), kdežto v ten samý okamžik měřím ve virtuálu:
Kód: Vybrat vše
total used free shared buffers cached
Mem: 640 393 246 55 0 141
-/+ buffers/cache: 252 387
2) Neustále mi chodí každých pár minut notifikace o nedostatku RAM, přestože na serveru "free -m" ukazuje toto:
Kód: Vybrat vše
total used free shared buffers cached
Mem: 640 397 242 55 0 140
-/+ buffers/cache: 257 382
Buď úplně vypnu notifikace o problémech, kvůli nesmyslným hlášením o nedostatku RAM, pak se ale nedozvím ani o jiných problémech. Nebo zvýším limit RAM, ale to stojí peníze i když by nemělo. Dá se s tím něco dělat, aby to bylo rozumnější?
3) Je nové měření paměti zamýšlený a trvalý stav? Pokud ano, pak přejdu jinam, protože 4smart pro mě ztratilo výše uvedenou hlavní výhodu. RAM je největší nákladová položka a s tímhle způsobem účtování včetně systémové cache nemám žádný způsob jak ovlivnit její využití svými programy. Defakto platím za nastavený limit jako jinde a ne za skutečné využití jak se 4smart prezentuje.
Diskovou cache neovlivním a systém se jí snaží vždy vyplnit, takže se většinou blíží limitu využití RAM. Taky nevím proč bych za ní měl platit, když to je něco co nezabírá paměť mým ani cizím programům a je uvolněná okamžitě kdykoliv jiný program paměť potřebuje. Jediné co mohu a co jsem zkusil bylo stáhnout horní limit nastavení RAM, ale pak mi neustále chodí maily o tom jak mám nedostatek ram i když je volných cca 400MB. Jen dnes mám těchhle mailů ve schránce 110.