我有一个在 LAMP 堆栈上运行的应用程序。在USER模型中 在订阅截止日期到期后,我需要设置用户的当前
订阅默认或免费订阅。
所以我需要一个后台进程,它总是会检查用户订阅截止日期的到期时间并设置为默认订阅。
是否还有其他有效且易于管理的解决方案来运行后台流程来更新用户的数据?
应用程序环境:
CakePHP中,Redis的,MariaDB的
如果这个问题不足以描述我的问题,请编辑:(
答案 0 :(得分:0)
一般来说,关于重复事件的问题, 如果此事件在数据库中发生更改以及发送电子邮件或停止某些服务或连接到远程资源等其他操作,则必须使用cron作业
但如果此事件仅与数据库相关,那么您可以创建定期事件,例如the following link
答案 1 :(得分:0)
在PHP的情况下,没有那么多开箱即用的解决方案。其中一个是rabbitmq-delayed-sample。它建立在rabbitmq消息传递系统之上。
用法示例:
$container->get('delayed_producer')->delayedPublish(5000, $messageBody, '');
其中5000是该作业执行后的有效期。您可以将此类代码放入新用户创建位置。