- Серверная часть
Задача:
Необходимо реализовать простую игру "орёл-решка":
Пользователь начинает играть имея на счету 100 жетонов, ставя любое количество жетонов он может бросать монету на один из вариантов исходов. Вероятность выпадения 1/2, а выигрыш определяется по формуле WIN=BET*1.9, где WIN - выигрыш, BET - ставка. Например, если поставлено 10 жетонов на орла и он выпал, то игрок получает назад свои 10 жетонов плюс 9 выигранных. Игра заканчивается, когда у игрока закончатся жетоны. На сервере необходимо хранить историю игр (достаточно хранения в оперативной памяти).
Замечание:
-
Серверная реализация должна быть дружественна для будущих расширений.
-
В качестве коммуникаций необходимо использовать Socket соединение. Протокол передачи данных значения не имеет.
-
Должна обеспечиваться одновременная игра нескольких пользователей.
-
Реализация может быть любой, необходима только описанная функциональность.
-
Клиентская часть
Задача:
В качестве клиента должен выступать стресс-тест, эмулирующий игровой процесс.
Необходимо поддерживать следующие входные параметры для стресс-теста:
• количество одновременно играющих пользователей • интервал между обращениями к серверной стороне одного пользователя • количество обращений к игровому серверу одного пользователя
Результат работы стресс-теста должен быть представлен в виде таблицы:
Пользователь | Успешные запросы | Неуспешные запросы | Среднее время запроса
Примечание: неуспешным считается запрос, на который не был получен ответ (по любой причине).
Замечание:
- Реализация может быть любой, необходима только описанная функциональность.