我目前有一个计费系统,其中每晚脚本检查从脚本运行之日起一个月到期的订阅,例如:
Subscription.where(:expires => (Date.today + 30.days)).find_each do |sub|
unless sub.month_reminder_sent
reminder.total += 1
reminder.subscriptions << sub
BillingMailer.monthly_reminder(sub.user).deliver
sub.month_reminder_sent = true
end
我还有另一套要在到期前一周运行。如果未续订,则子会自动过期(我只是检查sub.expiry_date
尚未通过以检查子是否处于活动状态)。
如果服务器停机,我需要采取哪些应急措施?或者脚本没有运行或失败?(因此缺少一些记录。)
以上甚至是进行计费的最佳方式吗?还是我不必要地担心,以上就足够了?