2011-10-25 10 views
1

私はHerokuで動作するSinatraアプリを持っています。Sinatra + Heroku:セッションでデータを4K以上保存する

データのリストを作成するかなり長い実行方法(約1〜3秒)があります。私はこのデータをセッションに保存しています。私のユーザーが再びアクセスする必要があるときに、リストを再生成することを避ける(頻繁に使用する)ようにします。

場合によっては、データが4kを超えています。私はもはやセッションにそれを保存することができないという意味です。

Rack :: Session :: Poolは完璧に動作します。それ以外はherokuと互換性がありません(dynosはメモリを共有しないため)。

誰かがこのデータをどのようにして保存するのがベストかと思いますか?

SELECTはリストの元の世代よりも安価なので、私はそれをSQLデータベースに書き込むことにしました。より良い方法が必要でしょうか?

答えて

0

DBを使いたくないのなら、Memcache - Herokuのようなものは、あなたが使うことができるmemcacheアドオンを持っています。

+0

Memcache through Herokuは、私が期待しているデータの量を考えると、最も費用対効果の高い選択肢のようには見えません。私は現在DBを使用しています。レスポンスタイムは、セッションの30msに比べてDBの約100msです。悪くない!何か良いことがなければ、おそらくDBの使用に固執するでしょう。 – mscccc

関連する問題