让我举一个例子来澄清我的问题:
可以看出,后端需要在试用期满时识别试用期结束。如何跟踪到期日期?通常的做法是什么?
好吧,对于我可以回答的最后一个问题,也许一般的方法是在每次登录之前检查过期并相应地采取行动。另一种可能性就是让一个类似于工作的人在到期结束的确切时间内发生。
哪个更好以及如何处理类似cron的解决方案?
有什么建议吗?
答案 0 :(得分:1)
在大多数情况下,cron
作业更可取。有两个原因:
澄清上面的第二项:假设您要发送一封电子邮件,宣布更改用户帐户(例如隐私政策更新),但您不想将该电子邮件发送给已过期的用户帐户。从数据库中选择所有活动帐户要容易得多,而不是需要检查到期日期。您可能会说,"很容易添加到我的代码",但是:如果您有另一个使用此数据库的系统,或者通过RPC查询系统的系统会发生什么,或者也许你只是在shell中运行并运行一些原始SQL?您突然需要在许多可能的系统(或代码库中的位置)中复制该到期检查代码,并且检查active==True
要简单得多。
有关工作的信息,我还有另一篇来自类似问题的简短stack overflow post。
答案 1 :(得分:0)
最好的方法是在登录期间检查过期时间。这样做的好处是DB上的开销更少,并且不需要外部脚本,触发器,这可以确保更好的可维护代码。