問題タブ [distributed-caching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
418 参照

java - 一般知識の質問: ネットワーク アクセス時間、キャッシュ アクセス時間、ディスク アクセス時間

クライアント サーバー ベースの分散ファイル システムのシミュレーターを作成しました。平均ブロック アクセス時間を計算するには、次のようにします。

  1. ローカル キャッシュ アクセス時間
  2. クライアントからクライアントへのキャッシュ アクセス時間 (同一ネットワーク)
  3. クライアントからサーバーへのキャッシュ アクセス時間 (異なるネットワーク)
  4. クライアントからディスクへのアクセス時間

ブロックサイズが64MBの場合...

誰でもおおよその時間を教えてもらえますか...それを証明するリンクをいただければ幸いです...

ありがとう。

0 投票する
2 に答える
507 参照

caching - Windows での少量のデータ用の分散およびレプリケートされたデータ ストレージ

キャッシュの問題に対する適切な解決策を探しています。次のように、Web サーバーのクラスター間で比較的少量のデータ (おそらく数十 GB) を分散させたいと考えています。

  1. データはすべてのノードに複製されます
  2. データは永続的です
  3. ローカルでデータにアクセスできる

キャッシング ソリューションを選択する動機は、現在、SQL Server データベースに単一障害点があることです。残念ながら、このデータベースのフェールオーバー クラスターをセットアップできません。すでに Memcached をかなりの範囲で使用していますが、Memcached ノードがダウンした場合に突然大量のキャッシュ ミスが発生し、1 つのエンドポイントに対して大量のリクエストが発生するという問題を回避したいと考えています。

代わりに、結果として生じる負荷が分散されるように、各 Web サーバー ノードにローカル永続キャッシュを配置することをお勧めします。検索が行われると、次を通過します。

  1. Memcached でデータを確認します。それがなければ...
  2. ローカル永続ストレージ内のデータを確認します。それがなければ...
  3. データベースからデータを取得します。

データが変更されると、両方のキャッシュ レイヤーでキャッシュ キーが無効になります。

私たちは多くの潜在的な解決策を検討してきましたが、どれも私たちが必要としているものと正確に一致していないようです:

CouchDB

これはかなり近いです。キャッシュしたいデータ モデルは非常にドキュメント指向です。ただし、その複製モデルは、まさに私たちが探しているものではありません。レプリケーションは、ノード間の永続的な関係ではなく、実行する必要があるアクションのように思えます。連続レプリケーションをセットアップできますが、これは再起動間で保持されません。

カサンドラ

このソリューションは、主に大規模なストレージ要件を持つユーザー向けのようです. 大量のユーザーがいますが、データは少量です。Cassandra はn個のフェイルオーバー ノードをサポートできるように見えますが、ノード間の 100% のレプリケーションは意図したものではないようです。代わりに、配布のみを対象としているようです。

さん

魅力的なアイデアの 1 つは、SAN または同様のタイプのアプライアンスに多数のファイルを格納できるというものです。私は以前にこれらを使用したことはありませんが、これはまだ単一障害点になるようです。SAN がダウンした場合、すべてのキャッシュ ミスについて突然データベースにアクセスすることになります。

DFS レプリケーション

簡単なGoogle検索でこれが明らかになりました。私たちが望むことをしているようです。レプリケーション クラスタ内のすべてのノード間でファイルを同期します。しかし、マーケティングのテキストを見ると、ドキュメントが別のオフィスの場所に確実にコピーされるようにするためのシステムのように見えます。また、ファイル数の最大値などの制限があり、うまく機能しません。

私たちと同様の要件があり、ニーズを満たす優れたソリューションを見つけた人はいますか?

0 投票する
0 に答える
371 参照

java - Ehcache Distributed RMI Transfers は、同期のたびに WEB-INF/lib の下にある JAR のリストを転送します

Hibernate 2nd を使用する Web アプリケーションをセットアップしました。http://ehcache.org/documentation/distributed_caching_with_rmi.htmlの指示に従ってキャッシュと Ehcache をレベルアップします。

Web アプリケーションは、自動ピア検出を使用して、異なるネットワーク ノードの 2 つの異なる Tomcat インスタンスにデプロイされます。どちらの Tomcat にもまったく同じ WAR がデプロイされています。

WEB-INF/lib フォルダーと WEB-INF/classes フォルダーは同じで、キャッシュされたエンティティ クラスには serialVersionUID フィールドがありますが、Tomcat の security.policy をオーバーライドし、リモート クラスの読み込み用にセキュリティ マネージャーを有効にする必要がありました。

分散キャッシュは正常に動作しているようですが、すべての同期イベントで、ngrep でスニッフィングすると、この形式のメッセージが 3 つまたは 4 つ表示されます。

これらのフレームははるかに長く、基本的に WAR WEB-INF/lib 内のすべての JAR ファイルをリストします。これにより、ネットワークの帯域幅が大量に浪費されています。

誰かが私が間違っているかもしれないことに光を当てることができますか? 両方の Web アプリケーションが同じクラスにアクセスできるため、リモート クラスをロードする必要はないと思いますが、それなしでは動作させることができませんでした。どちらも同じシリアル バージョン フィールドを持つ同じ JAR を持っていますが。私は java.rmi.codebase プロパティを設定しようとしましたが、私が読んだほとんどの例はアプレットとブラウザ内 JVM に関連しているため、どの値を設定すればよいかよくわかりません。

合理的な回避策は、キャッシュ クラスタ内のすべての同期イベント メッセージを肥大化させている迷惑な JAR ファイルのリストを取り除くことです。

前もって感謝します、

YJ

0 投票する
1 に答える
2999 参照

caching - Websphere のキャッシュ エントリを期限切れにしないようにする方法

複数のアプリケーションで共有される Web 球体にキャッシュを作成しました。作成したキャッシュに 1 つのエントリを作成して、有効期限が切れないようにしたいと考えていました。どうすれば作れますか?

よろしくお願いいたします。

晴れ。

0 投票する
2 に答える
1429 参照

erlang - erlang:分散ハッシュテーブル?

Erlangに分散ハッシュテーブルの実装はありますか?Webを検索して、いくつかの研究論文を見つけましたが、成熟した実装は見つかりませんでした。

0 投票する
1 に答える
596 参照

asp.net-mvc - マルチサーバー環境でSyscacheをnhibernateの第2レベルキャッシュとして使用する際に問題はありますか?

単一のWebサーバー環境からマルチWebサーバー環境に移行したばかりで、過去にnhibernateとsyscacheの第2レベルのキャッシュを使用していました。

分散型のnhibernateの第2レベルのキャッシングソリューション(memcache、velocityなど)に移行する必要があることはわかっていますが、(さまざまな理由から)その移行には少し時間がかかります。

私の現在の状態(今のところマルチWebサーバー環境でSyscacheレベル2キャッシュを使用している)について特に心配する必要があることはありますか、それとも分散ソリューションほどパフォーマンスが良くないことはありますか(基本的に各Webサーバーのローカル並列キャッシュとサーバー間の集中キャッシュ)。

私は基本的に、これがこのセットアップに問題があるのか​​、それとも可能な限り速くないのかを理解しようとしています。

0 投票する
6 に答える
1821 参照

sql-server - 分散型第2レベルのキャッシュと、データベースのチューニングに重点を置くことの長所と短所は何ですか

nhibernateと2次キャッシュを使用するWebサイトがあります。マルチWebサーバー環境(ロードバランサーが前面にある)に移行するときに、1人のユーザーが第2レベルのキャッシュをオフにしたいと考えているため、議論が交わされています。

1つの議論は、第2レベルのキャッシュを取り除き、Dbの最適化と調整に集中することです。もう1つの議論は、分散キャッシュを第2レベルのキャッシュとして展開することです。

DBチューニングと分散キャッシュ(関連する作業、コスト、複雑さなどのファクタリング)について、賛否両論の人々の意見を聞きたいと思います。

0 投票する
1 に答える
480 参照

caching - Fluent NHibernate を使用した Ms-Velocity

プロジェクトで流暢な nHibernate を使用しています。流暢な nHibernate で ms 速度を適用したいのですが、流暢な nHibernate で速度を使用した人はいますか? はいの場合、このことをどのように開始しますか?

私はこれについてGoogleを持っていますが、良いものは見つかりませんでした..

誰でも構成のサンプルを持っていますか?

更新: 流暢な構成のために私はやった:

しかし、この例外が発生します:

アセンブリ 'ClientLibrary、Version=1.0.0.0、Culture=neutral、PublicKeyToken=89845dcd8080cc91' から型 'System.Data.Caching.CacheFactory' を読み込めませんでした。

何が間違っているのですか?

ありがとう

0 投票する
2 に答える
1030 参照

java - Gemfireリージョンの同期

私はgemfireを使用していて、現在クライアントとサーバーを持っています。これで、サーバーはリージョン内にいくつかのサブリージョンを動的に作成し、そこにいくつかのオブジェクトを配置します。クライアントでオブジェクトを取得しようとしていますが、オブジェクトまたはサブリージョンが表示されません。リージョンを同期するにはどうすればよいですか?他にできることはありますか?