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