我正在用 PHP + Laravel + MySQL 编写一个网络应用程序。
在系统中,用户可以在任意时间安排电子邮件(和其他 API 调用)(很像您在 WordPress 中安排帖子的方式)。我可以使用 CRON 每 5 分钟左右检查一次数据库,以查找应该发送的电子邮件、发送它们并更新它们的状态。
但是,这是一个 SaaS 应用程序。因此,在特定时间要发送的电子邮件数量会迅速增长。每次 CRON 脚本运行时,我都可以创建一个“锁定文件”,以便一次只运行一个实例。脚本执行完成后,锁定文件将被删除。
但是对于潜在的大数据,我想要一种同时处理多条消息的方法,可能会使用多个“工人”。是否有任何现有的解决方案来管理这样的队列?