tumeks
8.10.2006, 15:14:05
Witam! Mam pewien problem chodzi mi tutaj o najbardziej optymalny wybor żeby dużo nie obciążało maszyny i zajmowało jak najmnije miejsca. Chodiz mi dokłądnie o twozrenie pojedynkow w mojej grze www.knights.pl. Ma polegac to an tym że np. garcz zaplanuje z innym garczem pojedynek o godzinie 16 i chce aby ten pojedynek sie odbył i dane tego pojedynku były zapisane jakos w archiwum żeby garcz mógł zoabczyć pojedynek. Zapisanie wszytkiego do MySQL'a to zabójstwo bazy po dwoch dniach, będzie się wszytko ślimaczyć przy tak dużej ilości garczy. Ma któs może jakiś pomysł jak to inaczej rozwiązać? Do wykonywania skryptu użyje CRON'a, według mnie to najrozsądniejszy wybór.
Z góry dziękuje za pomoc
Pozdrawiam
Przecież nawet te 10^4 rekordów dziennie to dla bazy danych pikuś.
Możesz jeszcze zrobić tak, że w momencie akcji jednego z graczy rozgrywa wszystkie zaległe walki
MatheW
8.10.2006, 16:34:27
Jak boisz sie o baze, a byćmoze masz pojemny sewer to może XML ?
tumeks
8.10.2006, 16:46:34
Chodzi mi dokłądnie o coś takiego:
Wybija godzina 16:00 wykonują się wszytkie pojedynki, i prawie cały kod strony musze załadować do bazy, pojedynki bede archiwizować do 2 dni po jego roztrzygnięciu.
thornag
8.10.2006, 18:12:58
Ja bym to rozwiazal inaczej. Jesli ktos laduje strone to sprawdzam jakie pojedynki sa zalegle i rozgrywam je w takiej kolejnosci w jakiej byly zadeklarowane, kolejna osoba ktora wejdzie na strone dostaje juz zaktualizowane wyniki. Nie trzeba angazowac crona dzieki czemu wszystko masz pod wieksza kontrola. Pozatym jesli 120 uzytkownikow umowi sie na pojedynki od 16 do 17 co minute to bedziesz ustawial 60 cronjobow do tego ? Jak chcesz to zautomatyzowac ? Cron co minute i sprawdza czy cos jest ?
tumeks
8.10.2006, 18:25:15
Chodziło mi o to że CRON będzie sie uaktywniać 3x w ciągu dnia o godz. 12, 16 i 20. i Wtedy by zapisaywał wszytko do bazy o tych godzinach.
thornag
8.10.2006, 19:38:40
To lepiej uruchamiaj skrypt przy odswierznaniu storny, lepiej co chwila male porcje informacji albo wcale niz olbrzymie ilosci CRONem. Jesli nie jest tego jakos strasznie duzo, napiszesz to dobrze i masz umiarkowane odwiedziny, ludziska sie nawet nie spostrzega ze cos sie dzieje.
tumeks
9.10.2006, 15:53:36
Skrypot amm bardzo zoptymalizowany, ponieważ dwa razy pzreglodałem cały kod, aby usprawnic wszyto ile sie tlyko da przy 60 osobach online, z których 40 walczy wykorzystanie procesora jest okolo 0.5 % według mnie nie jest to duzo, więc odpalic 3c crona w ciągu dnia który ma przeliczyć 300 walk to chyba nie będzie duże zadanie dla serwera.
thornag
9.10.2006, 16:29:12
Mimo wszystko nadal uwazam ze CRON nie powinien tego robic. Jesli liczenie bedziesz robil przy kazdym odswierznaiu potencjalny uzytkownik dostanie zawsze najswiezsze informacje, nie musi czekac az sie Cron za robote zabierze
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.