Nedavno sam izradio šahovski stroj pomoću javascripta ( https://github.com/Ram-the-coder/ai-chess-engine-v2). Pokreće se u pregledniku - zbog toga kada šahovski stroj računa najbolji potez, web stranica ne reagira. Pa sam pomislio ako premjestim obradu na poslužitelj, onda mogu ukloniti neodzivnost. Ali ako to učinim, onda moram održavati stanje igre za svakog klijenta poslužitelja. Mislim da je veličina stanja igre u megabajtima jer uključuje hash tablice.
Još jedan problem s kojim sam se suočio u održavanju obrade na strani klijenta je taj što brzina obrade postaje ovisna o uređaju klijenta .
Kako se obično grade takvi internetski šahovski motori?
Mislim da pohranjivanje stanja igre u memoriju nije dobro jer poslužitelj mora služiti mnogim klijentima. Možda bi spremanje u bazu podataka na istom poslužitelju moglo funkcionirati ...
Ako koristim arhitekturu klijent-poslužitelj, neće li mi biti ograničeno posluživanje jednog zahtjeva klijenta po poslužitelju odjednom? Ako je odgovor da, kako mrežni šahovski motori mogu istovremeno služiti neograničenim klijentima?