@fomenko_alexandr

Как с периодичностью обновлять данные в фоне?

Привет мастера.
Подскажите пожалуйста, как бы вы поступили, в ситуации, подобной моей.
У меня есть игра, в этой игре пользователь зарабатывает разные вещи, которые он может сразу, после добычи, продать, получив виртуальную валюту, либо может уничтожить её, получив возможность отхватить бонус. И иногда с ними ничего не делают, и вещи просто висят в неопределенном статусе. Потому было принято по истечению часа, обновлять статус этой вещи на проданную, и начислять игровую валюту. Подскажите пожалуйста, как можно сделать такое?
Первое, что пришло в голову, так это написать скрипт, который будет исполняться кроном, он будет извлекать из бд записи с определенным статусом и временем, и обновлять всю информацию.
Я тут хотел спросить, крон, сильно грузит сервер? И если я буду выполнять каждую минуту запуск скрипта, это нормально? Или как часто, по вашему, желательно выполнять запуск?

Буду очень благодарен за подсказки;)
  • Вопрос задан
  • 148 просмотров
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Как и везде, есть несколько путей, например:
* Крон каждые 10 минут, это будет не большая нагрузка и не думаю что игровая механика поломается если вещь продастся не через час, а через час и 5 минут.
* Не делать крон, а при очередном запросе списка вещей проверять на наличие "устаревших" шмоток и автоматически менять на деньги. Тогда нагрузка будет более выборочной, "размазанной" во времени, + у вас все равно будет запрос к шмотке, тут ее и обрабатывать, сэкономите кучу запросов и ресурсов.
Ответ написан
Комментировать
Hakkunamatata
@Hakkunamatata
Зефирный-человек
Cron - нормально. Сам он ничего не грузит, всё зависит от запускаемого скрипта.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы