@naruto3333

Как организовать викторину с таймерами на websocket на сервере?

я хочу написать викторину nodejs. на клиенте пользователи подключаются по websocket.io к серверу. викторина у меня работает так, создается раунд на 10 вопросов в который попадают два пользователя. на каждый вопрос дается минута, через минуту он сменяется на другой, или сменяется как кто-то из пользователей ответит на вопрос. после 10 вопросов считаются очки и признается победитель.

Я не понимаю как ответить себе на вопросы:
1) как создать счетчик времени на сервере? я понимаю что есть setinterval, но этот счетчик будет на весь сервер, а на нем может быть 20 викторин с 40 игроками например. не понимаю, мне надо создать 20 счетчиков? или 1 счетчик смотрит, не закончился ли вопрос в каждой 20 викторине? и как технически это написать, именно код?? я не могу понять
2) если я буду хранить ответы на вопросы в памяти сервера, а толко после окончания викторины записывать данные в бд, то как мне их хранить? в json объекте? или мне нужно внешнее хранилище и почему?
3) как физически выглядит сервер, могу ли я просто в одном потоке все викторины держать? или надо что-то сложное делать, кластер / воркеры, упускаю ли я какой-то аспект?
  • Вопрос задан
  • 275 просмотров
Решения вопроса 1
@naruto3333 Автор вопроса
В комментариях Роман ответил на первый вопрос
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы