2012-04-13 2 views
3

私は複数のDBクエリを実行し、およそ500ms-1,000msかかる(EC2が呼び出された場合、指定されたジャンクションで私に与えてくれると判断する程度に依存します)。ユーザーは1,000ms以上のものを望んでいます。私がやっていることは、要求パラメータを取って、ディスクに書き込まずにredisキューに詰め込み、ディスク書き込みを行う非同期キューでジョブを実行することです。このようなことは、実際には普通に起こりますか?私はそれを提案するのは狂った?最初にredisに書き込んでWebサービスを高速化した後にディスクをスピードアップしますか?

+0

これは本質的に非同期バックグラウンド処理を行うだけの場合は、[Resque](https://github.com/defunkt/resque)を参照してください。 –

答えて

3

Redisが一定の間隔でディスクに永続している限り、これは機能するはずです。データを失う可能性があるシナリオの数を制限したいとします。ほとんどの場合、Redisの十分に積極的な持続スケジュールが有効です。

アクションが受信され、処理されていることをユーザーに直ちにフィードバックしてください。人々がアップロードを再度試みるように促すかもしれないようになるまで少し時間がかかります。

関連する問題