クライアント構成(client.ncconf)
このクライアント構成ファイル (client.ncconf) によって使用されます。 NCache サーバーとの接続を確立するために必要な初期情報を取得するためのクライアントAPIです。このファイルは、接続の再試行、タイムアウト、ローカルおよびリモートキャッシュのポート設定など、必須パラメータを定義します。これにより、スムーズなクラスター通信が可能になり、ポート転送などの高度なネットワーク機能もサポートされます。
このファイルは、クライアントノードで実行されているすべてのクライアントインスタンスに共通です。 %NCHOME%\config Windowsまたは /opt/ncache/config Linuxでは、設定を読み込む必要があるモジュールは、まず client.ncconf アプリケーションフォルダ内のファイル。見つからない場合は client.ncconf アプリケーション フォルダーでは、インストール フォルダーから構成を読み取ります。
クライアント構成ファイルにより、ローカルおよびリモートクライアントはキャッシュに接続できます。さらに、リモートクライアントもこの構成ファイルを使用してリモートキャッシュに接続します。このファイルは、新しいキャッシュ/クラスタが作成されるたびに自動的に更新されます。同様に、新しいキャッシュ/クラスタ構成設定が適用されるたびに更新されます。ただし、これは次の場合に限ります。 NCache マシンにインストールされ、 NCache サービスが実行中です。
お願い
同じ構成は次の方法で指定できます。 キャッシュ接続オプション APIの Alachisoft.NCache.Client SDK。キャッシュを初期化する際にAPIを使用する方法の詳細については、 キャッシュページに接続 に選出しました。 開発者ガイド.
重要
指定された構成は、 CacheConnectionOptions 設定を上書きします client.ncconfただし、これは、それらを指定したクライアントにのみ当てはまります。
client.ncconf の XML 設定構文
クライアント構成ファイルについては以下で説明します。
<configuration>
<ncache-server connection-retries="3" retry-connection-delay="0" retry-interval="1" command-retries="3" command-retry-interval="0.1" client-request-timeout="90" connection-timeout="5" port="9800" local-server-ip="20.200.20.38" enable-keep-alive="False" keep-alive-interval="30"/>
<cache id="demoCache" client-cache-id="" skip-client-cache-if-unavailable="True" reconnect-client-cache-interval="10" default-readthru-provider="" default-writethru-provider="" load-balance="False" enable-client-logs="False" log-level="error">
<server name="20.200.20.38" is-load-balancer="True"/>
<server name="20.200.20.39" is-load-balancer="True"/>
</cache>
</configuration>
主要な構成タグと属性
次のセクションでは、ファイル構文の一部として記述されるタグについて説明します。
このタグは、デフォルトのクライアントとサーバー間の接続設定を定義します。 NCache クライアント。これらの設定は、接続再試行、再試行間隔、コマンド再試行、リクエストタイムアウト、接続タイムアウト、クライアントポート、ローカルサーバーIP、およびキープアライブ動作を制御します。
<ncache-server connection-retries="3" retry-connection-delay="0" retry-interval="1" command-retries="3" command-retry-interval="0.1" client-request-timeout="90" connection-timeout="5" port="9800" local-server-ip="20.200.20.38" enable-keep-alive="False" keep-alive-interval="30"/>
接続-再試行: クライアントが指定されたサーバーのリスト全体に対して行う再試行回数を指定します。 client.ncconf 接続確立時または接続切断後のファイル。デフォルト値は
3.再試行-接続-遅延: クライアント API が接続再試行の次の反復を実行する前に待機する時間間隔を秒単位で指定します。デフォルト値は
0 second.再試行間隔: 切断が発生し、クライアントが再接続を試みる場合、このフラグは各接続試行間の間隔を指定します。秒単位で指定され、デフォルト値は
1 second例えば、再試行間隔が3秒に設定されている場合、クライアントは再試行のたびに3秒間待機します。コマンド再試行: クライアントとキャッシュサーバー間の接続が切断され、再確立された後にコマンドが実行される回数を決定します。これにより、コマンドの実行が確実に成功します。デフォルト値は
3.コマンド再試行間隔: 2 つの連続するコマンド再試行間の時間間隔を指定します。デフォルトでは、
0.1 second.クライアント要求タイムアウト: クライアント API がコマンドに対するサーバーからの応答を待つ期間を指定します。この期間が経過すると、
OperationFailedException例外がスローされます。デフォルトでは、この期間は90 seconds最小値は60秒です。時間間隔が最小値より短い場合は、自動的に最小値である60秒にリセットされます。接続タイムアウト: 接続が切断されたときにスレッドが OperationFailedException をスローするまでの待機時間を決定します。この間、1 つのスレッドがキャッシュ サーバーとの接続を確立しようとします。接続が正常に確立された場合、すべてのスレッドはそれぞれの操作を完了します。そうでない場合は、OperationFailedException をスローします。デフォルトでは、
5 seconds.ポート: 使用するポートを指定します NCache サーバーが起動し、複数のクライアントからの接続を受け入れます。このポートのデフォルト値は
9800これは、サービス構成ファイルを通じて変更できます。ローカルサーバ IP: 特定のアプリケーションを実行するローカルサーバーのIPアドレスを指定します。 NCache インスタンス。
キープアライブを有効にする: クライアントとサーバー間の接続を「アクティブ」に維持するかどうかを指定します。クライアントが非アクティブになった場合(つまり、接続されているサーバーと通信しなくなった場合)、キャッシュトポロジーに設定された間隔に基づいて、サーバーノードに定期的にpingを実行します。この機能は、アイドル状態のネットワーク接続を切断するファイアウォールがある場合や、切断を事前に検出する場合に特に役立ちます。デフォルトでは、
False.キープアライブ間隔: アイドル状態のクライアントからサーバーにハートビートを送信して接続を維持するまでの間隔を秒単位で決定します。間隔は 1 ~ 7200 秒の範囲で、デフォルト値は です。
30 seconds。範囲外の値を指定した場合、 NCache デフォルト値を使用することになります。
このタグは、特定のキャッシュのクライアント側の接続設定を定義します。
<cache id="demoCache" client-cache-id="" skip-client-cache-if-unavailable="True" reconnect-client-cache-interval="10" default-readthru-provider="" default-writethru-provider="" load-balance="False" enable-client-logs="False" log-level="error">
<server name="20.200.20.38" is-load-balancer="True"/>
<server name="20.200.20.39" is-load-balancer="True"/>
</cache>
idキャッシュの一意のIDを指定します。
クライアントキャッシュ IDクライアントキャッシュの一意のIDを指定します。
利用できない場合はクライアント キャッシュをスキップする: 設定されたクライアント キャッシュが利用できない場合に、クライアントがクラスタ キャッシュでの操作を継続するかどうかを指定します。デフォルトでは、
True.再接続クライアントキャッシュ間隔: クライアントノードがクライアントキャッシュへの接続を再度試行するまでの待機間隔を秒単位で指定します。デフォルトでは、
10 seconds.デフォルト リードスルー プロバイダー: IDを取得/設定します
default-readthru-providerプロバイダーが API 経由で指定されている場合、この値は API から渡された値で上書きされます。デフォルトのライトスルー プロバイダー: IDを取得/設定します
default-writethru-providerプロバイダーが API 経由で指定されている場合、この値は API から渡された値で上書きされます。負荷平衡このフラグが設定されている場合、クライアントは接続されているクライアント数に基づいて最適なサーバーに接続しようとします。これにより、クラスタ化されたキャッシュ内の各ノードでほぼ均等なクライアント数を維持し、単一のノードが過負荷になるのを防ぎます。デフォルトでは、
False.クライアントログを有効にする: このキャッシュのクライアント側ログ記録を有効にするかどうかを指定します。True に設定すると、クライアントはキャッシュアクティビティのログ情報を記録します。False に設定すると、クライアントログ記録は無効になります。デフォルト値は
False.ログレベル: クライアントログが有効になっているときに使用するクライアントログのレベルを指定します。指定可能な値は、error、info、debug です。デフォルト値は
error.
名: を実行するサーバーのIPアドレスを指定します。 NCache インスタンス。
ロードバランサー: このフラグは、クライアントがクラスタ内のすべてのマシンに接続することを保証します。デフォルトでは、
Falseこのタグを手動で追加する必要があります client.ncconf ファイルにソフトウェアを指定する必要があります。
ポートフォワーディング設定
お願い
キャッシュサーバーとクライアントアプリケーションが同じサブネット上にある場合は、ポート転送を構成する必要はありません。
キャッシュサーバーとクライアントが異なるサブネットまたはネットワーク上にある場合、クライアントアプリケーションはIPアドレスに基づいてキャッシュサーバーに直接アクセスできない可能性があります。この場合、ポートフォワーディングを設定し、設定を変更する必要があります。 client.ncconf それに応じてファイルします。
ポート転送のクライアント設定構文
ポート転送用のクライアント設定ファイルについては以下で説明します。
<configuration>
...
<server-end-point>
<end-point public-ip="20.200.20.38" public-ports="9801" private-ip="172.19.0.11" private-ports="9800"/>
<end-point public-ip="20.200.20.38" public-ports="1250-1260" private-ip="172.19.0.11" private-ports="8250-8260"/>
<end-point public-ip="20.200.20.38" public-ports="1300-1400" private-ip="172.19.0.11" private-ports="8300-8400"/>
<end-point public-ip="20.200.20.38" public-ports="9802" private-ip="172.19.0.12" private-ports="9800"/>
<end-point public-ip="20.200.20.38" public-ports="2250-2260" private-ip="172.19.0.12" private-ports="8250-8260"/>
<end-point public-ip="20.200.20.38" public-ports="2300-2400" private-ip="172.19.0.12" private-ports="8300-8400"/>
</server-end-point>
</configuration>
ポート転送のクライアント設定タグを理解する
次のセクションでは、ファイル構文の一部として記述されるタグについて説明します。
これらは、通信に使用されるエンドポイントを表します。 NCache サーバー。以下はサンプルです client.ncconf ポート転送が設定されたファイル。
終点: パブリックからプライベートへのエンドポイントマッピングを 1 つ定義します NCache サーバー。IPアドレスとポート番号の組み合わせ。
パブリック IP: ローカルネットワーク外から公開またはアクセス可能なアドレスを指定します。
パブリックポート: を指定します
public-portsプライベート ポートにアクセスするために使用されます。プライベートIP: ローカルネットワーク内に存在し、直接アクセスできないアドレスを指定します。これは、 NCache サーバー。
プライベートポートこれらのポートは直接アクセスできませんが、 NCache サーバー。