IBM® Informix® 12.10

多重接続と CPU 使用率

従来型の非スレッド SQL クライアント アプリケーションの多くは、データベース接続を複数使用して、単一ユーザの作業を実行します。各データベース接続は、データベース サーバとのネットワーク接続を別個に確立しています。多重接続機能により、データベース サーバ内の 1 つのネットワーク接続で、クライアント アプリケーションから複数のデータベース接続の処理が可能になります。

多重接続を使用すると、データベース サーバは、追加のネットワーク接続に必要となる追加のコンピュータ リソースを消費することなく、複数のデータベース接続を作成できます。

非スレッド クライアントが多重接続を使用する場合、データベース サーバは、やはり、非多重接続の場合と同じ数のユーザ セッションとユーザ スレッドを作成します。ただし、多重接続を使用すると、ネットワーク接続の数が少なくなります。代わりに多重リスナ スレッドを使用すれば、複数のデータベース接続で同じネットワーク接続を共有することができます。

非スレッド クライアントに対する応答時間を短縮するために、多重接続を使用して SQL 問合せを実行することができます。パフォーマンス向上の程度は、次の要素によって異なります。
非スレッド クライアント アプリケーションに多重接続を使用するときには、次の手順を実行してから、データベース サーバを起動する必要があります。
  1. 構成パラメータ DBSERVERALIASES を使用して別名を定義します。例えば、次のように指定します。
    DBSERVERALIASES ids_mux
  2. nettype エントリ (SQLHOSTS ファイルの 2 番目の列) として sqlmux を使用して、別名の SQLHOSTS エントリを追加します。例えば、次のように指定します。
    ids_mux  onsqlmux  ......

    このエントリには他のフィールド (hostname および servicename) も必要ですが、無視されます。

  3. データベース サーバ接続のためにクライアントが使用する sqlhosts ファイルまたはレジストリで m=1 を指定することで、選択した接続タイプの多重化を有効にします。
  4. Windows プラットフォームでは、環境変数 IFX_SESSION_MUX も設定する必要があります。
警告: Windows では、マルチスレッド アプリケーションで多重接続機能を使用することはできません。 マルチスレッド アプリケーションで sqlhosts レジストリ エントリの多重オプションを 有効化し、さらに環境変数 IFX_SESSION_MUX を定義する場合、クラッシュやデータの破損を含む致命的な 結果を引き起こす恐れがあります。


フィードバックの送信 | 例の共有 | トラブルシューティング

PDF を見つけるには、Publications for the IBM Informix 12.10 family of products を参照してください。
リリース ノート、ドキュメント ノート、マシン ノートについては、リリース ノート・ページを参照してください。
タイムスタンプ リリース日: 2013 年 3 月