Oracle Connectには、パフォーマンスを改善できる複数のチューニング・パラメータが含まれています。特に、デーモンを構成して、OracleAS Adapter for Tuxedoとクライアント間の通信を最適化できます。さらに、バインディング環境をチューニングして、リクエスト処理を最適化できます。
この章の構成は、次のとおりです。
デーモン・ワークスペースは、サーバー・プロセスをクライアントに割り当てる役割を果たします。クライアント・リクエストに対してサーバー・プロセスが常に使用できるように、ワークスペースを構成してサーバー・プロセスのプールを使用できます。Oracle Studioを使用して、デーモンおよびデーモン・ワークスペース・パラメータを保守し、プール内のサーバー・プロセスの割当てや管理を制御できます。
デーモンは、レガシー・プラットフォーム上のサーバー・プロセスのプールを管理します。Oracle Application Serverは、J2CA 1.5 Tuxedoアダプタの接続プールを管理します。
また、複数のデーモン・ワークスペース構成を使用できます。これにより、複数のワークスペースを作成して異なるアダプタで使用できます。
新規のデーモン構成を追加するには、Oracle Studioを使用します。様々な状況に対して、異なるデーモン構成を設定できます。Oracle Connectがインストールされているコンピュータで、次の手順を実行します。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machine」フォルダを開きます。
使用するマシンを開きます。
「Daemons」を開きます。使用可能なデーモン構成がリストされます。
「IRPCD」を右クリックして「New Workspace」を選択します。
「New daemon workspace」画面で、新規ワークスペースの名前を指定し、オプションで説明を入力します。
このワークスペースをデフォルト設定にするか、または既存のワークスペースのプロパティをコピーするかを指定します。
既存のワークスペースのプロパティをコピーするには、「Ellipsis」をクリックし、プロパティのコピー元のワークスペースを選択します。
「Next」をクリックします。「Select Scenario」画面が表示されます。
「Application Server using connection pooling」を選択して「Next」をクリックします。
引続きウィザードに従って、ワークスペースに関する必要な値を指定します。
ワークスペースの定義を完了するには、「Finish」をクリックします。
「IRPCD」デーモンに新規のワークスペースが表示されます。
ワークスペースを編集するには、次の表に示すタブを使用します。
表8-1 ワークスペース・プロパティのタブ
タブ | 説明 |
---|---|
一般 |
サーバー・タイプ、ワークスペースの起動に使用するコマンド・プロシージャ、このワークスペースに関連付けられているバインディング構成(アクセスできるデータソースとアプリケーションを示す)、タイムアウト・パラメータおよびロギング情報など、一般情報を指定します。 |
サーバー・モード |
ワークスペースによって起動し、クライアントに割り当てられたサーバーの操作を制御する機能など、ワークスペース・サーバー情報が格納されています。 |
セキュリティ |
管理権限、ユーザー・アクセス、ワークスペースへのアクセスで使用可能なポート、およびワークスペース・アカウント仕様を指定します。 |
これらのタブには、Oracle Studioを使用して次のようにアクセスします。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machines」フォルダを開いて、ワークスペースを編集するマシンを開きます。
「Daemons」フォルダを開きます。このコンピュータで使用可能なデーモンがリストされます。
「IRPCD」デーモンを開きます。デーモン・ワークスペースがリストされます。
編集するワークスペースを右クリックして「Open」を選択します。
編集する情報が含まれているタブをクリックします。これらのタブ、およびタブに含まれるフィールドの詳細は、「ワークスペース」を参照してください。
ワークスペースを編集した後、「Save」をクリックします。
サーバー・モードは、デーモンが新規プロセスを起動する方法を決定します。デーモンでは、次のサーバー・モードをサポートしています。
singleClient: 各クライアントが専用のサーバー・プロセスを受け取ります。サーバー・プロセスが実行されるアカウントは、クライアントのログイン情報、または特定のサーバー・ワークスペースによって決定されます。
このモードを使用すると、サーバーは特定のユーザー・アカウントで実行され、各クライアントは独立して稼働できます(各クライアントが独自のプロセスを受け取るため)。ただし、このサーバー・モードを使用すると、プロセスの起動時間に起因する高いオーバーヘッドが発生し、大量のサーバー・リソースを使用する場合があります(同時クライアントと同じ数のサーバー・プロセスが必要になるため)。
multiClient: 複数のクライアントが1つのサーバー・プロセスを共有し、クライアントは逐次処理されます。
このモードでは、サーバー・プロセスが初期化されているためオーバーヘッドか低くなります。ただし、複数のクライアントが同じサーバー・プロセスを共有するため、特に、長時間かかる問合せを発行した場合など、相互に影響を与えることがあります。
1つのプロセスを共有するクライアントの数は、「Clients per server limit」(現行ワークスペースの1つのサーバー・プロセスが受け入れる同時クライアントの最大数)で決定します。
multiThreaded: TuxedoをWindowsプラットフォームで実行する場合は、サーバー・プロセスをマルチスレッドにできます。
reusable: これはsingleClientモードの拡張です。クライアント処理が終了した後、サーバー・プロセスを終了せずに別のクライアントで使用できます。これによって、起動時間が短縮され、アプリケーション起動のオーバーヘッドも小さくなります。
このモードでは、サーバーが初期化されているため、singleClientモードのようにオーバーヘッドが高くなりません。ただし、このサーバー・モードの場合は、大量のサーバー・リソースを使用する場合があります(同時クライアントと同じ数のサーバー・プロセスが必要になるため)。
他のモードを設定する場合は、「Reuse limit」の値(特定のサーバー・プロセスを再利用できる最大回数、つまり、サーバー・プロセスが終了するまでにこのサーバー・プロセスを利用できるクライアントの数)を指定してプロセスを再利用できる回数を設定すると、サーバー・プロセスが再利用可能になります。サーバーを再利用することによって、初期化を繰り返す必要がなくなるため、パフォーマンスが向上します。ただし、長期にわたり再利用を繰り返すと、メモリー・リークが発生するリスクが高くなります。「Reuse limit」フィールドのデフォルト値は「None」で、再利用回数に制限がないことを示します。
次の図に示すように、デーモン・ワークスペース・エディタの「Server Mode」タブでサーバー・モードを設定します。
サーバー・モードを使用するとき、サーバー・プロセスのプールを指定できます。サーバー・プロセスは、デーモンの起動時に起動し、プール内で保守されます。サーバー・プロセスを新規クライアント・リクエストで使用する場合は、プールから使用できます。これによって、初期化の時間がかかりません。クライアントがサーバー・プロセスをリクエストするたびに新規サーバー・プロセスを起動するのではなく、クライアントは使用可能なプロセスのプールからすぐにプロセスを受け取ります。クライアントが処理を終了すると、使用されたサーバー・プロセスは終了するか、再利用可能なサーバーが指定されている場合はプールに戻されます。
サーバー・プロセスのプールを設定するには、「WS Server」タブで次のパラメータを指定します。
Initial number of servers: デーモンの起動時に、このワークスペースに対して事前に起動されるサーバー・プロセスの数を入力します。新規クライアント・プロセスでこれらのサーバー・プロセスを使用できるため、初期化時間が最小限になります。クライアントがサーバー・プロセスをリクエストするたびに新規サーバー・プロセスを起動するのではなく、デーモンは使用可能なサーバーのプールからクライアントにサーバーをすぐに割り当てます。使用可能なサーバー・プロセスの数が「Minimum number of available servers」フィールドに指定した値を下回ると、デーモンは使用可能なサーバーが指定の数に達するまでサーバー・プロセスを再度起動します。このパラメータのデフォルトは0(ゼロ)で、このワークスペースに対して事前起動されるサーバーがないことを示します。
Minimum number of available servers: Oracle Connectのデーモンが新規サーバー・プロセスの作成を再開する前に、事前起動されるサーバーのプール内に存在するサーバー・プロセスの最小数(前述の「Initial number of servers」フィールド値で指定した値以内)。このパラメータを「Initial number of servers」フィールド値より大きい値に設定すると、デーモンでは、「Initial number of servers」フィールドで指定した値と同じ値とみなします。この場合、サーバー・プロセスがプールから削除されてクライアントに割り当てられるたびに、新規サーバー・プロセスが起動してプールに追加されます。このパラメータのデフォルトは0(ゼロ)で、使用可能なサーバーがない場合のみ新規サーバーが作成されることを示します。
Set maximum number of servers: このワークスペースに対してプールされる使用可能なサーバー・プロセスの最大数。サーバーが再利用可能な場合は、クライアントがサーバーから切断されると、デーモンはそのサーバーを使用可能なサーバーのプールに戻します。最大数に達すると、余分なサーバー・プロセスは廃棄されます。
バインディング構成には、次の情報が含まれます。
環境設定。バインディングで定義されたすべてのアダプタで使用する環境を構成するために使用されます。
現行コンピュータのアプリケーション・アダプタ。
アダプタの構成については、「Oracle StudioでのOracleAS Adapter for Tuxedoの構成」を参照してください。
Oracle Studioで環境設定を構成する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machine」フォルダを開いて、バインディングを構成するマシンを開きます。
「Bindings」フォルダを開きます。このコンピュータで使用可能なバインディングがリストされます。
「NAV」を右クリックして「Open」を選択します。
「Environment」タブで、必要に応じて環境設定を編集します。環境設定を編集するには、対象のプロパティ・カテゴリをクリックし、次に編集する値をクリックします。
次の図に示すように、バインディングの「Environment」タブが表示されます。
バインディング環境は、次のカテゴリに分類されます。
次の表に、デバッグ操作とロギング操作を定義するパラメータを示します。
表8-2 「Debug」のパラメータ
パラメータ | 説明 |
---|---|
これを選択すると、バックエンド・アダプタに送信された入力XMLおよびバックエンド・アダプタによって戻された出力XMLがログに書き込まれます。 |
|
このパラメータは、OracleAS Adapter for IMS/DBでは使用できません。 |
|
これを選択すると、一般トレース情報がログに記録されます。デフォルトでは、エラー・メッセージのみがログに書き込まれます。 注意: デフォルト設定を変更すると、パフォーマンスが低下する場合があります。 |
|
このパラメータは、OracleAS Adapter for IMS/DBでは使用できません。 |
|
これ選択すると、ログの各イベント行にOracleASアダプタが追加されます。 |
|
このパラメータは、OracleAS Adapter for IMS/DBでは使用できません。 |
|
バイナリXMLログ・レベルをリストから選択します。次のログ・レベルから選択できます。
|
|
メッセージ用ログ・ファイルの高位修飾子。次のタイプのメッセージがログに書き込まれます。
|
|
このパラメータは、OracleAS Adapter for IMS/DBでは使用できません。 |
|
このパラメータは、OracleAS Adapter for IMS/DBでは使用できません。 |
|
これを選択すると、トランザクションに関する追加情報をトランザクション・マネージャがログに書き込みます。 |
次の表に、テンポラリ・ファイルが書き込まれる一般操作を定義するパラメータを示します。
表8-3 「General」のパラメータ
パラメータ | 説明 |
---|---|
このパラメータは、OracleAS Adapter for IMS/DBでは使用できません。 |
|
テンポラリ・ファイルが書き込まれるディレクトリ。ハッシュ結合で使用したりファイルのソート用に作成されるテンポラリ・ファイルも含まれます。デフォルトは、現行の高位修飾子です。 |
|
2桁の年を4桁の年に変換する方法を決定します。 固定基準年: この方法は、1900年に近い古いライブ・データがある場合に適しています。この場合、ユーザーは現行の2桁書式を維持する必要があるためです。 ユーザーがこの基準日を変更できるのは、古い日付がデータ・ソースから削除された場合のみです。 移動基準年: |
|
クライアント・コンピュータのメモリー・バッファに使用されるバイト数を指定します。これは、Oracle Connectのクライアント/サーバーで先読みデータを格納するために使用します。デフォルトは |
次の表に、グローバリゼーション・サポートを定義するパラメータを示します。
表8-4 「Language Settings」のパラメータ
パラメータ | 説明 |
---|---|
アプリケーション言語を識別します。デフォルトのAttunity SQLServer-CDC for SSIS.chmは、このパラメータで指定された値に基づいて選択されます。詳細は、「グローバリゼーション設定」を参照してください。 |
|
グローバリゼーション・サポートで、ワークスペースのAttunity SQLServer-CDC for SSIS.chmを識別するために使用します。詳細は、「グローバリゼーション設定」を参照してください。 |
|
データ型が
デフォルトは |
「Modeling」のパラメータは、OracleAS Adapter for Tuxedoでは使用できません。
次の表に、XMLサポートを定義するパラメータを示します。
表8-5 「XML」カテゴリのパラメータ
パラメータ | 説明 |
---|---|
メモリーに保持するXML文書の最大サイズを指定します。デフォルトは |
|
別のコンピュータに渡すXML文書の最大サイズを指定します。デフォルトは 注意: このプロパティのこの値を増やすと、デーモンの「Maximum XML in memory」プロパティの値も増やすことが必要になる場合があります。デーモンの詳細は、「制御」を参照してください。 |
|
内部通信バッファの最大サイズを入力します。デフォルト値( |
|
XMLで使用する日付フォーマットを入力します。オプションは次のとおりです。
|
|
これを選択すると、不正なXML文字が |
|
これを選択すると、レコード・フォーマットが固定の場合に、埋め込まれた空白がXML文字列の列から取り除かれます。デフォルトでは、このオプションが選択されており、埋め込まれた空白が固定サイズの文字の列に合わせて取り除かれます。この動作が不要な場合は、このチェック・ボックスの選択を解除します。 |
アダプタ構成はプラットフォーム間で移行できます。構成情報は、最初にソース・プラットフォームのOracle Connectリポジトリに格納され、XMLファイルにエクスポートされてから、ターゲット・プラットフォームにインポートできます。構成を移行するとき、ソース・プラットフォームに固有のファイル名やパスは、ターゲット・プラットフォームの有効なファイルに変更する必要があることに注意してください。
Oracle Studioを使用してアダプタ構成を移行する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
Configuration Explorerで、必要なコンピュータを右クリックし、「Export XML definitions」を選択します。
XML表現とその完全な構成が格納されているXMLファイルのパスと名前を指定します。
XML定義のパスをターゲット・プラットフォームで必要なパスに編集します。たとえば、serverLogFile
プロパティの設定は、プラットフォームに応じて変更が必要になる場合があります。
Oracle Studioで、ソース・プラットフォームの場合と同じようにしてターゲット・プラットフォームを設定します。詳細は、「Oracle StudioでのOracleAS Adapter for Tuxedoの構成」を参照してください。
Configuration Explorerで、ターゲット・コンピュータを右クリックし、「Import XML definitions」を選択します。
XMLファイルをターゲット・プラットフォームにインポートします。
Oracle Connectは、レガシー・プラットフォームのセキュリティ・システムの範囲内で動作します。さらに、Oracle Connectでは次のセキュリティ・コンポーネントが提供されています。
バイナリXML暗号化メカニズム: 次のようにしてアクティブ化します。
サーバーへのクライアントの最初のメッセージには、事前定義済の共有鍵が含まれます。接続文字列には鍵の名前と値が含まれます。サーバーは、ネイティブ・オブジェクト・ストア(NOS)から、クライアントから渡された鍵の名前の鍵値を取得します。
サーバーは任意の128ビットRC4セッション鍵を生成し、これは共有鍵で暗号化されてクライアントに戻されます。事前定義済の共有鍵がない場合、事前定義済のハードコード鍵が使用されます(この鍵はクライアントおよびサーバー上でハードコードされます)。
セッション全体が暗号化されているかどうかにかかわらず、パスワードが送信される場合は、RC4の128ビット・セッション鍵を使用して常に暗号化されます。
事前定義済の共有鍵がある場合は、セッション全体が暗号化されます。そうでない場合、パスワードの交換のみが暗号化されます(ハードコードされた鍵を使用)。
資格証明: ネットワーク上で送信されるパスワードおよびOracleASアダプタは、事前定義済のハードコードされた128ビットRC4セッション鍵を使用して暗号化されます。
設計時: Oracle Studio内で、Oracle Studio自体へのアクセス権限を付与し、コンピュータ、ユーザー・プロファイルおよびワークスペースへのアクセス権限を付与するためのセキュリティ。
実行時: アクセス用のデーモンの制御を含めて、Tuxedoへのアクセスで使用するセキュリティ。
設計時セキュリティの設定については、次の各項で説明します。
Oracle Studioへのアクセスの保護については、「Oracle Studioへのパスワード・アクセスの設定」で説明します。
Oracle Studioでコンピュータを構成する権限の保護については、「管理権限を持つユーザーの指定」で説明します。
ユーザー・プロファイルへのアクセスを保護するには、Oracle Studioで該当するユーザー・プロファイルを右クリックし、「Change Master Password」を選択します。表示されたダイアログ・ボックスで、今後、特定のユーザー・プロファイルを編集する際に入力する必要があるパスワードを指定します。
ワークスペースへのアクセスを保護するには、Oracle Studioで該当するワークスペースを右クリックし、「Set Authorization」を選択します。表示されたダイアログ・ボックスで、今後、特定のワークスペースを編集する際に入力する必要がある有効なユーザーとパスワードを指定します。
Attunity SQLServer-CDC for SSIS.chmの間に、セキュリティは次のように実装されます。
クライアント・リクエストでデーモンを介してレガシー・プラットフォームにアクセスする場合は、匿名アクセスが許可されるか、またはユーザー・プロファイルにコンピュータの有効なユーザー名とパスワードを入力する必要があります。J2CA 1.5 TuxedoアダプタのOracleASアダプタとpasswordプロパティは、デーモンにアクセスするためにこの段階で使用されます。
注意: デーモンへのアクセスに使用するユーザー名は、使用するユーザー・プロファイルの名前と同じである必要があります。 |
クライアントによるアクセスは、Oracle Studioのワークスペースの「Security」タブの「Workspace Access」セクションで指定されたポートのリストに従って、有効なポートを介する必要があります。詳細は、ワークスペースの「Security」を参照してください。
注意: NATプロトコルを使用してファイアウォールを介したレガシー・プラットフォームへのアクセスは、コンピュータがOracle Studioに追加されたときに指定します。 |
クライアントは、サーバー・プロセスを割り当てるために、ワークスペースへの匿名アクセスが付与されるか、またはOracle Studioのワークスペースの「Security」タブの「Workspace Users」セクションにリストされる必要があります。詳細は、ワークスペースの「Security」を参照してください。
デーモンの起動や停止、サーバー・プロセスの終了など、デーモンでコマンドを実行する機能を使用できるのは、Oracle Connectにデーモン管理者として登録された管理者のみです。デーモンの「Security」で説明するように、クライアントはOracle Studioの「Daemon Security」タブで有効なデーモン管理者として登録されます。
クライアントとサーバー間の暗号化プロトコルは、クライアント・コンピュータで定義されます。
ネットワーク通信の暗号化の手順は、次のとおりです。
Oracle Studioの「Design」パースペクティブの「Configuration」ビューでバインディングを右クリックし、「Open」を選択します。
「Machines」タブを選択します。
次の図に示すように、バインディング・エディタの「Machines」タブが表示されます。
クライアント・マシンを選択し、「Network」をクリックします。
「Network Settings」画面が表示されます。
「Encryption Protocol」リストから必要な暗号化プロトコルを選択し、「OK」をクリックします。
暗号化プロトコルを指定した後、指定した暗号化プロトコルを使用して、クライアントが通信するサーバーを指定する必要があります。
暗号化通信を行うサーバー・コンピュータを設定する手順は、次のとおりです。
Configuration Explorerでユーザー・プロファイルを右クリックし、「Edit User」を選択します。
ユーザー・エディタでクライアント・マシンを選択し、「Add」をクリックします。
認証パラメータを構成する手順は、次のとおりです。
Resource type: リソース・タイプを「Remote machine」に指定します。
Resource name: 次の書式で、通信を暗号化するマシンを指定します。
enckey: machine_name
machine_name
は、接続するマシンです。
User name: リモート・マシン上のデーモンが参照する、暗号化パスワードに関連した名前を指定します。
複数のクライアントが、ユーザー・プロファイルでこの名前を指定する場合があります。このような場合、リモート・マシン上のユーザー・プロファイルに、ネットワーク暗号化用のこのOracleASアダプタおよびパスワードの1エントリのみをリストする必要があります(複数のOracleASアダプタおよびパスワードのペアをリストおよび参照するのではありません)。
このユーザー名エントリが指定されていない場合、リモート・マシン上のデーモンは、現在アクティブなユーザー・プロファイルの名前を使用します。
Password: ネットワーク上で暗号化された情報を渡す、またはアクセスするために必要なパスワードを指定します。
「OK」をクリックします。
また、サーバー・コンピュータは、暗号鍵を使用して、暗号化された情報を解読できるように構成されている必要があります。
サーバー・コンピュータで暗号鍵を設定する手順は、次のとおりです。
Oracle Studioの「Design」パースペクティブのConfiguration Explorerでサーバー・マシンを選択します。
ユーザー・プロファイルを右クリックして「Edit User」を選択します。ユーザー・エディタが表示されます。次の図に示すように、ユーザー・エディタで、「Encryption Key」タブを選択します。
「Add」をクリックします。
次の図に示すように、「Add Encryption Key」画面が表示されます。
暗号鍵のパラメータを構成する手順は、次のとおりです。
Key name
: このマシン上のデーモンが参照する、暗号化パスワードに関連した名前を入力します。
Key
: 暗号鍵を入力します。
Confirm key
: 暗号鍵を再入力します。
「OK」をクリックします。
エクスプローラ・ツリーで「Daemons」フォルダを開きます。
接続を管理するデーモンを右クリックして「Open」を選択します。「Security」タブを選択します。
「Machine access」領域で、「Encryption methods」フィールドに「RC4」を入力します。
次の図に示すように、「Daemon Security」タブが表示されます。
注意: この項の情報は、TuxedoおよびTuxedo Queueアダプタにのみ関連しています。Tuxedo Gatewayアダプタは、2フェーズ・コミット・トランザクションをサポートできます。詳細は、「トランザクション・ゲートウェイ・プロセスの構成」を参照してください。 |
OracleAS Adapter for Tuxedoは、唯一の1フェーズ・コミット・リソースとして分散トランザクションに関与できます。これは、ACXトランザクション演算子に応答し、対応するATMIトランザクション・コールを発行することで、ローカル・トランザクションをサポートします。バックエンド・サービスは、トランザクションのセマンティクスおよび実装を担当します。
アプリケーション内でトランザクションの起動やコミットを行うトランザクションAPIは、OracleAS Adapter for Tuxedoによって、対応するTuxedoトランザクション・コールにマップされます。アダプタは、Tuxedoトランザクション期間(タイムアウト)を制限する機能も備えています。
次の表に、ACXトランザクション演算子と同等のATMIトランザクション・コールのマップを示します。
表8-6 ACXとATMIトランザクション間の対応
ACXトランザクション演算子 | ATMIトランザクション・コール | コメント |
---|---|---|
|
トランザクション期間は、アダプタ定義で指定できます。 |
|
|
||
|
|