Pracuję nad grą karcianą i jej serwerem. Będzie lobby z wieloma stołami i wieloma graczami. Jedynym problemem jest to, jak mogę zobaczyć, jak może obsłużyć setki równoczesnych użytkowników bez setek równoczesnych użytkowników?
Jak zwykle robi się tego rodzaju rzeczy?
Odpowiedzi:
Dwa słowa: klient bez głowy.
Zasadniczo jest to klient oparty na sztucznej inteligencji, który pominął całą grafikę, dzięki czemu możesz uruchamiać wiele wielokrotności kopii na komputerze, możesz nawet uruchamiać je na serwerach, ponieważ nigdy nie inicjujesz grafiki.
Przede wszystkim ci klienci są przełożonymi odpowiedzialnymi za uruchamianie, monitorowanie i zatrzymywanie wszystkich klientów w celu testowania, rejestrowania i ponownego uruchamiania po awarii klienta.
źródło
Myślę, że martwisz się niewłaściwymi rzeczami Milo. Widzę, że z twoich pozostałych pytań, które planujesz napisać, jest C ++.
Nawet niezbyt dobrze zakodowany serwer napisany w języku skryptowym byłby w stanie obsłużyć 100, jeśli nie 1000 żądań, bez widocznego opóźnienia w grze karcianej.
Tego rodzaju szczegóły techniczne prawdopodobnie nie będą dużym problemem. Jeśli staną się problemem, będzie to tylko dzień lub dwa optymalizacje lub trochę zmiany. Ale dopiero po zakończeniu gry i dopiero po ustaleniu, na czym dokładnie polega problem ...
Pisanie bezgłowego klienta w celu symulacji wielu zastosowań to strata czasu. Skoncentruj się na naprawdę trudnych problemach, takich jak ...
źródło