2012-03-09 12 views
1

私たちは財務モデリングを実行するWebサイトを実行しており、memcacheがキャッシュを構築するまでに時間がかかります。たとえば、1週間後にはヒット数は48%になり、使用されるキャッシュは2GB5GBのうち)が割り当てられます。サーバーがクラッシュしたり再起動する必要がある場合、キャッシュを失いたくないので、どこかに保存したいと考えています。memcacheデータをファイルまたはデータベースに保存

Q:memcacheキャッシュの内容を永続的(およびその内容を復元する)に保存するための最良のオプションは何ですか?

memcacheがヒットの%が改善しないという点にまで達していないことはこれまでのところありません。我々はのデータで30%ヒットに素早く到達することを知っています。これは共有コンテンツのキャッシュに相当します。その後、オブジェクトははるかに大きくなり、生成頻度も少なくなります。私たちのムニングラフを見ると、2〜3ヶ月以内にベストヒットの%に達すると言います。 memcacheデータを保存するケースが本当にあると思います。

enter image description here

それはそれは本当に読めないのですようにゆっくりと進化するためFYI私は、ヒット/ミスの%を示すグラフを追加していませんよ。

それとも、ここStackOverflowの上でより多くのヒントを見つけることができます:

+0

どのくらいのRAMをmemcachedに割り当てていますか?それはあなたが言及する完全な2GBですか?キャッシュがいっぱいで、ヒット率が低い場合は、キャッシュ領域が不足している可能性があります。また、memcachedは最も古いエントリをパージしています(有効な場合もあります)。 – bhamby

+0

ファイルシステムまたはBerlkey-DBが良いでしょう。また、Memcacheのような 'Redis'を使うこともできますが、永続ストレージも自動的に処理します。 – kirilloid

+0

@galador:私たちはmemcacheに '5GB'を割り当てました、そして今は' 2GB'を使って '48%'ヒットになっています。 – Max

答えて

1

私は金融でのRedisを使用することをお勧めしていないと思います生産現場では、現時点では不安定です。それは将来の目を維持するためのものです。

CouchBaseは解決策です。

repcached(http://repcached.lab.klab.org/)を使用して、最初のキャッシュがクラッシュした場合でも、すべてのmemcacheデータが残っている場合にmemcacheデーモンを2番目のmemcacheデーモンにレプリケートすることができます。また、このタイプの設定を使用してMemcacheの使用状況をロードバランシングすることもできます。私はこれをかなり長い間使用しており、パフォーマンスは非常に満足しています。

関連する問題