1

私のRails3アプリケーションでは、ユーザーには小さなパッケージが提供され、20分などの短い時間しか保持できません。has_manyパッケージの所有権は、ユーザーパッケージの関係を持つテーブルに格納されます。20分が経過すると、パッケージは所有権を別のユーザーに譲渡する必要があります。これは、このプロセスが繰り返されるときに、関連するテーブルを更新し、別の時間ベースのイベントを再度追加することを意味します。

さらに、20分間隔ごとの開始時間はランダムであり、ユーザーが開始するプロセスです。

これは、cron、delayed_jobなどの時間ベースのイベントに対する一般的なソリューションのいずれかを使用して実行できますか?多くのパッケージが渡された場合、これによりイベントのキューが大量に発生することになると思います。

1つの追加の注意-20分の所有権譲渡プロセスも中断される可能性があります。これは、これらの動的ジョブも個別にキャンセルできることも考慮に入れる必要があることを意味します。

4

2 に答える 2

2

はい。delayd_jobsidekiq
の 両方にスケジューラが組み込まれており、resqueにはそのためのプラグインがあります。これらのシステムでは非常に簡単です。

于 2013-03-24T09:47:35.497 に答える
1

いつでもgemは、Railsアプリからcronタスクを構成するのに最適です。

https://github.com/javan/whenever

于 2013-03-24T10:47:53.943 に答える