NodeJS React Хранение кликов react js

Klentovskiy

Известный
Автор темы
7
0
Хочу сделать свой первый проект на react js, за идею взял игру кликер, по типу ноткоина и т.д, и возник следующий вопрос как можно всё это корректно сохранять в базу данных, пока ещё не определился какую буду использовать скорее всего mysql, но не суть, меня больше интересует тот момент как лучше это всё обрабатывать и сохранять клики в базу данных, ведь 1 клик = 1 монета, и как по мне не корректно постоянно делать запрос к базе данных после каждого клика, как это можно сделать более корректно и сократить запросы к базе данных?
 

yoonost

Известный
53
3
Самый простой вариант это создать локальную переменную и отправлять на бэкенд то количество которое нужно прибавлять с промежутком 5-10 секунд что бы не насиловать бекенд но и конечно не стоит забывать про "безопасность" что бы рандом чел не прибавил себе 9999999 маны
 
Последнее редактирование:

strcmp

Известный
270
117
ты можешь делать клики асинхронно и сохранять их локально а потом отправлять на сервер пакетом раз в несколько секунд или после набора определенного количества кликов. Такой подход снизит нагрузку на базу данных и уменьшит количество запросов
 

yoonost

Известный
53
3
ты можешь делать клики асинхронно и сохранять их локально а потом отправлять на сервер пакетом раз в несколько секунд или после набора определенного количества кликов. Такой подход снизит нагрузку на базу данных и уменьшит количество запросов
ты типо это, спиздил мой текст?
 
  • Клоун
Реакции: strcmp

strcmp

Известный
270
117
так по факту же, ты просто взял мой текст переформулировал под себя и все. мне то все равно но интересно же
если бы тебе было все равно, ты бы не писал и не плакал что твой очень конструктивный ответ скопировали 😢
 

yoonost

Известный
53
3
Самый простой вариант это создать локальную переменную и отправлять на бэкенд то количество которое нужно прибавлять с промежутком 5-10 секунд что бы не насиловать бекенд но и конечно не стоит забывать про "безопасность" что бы рандом чел не прибавил себе 9999999 маны
Еще вариант но это более сложней это использовать сокеты которые открывают одно соединение и не закрывают его на протяжении всей сессии. Стоит учесть что каждое соединение кушает ресурсы, но в этом есть один плюс что ты не сможешь просто так получить информацию которую он передает и так же то что передача быстрее обычного HTTP/HTTPS соединения раз в 50 из-за того что не нужно создавать новый запрос