2

Coherenceを分散キャッシュとして使用する特定のシナリオがあります。ここで説明します。

  1. データを継続的にキャッシュに入れるスタンドアロン プロセスが 20 以上あります。それらすべての頻度は異なりますが、それは問題ではありません。
  2. そして、それらのキャッシュからデータを読み取る2つのプロセス。
  3. コヒーレンスが提供する方法を除いて、基礎となるデータベースは必要ありません。データはキャッシュに書き込まれ、キャッシュから読み取られます。
  4. 自由に使える 4 ノード クラスタがあり (コストの制約は何でも)、コヒーレンス クラスタは別のボックス (インフラの制約は何でも) にあり、キャッシュの入力部分と読み取り部分の両方が異なるマシン上にあります。
  5. 1 日あたりのキャッシュのピーク メモリ サイズは、最大で 6 GB、最小で 2 GB 前後です。キャッシュには毎日のデータのみが含まれ、それを同時にアーカイブし続けるために別のアーカイブ プロセスが必要です。ポイントは、現時点でキャッシュ サイズがこのサイズのみになることです。日付を重要な方程式から遠ざけるつもりだとしましょう。
  6. ただし、これらの 4 つのノードにさらに保存できるかどうかを調べたいと思います。現在、単純なシリアル化により、他の nbinary 形式を探索できます。それとも、このサイズのキャッシュで間違いなく使用する必要がありますか?
  7. 私の読み取りおよび書き込み操作は、1 日のうちかなり分散しています。つまり、2 つの読み取りクライアントと 20 以上の書き込みクライアントによって、読み取りと書き込みが継続的に行われます。それらのうちの1つがより多いというわけではありません。すべてのバックグラウンド プロセスには起動バッチ プロセスがありますが、その後の継続的なプッシュよりも多くをキャッシュにプッシュします。ただし、継続的にプッシュすると、かなりの量のデータもプッシュされます。

上記の点に関する私の質問(そしていくつかの混乱のために)

  1. 最大の問題は、購入したノードに応じて接続数が制限されていると誰かが私に言ったことです。それで彼は、4の場合、理想的には最大で4つの接続を持つべきだと言いました。それで、ゲートキーパーのようなアプリケーションを開発してください。TCP Extend を使用している場合でも。今までの私の読書から、私はそうは思わない。それは...ですか?ポイントは、本当に制約がない場合は、そのように行きたくないということです。

つまり、クラスタ内のノードによって、Proxy Service 経由の接続に制限があるのでしょうか?

  1. 上記のみに関連するもの。最大で、Extend 方法を使用した場合にのみ、キャッシュにプッシュするときにパフォーマンスに何らかのペナルティが発生しますよね?

  2. パーティション化されたキャッシュ/ニア キャッシュ。読み取り時間とほとんどの更新キャッシュの両方が非常に重要です。(私が持っている最もインプな質問)。

  3. シリアライゼーション/外部化/protobufと言う代わりに、POFに行くことで得られる利点を本当に見たいと思っています。コヒーレンスはすぐにprotobufをサポートできますか? (後回しになるかもしれません)

4

1 に答える 1

1

通常のネットワークおよびハードウェアリソースの制約を除いて、CoherenceExtendプロキシがサポートできる接続の数に技術的な制限はありません。ライセンスの制限があるかどうかは、オラクルの営業担当者に問い合わせる必要があります。

ネットワークホップ(クライアントからプロキシ、クラスター)を追加するため、プロキシを使用するとパフォーマンスにいくらかの影響があります。POFシリアル化を使用する場合、プロキシは値をシリアル化/逆シリアル化する必要はありません。オブジェクトをシリアル化された形式で渡すことができます。Coherenceはネットワーク速度に対して高度に最適化されているため、ほとんどのアプリケーションでは、プロキシを使用した場合のパフォーマンスへの影響はわずかです。クライアントが.NETまたはC++でない限り、プロキシを使用する必要はありませんが、クライアントのパフォーマンスをキャッシュへの影響から分離するという利点があります。

ニアキャッシュは、クライアントに対して頻繁に取得されるアイテムが多数ある場合、それらが処理中に検出されるため、取得パフォーマンスを劇的に向上させます。

POFは、より高速なシリアル化/逆シリアル化とよりコンパクトなストレージに基づいてパフォーマンスを向上させます。実際の本番データに基づいたテストデータを試して、違いを自分で測定するのが常に最善です。Coherenceは、そのままの状態でprotobufをサポートしていません。

于 2010-08-26T21:37:12.000 に答える