ロードバランサー経由での Virtual DataPort への接続

このセクションは、JDBC クライアントがロードバランサー経由で、または Virtual DataPort へのコネクションのプールを保持する別の中間リソース経由で Virtual DataPort に接続している場合に参照してください。

Parameters of the JDBC driver useful to set-up a cluster of Denodo servers 」の表に、ロードバランサー経由で Virtual DataPort に接続するときに役立つ URL のパラメーターを示します。

Denodo サーバーのクラスターのセットアップに役立つ JDBC ドライバーのパラメーター

URL のパラメーター

説明

pingQuery および pingQueryTimeout

重要: この 2 つのプロパティは、ping クエリを実行するロードバランサーまたはクライアントアプリケーションが ping クエリのタイムアウトの設定をサポートしていない場合にのみ使用してください。

クライアントが pingQuery パラメーターのクエリを実行した場合、そのクエリが pingQueryTimeout で設定されているミリ秒内に終了しないと、ドライバーはエラーを返します。

これらのパラメーターの詳細については、以下の説明を参照してください。

両方のパラメーターのデフォルト値: <empty>

pingQuery および pingQueryTimeout パラメーターを使用した JDBC アプリケーション用の URL の例
jdbc:vdb://acme:9999/admin?pingQuery=SELECT 1&pingQueryTimeout=1000

上記の URL を使用した場合、クライアントアプリケーションまたはロードバランサーがクエリ SELECT 1 を実行し、Virtual DataPort が 1 秒未満内に応答を返さないと、ドライバーはエラーを返します。このエラーが返されると、クライアントまたはロードバランサーはこのコネクションを再利用する代わりに新しいコネクションを作成します。

ロードバランサーまたはクライアントが以下の条件を満たしている場合、 pingQuery および pingQueryTimeout をコネクション URL に追加する必要があります。

  1. ping クエリを実行して、Virtual DataPort サーバーが稼働しているかどうか、またはそのサーバーへのコネクションが引き続き有効かどうかをチェックする

  2. かつ、クライアントアプリケーションまたはロードバランサーが ping クエリの実行をサポートしているが、このクエリのタイムアウトの設定をサポートしていない

実行時、 pingQuery パラメーターで設定されているクエリを受け取った JDBC ドライバーは、最大で pingQueryTimeout のミリ秒だけ待機します。クエリがこの時間内に完了しない場合、ドライバーはエラーを返します。このエラーにより、クライアントまたはロードバランサーはコネクションが有効ではなくなったことを確認します。Virtual DataPort サーバーへのコネクションが無効になる可能性があるのは、コネクションがタイムアウトしたか、またはファイアウォールによって解除された場合です。

実際に ping クエリを実行するのはドライバーではありません。ping クエリは、クライアントアプリケーションまたはロードバランサーが実行します。