2016-12-19 2 views
0

Я хотел бы начать новый проект с использованием атрибутов, основанных на времени, но я хочу быть уверенным в лучшем методе для этого. В принципе, у меня есть два основных вопроса (для упрощения, давайте использовать словарь RPG-ish)Лучшее время/продолжительность драгоценных камней для рельсов 5

Прежде всего, каждый пользователь имеет атрибут целочисленного значения gold_coins. Я бы хотел периодически увеличивать эту сумму. Сначала я подумал о том, чтобы использовать отложенные задания, но просматривая SO, кажется, что это плохо, потому что ответили here

Во-вторых, пользователь может производить устройства. Каждому unit требуется определенное количество времени, которое должно быть определено, определяемое его атрибутом production_time. До сих пор я думал о создании модели Production, создавая новую при каждом создании единицы. Производство имеет start_datetime и end_datetime, рассчитанное с использованием устройства production time. Мой вопрос в том, как я могу отслеживать прошедшее время, так что, когда производство закончится, он начнет работу по сопоставлению (опять же, отложенные задания, казалось, идеально вписывались, но, похоже, они не особенно ценятся среди разработчиков).

ответ

0

Не с замедленной работой, но я предлагаю, чтобы полагаться на время/интервальный механизм уровня ОС для этого, например, хрон рабочих мест, OS конкретного планирования двигателей и т.д.

Вы можете легко написать задачу грабель с вашим бизнес-логику и вызов этой задачи из CRON. Это сделает вашу общую логику развязанной на хорошем уровне.

Кроме того, системы планирования на системном уровне легче настраивать и обслуживать.

Смежные вопросы