PHP + Laravel + MySQL で Web アプリを作成しています。
システムでは、ユーザーは任意の時間にメール (およびその他の API 呼び出し) をスケジュールできます (WordPress で投稿をスケジュールするのと同じように)。CRON を使用してデータベースを 5 分ごとに検査し、送信すべきメールを見つけて送信し、ステータスを更新できます。
ただし、これは SaaS アプリです。そのため、特定の時間に送信される電子メールの量が急速に増加する可能性があります。CRONスクリプトが実行されるたびに「ロックファイル」を作成して、一度に実行されるインスタンスが1つだけになるようにすることができます。スクリプトの実行が終了すると、ロック ファイルは削除されます。
しかし、データが大きくなる可能性があるため、複数の「ワーカー」を使用して、複数のメッセージを同時に処理する方法が必要です。そのようなキューを管理する既存のソリューションはありますか?