Skip to content

Go test server for Central University scholarship contest

Notifications You must be signed in to change notification settings

etteryand0/matchmaking-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Сервер для тестинга решений к конкурсу на стипендию Центрального Университета

Поставьте звёздочку этому репозиторию, буду благодарен)

Этот сервер предназначен для тестирования своих решений к конкурсу на стипендию ЦУ

Как пользоваться

Легче всего запустить Docker контейер с docker-compose up -d

Но если у вас установлен Go на компьютере, и вы хотите локально запустить сервер, сначала нужно установить зависимости go mod download && go mod verify. Затем можете запускать программу go run .

После запуска Docker контейнера, запросы на сервер можно отправлять на localhost:8000

Документация

Открыть документацию

Известные проблемы

  1. Сервер не следит за пользователями, можно повторно прикреплять одного и того же юзера к нескольким матчам
  2. Так как сервер не следит за пользователями, баллы за время ожидания не копятся между эпохами. Если протаскать пользователя до последней эпохи, сервер засчитает время, будто юзера в своей же эпохе распределили
  3. Результаты по запросу /matchmaking/result нельзя получить по истечению срока Cookie или его потере

Для решения проблемы с отслеживаниями пользователей в базе данных уже есть таблица epoches в стиле linked list, что бы можно было суммировать отрезки времени между эпохами. Просто не успел в коде это применить...

В файле models/db.go вы можете заменить базу данных с postgres на sqlite, если хотите способ попроще для тепстирования базы данных.

P.S.

Написание этого сервера было классным опытом, давно так сильно чем-то не увлекался. Спасибо!

Контакты

Сергин Сергей tg:@etteryand

Я в офисе потратил час на этот скрипт

About

Go test server for Central University scholarship contest

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published