Thingデータベースに挿入されたそれぞれにarchive属性があります。0 に設定すると、何も起こりません。ただし、そうでない場合は、キューに追加して処理する必要があります。
大量のリクエストが送信されて処理されるため、アーカイブにThingは 3 ~ 30 秒かかります。だから私の質問は、私はそうするのですか:
- a
Thingがarchive1 に設定されたら、Rake タスクによって頻繁に (15 分ごとに) 処理されるようにキューに入れ、archive属性を 2 に設定して、再度処理されないようにします。 - で
do_archiveメソッドを作成しThing、保存するときに を実行し、そのすべてを処理self.delay.do_archiveさせてくださいdelayed_job
Things処理する必要のないものもあれば、アーカイブは時間的に重要なものではありません。私の直感では、delayed_job毎日真夜中にスクリプトを実行するのではなく、時間に固有ではなく、キューを通過するだけなので、おそらくより良いアイデアです。