Autor Zpráva
matak
Profil
mam asi dvacet údajů, jedna se vždy o trojici, klíč, klíč a hodnota, tato hodnota se, ale neustále navyšuje, je to číslo, které neustále roste, mysql update se mi zdá hrozně náročný, navyšovat až po nějakém počtu mi přijde také blbé, protože kdykoli se může něco stát a kdyby navýšení probíhalo po stovkách např. tak než se dosáhne stovky, může se proces seknout, spadnout server nebo cokoli co zapřičiní že se navýšení neprovede,
jak by jste tohle řešili?
juriad
Profil
Popiš o co se jedná. Pokud je to počet kliknutí na odkaz, tak se pár kliknutí klidně může ztratit a nikomu to vadit nebude. Pokud je to napřiklad stav účtu, tak tam doporučuji opatrnost.

Co znamená „mysql update se mi zdá hrozně náročný“? Máš to nějak změřené nebo jinak podložené čísly?
matak
Profil
je horší to vysvětlit ale zjednodušeně, jsou nějací roboti, stoje, které nějak komunikují se serverem, a jediné co ten server dělá je, kolikrát ten stroj provedl nějakou operaci, nicméně těch operací může být za minutu desítky tisíc, a to nemusím měřit ale provést za minutu desítky tisíc updatu je problém, který mi zabije mašinu, která není určená jen na to aby počítala takovou statistiku, a statistika je to bohužel důležitá, ne nijak kriticky, ale každý špatně spočítaný bod je otázka škody ve výši třeba jedné koruny, takže pokud bude chybovost každý den pár korun tak ok, ale když se ztratí statistika za 500 bodů tak problém
Alphard
Profil
Stále máme málo informací, vaše čísla naznačují stovky přístupů za sekundu; od jednoho robota, nebo od všech dohromady?
- Jak probíhá komunikace? Klasické http požadavky, nebo něco trvalejšího? Pokud je tam nějaké socketové připojení, lze relativně snadno držet v paměti pár posledních hodnot a nahrávat dávkově (servery vám snad nepadají jak jablka na podzim, aby to byl velký problém).
- Updaty mají probíhat paralelně? Tam si budou při updatech vzájemně kolidovat zámky. Lepší by možná bylo nové záznamy vkládat (insert) a pak až třeba cronem zpracovávat a staré mazat.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: