O Brejk Stats a věcech spjatých
O Brejk Stats a věcech spjatých
Vzhledem k vývoji událostí cítím jistou zodpovědnost se k dění na Brejku vyjádřit, vyjasnit některé nesrovnalosti a především vyvrátit některé fámy, které zde z neznalosti kolují.
Něco málo k historii
Brejk Stats se začali vyvíjet ke konci loňského srpna, kdy jsem měl dost času něco podobného sestrojit, alespoň nějaké zapálení pro Brejk a především zlost, kolik funkcí Brejku chybí. Asi po hodině práce byla aplikace hotová - uměla načítat hráče a každý den zapisovat jejich skilly. Tím velmi zjednodušila sledování hráčů vlastních a především těch cizích. Někteří z vás si totiž ještě pamatují, že asi o týden tomu předcházela ostrá diskuze, ve které lobovat za skrytí skillů cizích týmů, namísto kterých by se zobrazoval jen jakýsi součet. Nebudu zapírat, že aplikace tam vznikla částečně z protestu, nicméně nebyl to důvod jediný. Ten navíc postupem času úplně odpadl a Brejk Stats se začli směřovat čistě ku pomoci hráčům. Je jasné, že i samotné uveřejnění (ještě ten samý den, kdy byla aplikace vytvořena) přineslo další ostrou debatu, kdy především starší hráči, kteří zde tráví mnoho času, nebyly nadšení. Prý to příliš ulehčuje hru ostatním a ztrácejí tak jednu ze svých výhod. Nikdy jsem je nebral vážně, dával jsem je do jednoho pytle s lidmi "print-screen stránky, uložit do wordu obrázek a poslat jako email namísto jednoduchého poslání obrázku". Proč si věci nezjednodušit?
Původně, jak již bylo řešeno, aplikace načítala jen informace o týmu z centrály a seznam hráčů. Postupem času přibyl stadion, zápasy, ligová tabulka (ta byla ke konci zrušena jako přebytečná). Brejk Stats byly především spící aplikací na pozadí, o které vědělo jen pár v diskuzi aktivních lidí plus nějací nováčci, kterým to zjednodušilo hru v začátcích. Na přelomu roku zažila aplikace velké obrození, kdy přibyla funkce stahování jednotlivých zápasů a statistik, možnost přidávat si poznámky k vlastním i cizím hráčů a další zjednodušení sledování hráčů a výsledků.
Po celou dobu provozu bylo stanovisko adminů neutrální - aplikace jim nevadila, nicméně nechtěli ji nijak propagovat. To za předpokladu, že aplikace nepřeroste víc než v pomocníka.
O návštěvnosti
Z počátku BS používalo asi 50 lidí, do prosince číslo vzrostlo na 100, po posledních úpravách dosahovala návštěvnost až 150 lidí denně. Většina lidí načítala svůj tým, svůj B tým a případně nějaké další. Denně se tak načetly (ke konci života) statistiky asi 300 týmů. Díky tomu vznikla celkem unikátní databáze před 350 tisících denních záznamech o hráčích a 200 tisíci zápasovými statistikami (každý hráč, který nastoupil je jeden záznam).
O technologii
Ohledně toho, jak aplikace fungovala vznikaly na Brejku fámy. Je jasné, že většina manažerů podobným věcem vůbec nerozumí, někteří matně tuší, jak to vlastně funguje. Proto mi dovolte především vyvrátit myšlenku, že jsem měl přístup do databáze. Mít přístup do databáze by znamenalo absolutní kontrolu nad Brejkem, proti které by se Hill rozhodně bránil a které by potencionálně mohlo skončit i soudní žalobou.
Řeknu-li to laicky, aplikace (robot) se ve své podstatě choval jako člověk. Robot otevřel několik stránek, stáhl je k sobě na disk a v podstatě metodou kopírování správních políček získával data. Choval se tedy stejně jako manažer, který danou práci dělá ručně, jen mnohem rychleji. Na rozdíl od člověka neměl jen potřebu stahovat obrázky, kdybyste chtěli vědět, co měl k dispozici, klikněte pravým tlačítkem myši a zvolte možnost "zobrazit zdrojový kód".
Zátěž na Brejk
Je jasné, že rychlé "otvírání" několika stránek se muselo nějak projevit i na straně Brejku, které dané stránky musel vygenerovat a robotovi poslat. Proto BS postupem času získávaly mechanismy, jak množství otevřených stránek snížit na minimum. Takovým příkladem byla i nedávná nová funkce "Vynutit update". Do té doby se data stahovala při každém přihlášení na BS, od zavedení vynucení jen při prvním přihlášení během jednoho dne.
Kolik stránek se vlastně otevíralo? Spočítejme si to: pro každý tým se automaticky otevřelo 7 stránek - centrála, tým, stadion, zápasy - liga, zápasy - národní pohár, zápasy - superliga a zápasy mezinárodní pohár. Všimněte si, že se nestahovala sálová kopaná ani přáteláky a turnaje, aby se zátěž minimalizovala. Pouze v případě, že byl odehrán jeden ze čtyř typů zápasů pak BS otevřely ještě jedno okno - report ze zápasu. Můžete si sami zkusit, jak velká či malá zátěž to je, když si na Brejku otevřete těchto 7 či 8 oken. V podstatě je zátěž na jeden tým na BS zanedbatelná. Většina manažerů má týmy dva, takže počet vynásobte dvěma a jsme téměř na výsledném počtu. Poslední, co musíme přičíst je možnost manažera načítat i cizí týmy. Pokud tam aplikace načte denně 300 týmů, znamená to 300 * 8 otevřených oken, nicméně v průběhu 23 hodin mezi koncem a začátkem přepočtu. Aplikace sama od sebe nestahovala žádná data, nikdy se nezapínala sama a veškerý traffic tak pocházel pouze z akcí manažerů, kteří na místo otevírání oken přímo na Brejku otevírali okna prostřednictví robota.
Rád bych doplnil, že robot přistupoval jako nepřihlášený uživatel a nezatěžovat tak server například kontrolou nově příchozí pošty nebo žádostmi o přátelské utkání.
Hluchá místa
Nicméně, nárazově se zátěž zvyšovala ve třech základních případech. Tím prvním byla nedávno spuštěná funkce načítat až 10 týmů najednou. To ve své podstatě znamenalo chvilkové (v trvání asi 8 vteřin) vysoké zatížení pro Brejk (otevřeno v průměru 7,7 stránek na tým, tedy necelých 10 stránek za vteřinu. Zátěž to sice není velká, nicméně nárazová.
Druhým místem, se kterých Hill nemohl být spokojen, bylo spuštění statistik před konce loňské sezóny (po 27. kole, následné znovunačítání po 28. kole). To způsobilo, že BS stahovaly veškeré proběhlé zápasy za danou sezónu, dle mých informací průměrně 34 na tým. Toto se dělo celkem třikrát, 31. 2. a 3. nebo tak nějak. Každý zápas je nové otevření stránky, při přihlášení tak bylo otevřeno hned 40 stránek téměř současně, nicméně pouze jednou, již načetlé zápasy se neotevíraly znovu. Vzhledem k tomu, že tento problém pominul s novou sezónou a Hill BS vypnul až 3. den sezóny nové v "momentárním nasráním", nevidím přímou spojitost.
Největším problémem z mého pohledu, a pravděpodobně i z pohledu Hilla, byly přepočty. Jak víte, během hlavních přepočtů byla aplikace vypnutá od 22.00 do 23.00 (i když by přepočet skončil dřív) a nijak tak neovlivňovala přepočtové výpočty. Opačně tomu bylo v případě futsalu a reprezentace. V momentě, kdy se manažer přihlásit do BS a snažil se stáhnout nová data, robot se zacyklil (data nemohl stáhnout, ale manažera dál nepustil, protože data neexistovala a tak se pokusil znovu o stažení). Jsem si této chyby vědom. Na druhou stranu, netvrdil bych, že během přepočtu by manažeři hromadně chodili na BS stahovat data. Stejně tak, pokud tak někdo učinil, po pár vteřinách zjistil, že tudy cesta nevede a aplikaci ukončil. Dle mých propočtů se takto robot po dobu asi 5 vteřin snažil stahovat rychlostí 14 stránek za vteřinu (+- rychlost internetu daného manažera), tedy přibližně 70 stránek v krátkém úseku. Dovolím si tvrdit, že BS byly vyplé právě kvůli tomuto problému.
O řešení pro externí aplikace a příklady jiných manažerů
Zatímco na Brejku neexistují pořádné přehledy statistik a nějaké oficiálně povolené aplikace, na jiných manažerech jsou tyto přístupy naprosto běžné. Rozdíl je především v tom, že na jiných manažerech nejsou skilly hráčů cizích týmů viditelné ostatním manažerům a každý tak stahuje jen a pouze vlastní tým. Na Sokker.org mají externí aplikace dokonce vyhrazený svůj vlastní kanál, kterých k Sokkeru přistupují, aby příliš nerušili chod hry, na Hattricku se externí aplikace povolují v nastavení hráčského profilu, na FA jsem nestrávil dostatečné množství času, abych mohl referovat. Ideální řešení by tedy bylo vytvořit obdobný prostor pro externí aplikace, čímž by se snížila zátěž.
Druhým řešením by bylo zneviditelnění skillů hráčů pro ostatní týmy a jejich nahrazení jakýmsi součtem, který jsem avizoval již před vytvořením BS. V takovém případě by každý mohl stahovat pouze vlastní tým, sledovat pouze vlastní tým a tím přinést další razantní snížení požadavků.
O přímé spolupráci
Mnoho manažerů mi v diskuzích i poštou vyjádřilo podporu, za kterou vám velmi děkuji, a dokonce navrhovali, abych se přímo účastnil na vývoji Brejku. V tomto momentě je tato možnost vlastně vyloučena z jednoho prostého důvodu - kdo by pustil cizích člověka k tak cenné věci, jako vlastnoručně vybudovaný manažer? Být na Hillově místě, taky bych nikoho nevzal, upřímně. Nicméně, z mé strany nabídka padla a stále platí, pokud by měl Brejk a Hill, zájem, rád strávím svůj čas vývojem nových hraček přímo v Brejku.
Něco o mně
Myslím si tak, že by bylo záhodno napsat něco o sobě, abyste věděli, s kým máte tu čest.
Je mi 20. Programování webových stránek je pro mě spíše jen koníčkem, kterému se věnuju už deset let, a příliš se nevidím jako člověka, který by takto strávil svůj život. Proto také nestuduju nic podobného a souvisejícího s počítači - jsem na právech a na ekonomce. Programování vidím spíš jako záložní plán.
Pár sdělení na závěr
Rád bych vás tímto článkem i poprosil, abyste v žádném případě adminy nespamovali a nevyvíjeli žádný tlak na obnovení BS či něco podobného, mejte na paměti, že Brejk patří Hillovi, ne nám.
V současné době přemýšlím, zda BS obnovím alespoň pro pasivní přístup k již existujícím datům, tedy bez stahování nových, jelikož mnoho z vás mě o to prosilo.
V diskuzi vám s radostí odpovím na vaše dotazy, abychom tyto věci nemuseli řešit přes poštu, které mi v posledních dnech chodí docela dost
Goues, 11. ledna
|
|
Autor: Goues![]() |
