Oracle Connectには、パフォーマンスを改善できるいくつかのチューニング・パラメータが含まれています。特に、デーモンを構成して、IBM z/OSプラットフォームとクライアント間の通信を最適化できます。
さらに、バインディング環境をチューニングして、リクエスト処理を最適化できます。
この章の構成は、次のとおりです。
デーモン・ワークスペースは、サーバー・プロセスをクライアントに割り当てる役割を果たします。クライアント・リクエストに対してサーバー・プロセスが常に使用できるように、ワークスペースを構成してサーバー・プロセスのプールを使用できます。
Oracle Studioを使用して、デーモンおよびデーモン・ワークスペース・パラメータを保守し、プール内のサーバー・プロセスの割当てや管理を制御できます。
また、複数のデーモン・ワークスペース構成を使用できます。このため、複数のワークスペースを作成して異なるアダプタで使用できます。
新規のデーモン構成を追加するには、Oracle Studioを使用します。様々な状況に対して、異なるデーモン構成を設定できます。
新規のデーモン・ワークスペース構成を追加する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machines」フォルダを開きます。
使用するマシンを開きます。
「Daemons」フォルダを開きます。このコンピュータで使用可能なデーモン構成がリストされます。
「IRPCD」を右クリックして「New Workspace」を選択します。「New Daemon Workspace」画面が表示されます。
新規ワークスペースの名前を指定し、オプションで説明を指定します。
このワークスペースにデフォルトを設定するか、または既存のワークスペースのプロパティをコピーするかを指定します。
既存のワークスペースのプロパティをコピーするには、「Ellipsis」をクリックし、プロパティのコピー元のワークスペースを選択します。
「Next」をクリックします。「Select Scenario」画面が表示されます。
「Application Server using connection pooling」を選択して「Next」をクリックします。
引続きウィザードに従って、ワークスペースに関する必要な値を指定します。
「Finish」をクリックします。
「IRPCD」デーモン・ノードにワークスペースが表示されます。
ワークスペースを編集するには、次の表に示すタブを使用します。
表8-1 ワークスペース・プロパティのタブ
タブ | 説明 |
---|---|
General |
サーバー・タイプ、ワークスペースの起動に使用されるコマンド・プロシージャ、このワークスペースに関連付けられているバインディング構成(この構成により、アクセスできるデータ・ソースとアプリケーションが決まります)、タイムアウト・パラメータおよびロギング情報などの一般情報を指定します。 |
Server Mode |
ワークスペースによって起動し、クライアントに割り当てられたサーバーの操作を制御する機能など、ワークスペース・サーバー情報が格納されています。 |
Security |
管理権限、ユーザー・アクセス、ワークスペースへのアクセスで使用可能なポート、およびワークスペース・アカウント仕様を指定します。 |
これらのタブには、Oracle Studioを使用して次のようにアクセスします。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machines」フォルダを開いて、ワークスペースを編集するマシンを開きます。
「Daemons」フォルダを開きます。このコンピュータで使用可能なデーモンがリストされます。
「IRPCD」デーモンを開きます。デーモン・ワークスペースがリストされます。
編集するワークスペースを右クリックして「Open」を選択します。
編集する情報が含まれているタブをクリックします。これらのタブ、およびタブに含まれるフィールドの詳細は、「ワークスペース」を参照してください。
ワークスペースを編集した後、「Save」をクリックします。
サーバー・モードによって、デーモンが新規プロセスを起動する方法が決まります。デーモンでは、次のサーバー・モードをサポートしています。
singleClient: 各クライアントが専用のサーバー・プロセスを受け取ります。サーバー・プロセスが実行されるアカウントは、クライアントのログイン情報、または特定のサーバー・ワークスペースによって決定されます。
このモードを使用すると、サーバーは特定のユーザー・アカウントで実行され、各クライアントは独立して稼働できます(各クライアントが独自のプロセスを受け取るため)。ただし、このサーバー・モードを使用すると、プロセスの起動時間に起因する高いオーバーヘッドが発生し、大量のサーバー・リソースを使用する場合があります(同時クライアントと同じ数のサーバー・プロセスが必要になるため)。
multiClient: 複数のクライアントが1つのサーバー・プロセスを共有し、クライアントは逐次処理されます。このモードを使用すると、サーバー・プロセスが初期化されているため、オーバーヘッドが小さくなります。ただし、複数のクライアントが同じサーバー・プロセスを共有するため、特に、長時間かかる問合せを発行した場合など、相互に影響を与えることがあります。
1つのプロセスを共有するクライアントの数は、「Clients per server limit」(現行ワークスペースの1つのサーバー・プロセスが受け入れる同時クライアントの最大数)で決定します。
reusable: これはsingleClientモードの拡張です。クライアント処理が終了した後、サーバー・プロセスを終了せずに別のクライアントで使用できます。これによって、起動時間が短縮され、アプリケーション起動のオーバーヘッドも小さくなります。
このモードを使用すると、サーバーが初期化されているため、singleClientモードのようにオーバーヘッドが高くなりません。ただし、このサーバー・モードの場合は、大量のサーバー・リソースを使用する場合があります(同時クライアントと同じ数のサーバー・プロセスが必要になるため)。
他のモードを設定する場合は、「Reuse limit」
の値(特定のサーバー・プロセスを再利用できる最大回数、つまり、サーバー・プロセスが終了するまでにこのサーバー・プロセスを利用できるクライアントの数)を指定してプロセスを再利用できる回数を設定すると、サーバー・プロセスが再利用可能になります。サーバーを再利用することによって、初期化を繰り返す必要がなくなるため、パフォーマンスが向上します。ただし、長期にわたり再利用を繰り返すと、メモリー・リークが発生するリスクが高くなります。「Reuse limit」
フィールドのデフォルト値は「None」
で、再利用回数に制限がないことを示します。
次の図に示すように、デーモン・ワークスペース・エディタの「Server Mode」タブでサーバー・モードを設定します。
サーバー・モードを使用するとき、サーバー・プロセスのプールを指定できます。サーバー・プロセスは、デーモンの起動時に起動し、プール内で保守されます。サーバー・プロセスを新規クライアント・リクエストで使用する場合は、プールから使用できます。これによって、初期化の時間がかかりません。クライアントがサーバー・プロセスをリクエストするたびに新規サーバー・プロセスを起動するのではなく、クライアントは使用可能なプロセスのプールからすぐにプロセスを受け取ります。クライアントが処理を終了すると、使用されたサーバー・プロセスは終了するか、再利用可能なサーバーが指定されている場合はプールに戻されます。
サーバー・プロセスのプールを設定するには、「Server Mode」タブで次のパラメータを指定します。
Port Range: ワークスペースにアクセスする特定のファイアウォール・ポートの範囲を選択します。サーバー・プロセスの起動時に、このワークスペースで使用できるポートの範囲を決定します。Oracle Connectがファイアウォールを介してアクセスできるようにポート番号を制御する場合は、このオプションを使用します。
次のフィールドにポートの範囲を入力します。
From: ポート範囲の最大のポート番号を入力します。
To: ポート範囲の最小のポート番号を入力します。
Use Default Port Range: デーモンに定義されているポート範囲を使用する場合には、これを選択します。
Maximum number of server processes: 同時に実行できるサーバー・プロセスの最大数を入力します。
Limit server reuse: 再使用できるサーバーの数を制限するには、これを選択します。これを選択すると、「Reuse limit」パラメータが使用可能になります。
「Limit server reuse」を選択する場合は、チェック・ボックスの隣のフィールドに、サーバーを再使用できる回数の最大値を入力します。サーバー・プロセスで受け入れられるクライアントの最大数を選択します。
1クライアントのサーバーは、その(単一の)クライアントの切断後に再利用できます。サーバーを再利用することによって、初期化を繰り返す必要がなくなるため、起動パフォーマンスが向上します。
「Limit server reuse」パラメータが選択されていない場合、このパラメータは使用できません。
サーバー・モードの値が「singleClient」の場合、このパラメータは使用できません。
Limit Concurrent clients per server: 現在のワークスペース・プロセスに対して、サーバーが受け入れられるクライアントの数を制限する場合には、これを選択します。
これを選択しないと、クライアントの数は無制限になります。
「Limit concurrent clients per server」を選択する場合は、現在のワークスペースのサーバー・プロセスで受け入れられるクライアントの最大数をチェック・ボックスの隣のフィールドに入力します。このフィールドのデフォルトは「None」で、各サーバーのクライアント数が制限されないことを示します。このフィールドは、サーバーのモード値が「multiClient」または「multiThreaded」の場合に使用できます。
Specify Server Priority: サーバーの優先順位を入力します。たとえば、オンライン・トランザクション処理を使用したアプリケーションのワークスペースには、問合せ処理のみを要求するワークスペースより高い優先順位を割り当てることができます。数字が小さいほど、優先順位が高くなります。たとえば、優先順位1
のワークスペースは、優先順位2
のワークスペースよりも優先順位が高くなります。
注意: 「Use default server priority」が選択されている場合、このオプションは使用できません。
Use default priority: 優先順位を0(ゼロ)に設定するには、これを選択します。このワークスペースに特定の優先順位はありません。「Specify Server Priority」パラメータに優先順位を設定する場合は、このチェック・ボックスの選択を解除します。
Keep when daemon ends: デーモンが停止すると、そのデーモンが起動したすべてのサーバーが、アクティブな状態であっても停止されるようにする場合は、これを選択します。デーモンの停止後もそのワークスペースのサーバーをアクティブな状態のままにする場合は、これを選択します。これを選択する場合は、システム・オペレータまたはマネージャの責任で、サーバーを最終的に停止してください。これは、システム・レベルで実行する必要があります。
Number of prestarted servers in pool: デーモンの起動時にこのワークスペースに対して事前起動されるサーバー・プロセス数を入力します。新規クライアント・プロセスでこれらのサーバー・プロセスを使用できるため、初期化時間が最小限になります。クライアントがサーバー・プロセスをリクエストするたびに新規サーバー・プロセスを起動するのではなく、デーモンは使用可能なサーバーのプールからクライアントにサーバーをすぐに割り当てます。使用可能なサーバー・プロセスの数が「Minimum number of available servers」フィールドに指定した値を下回ると、デーモンは使用可能なサーバーが指定の数に達するまでサーバー・プロセスを再度起動します。このパラメータのデフォルトは0
(ゼロ)で、このワークスペースに対して事前起動されるサーバーがないことを示します。
Number of spare servers: Oracle Connectのデーモンが新規サーバー・プロセスの作成を再開する前に、事前起動されるサーバーのプール内に存在するサーバー・プロセスの最小数(前述の「Initial number of servers」フィールド値で指定した値以内)を入力します。このパラメータを「Initial number of servers」フィールド値より大きい値に設定すると、デーモンでは、「Initial number of servers」フィールドで指定した値と同じ値とみなします。この場合、サーバー・プロセスがプールから削除されてクライアントに割り当てられるたびに、新規サーバー・プロセスが起動してプールに追加されます。このパラメータのデフォルトは0
(ゼロ)で、使用可能なサーバーがない場合のみ新規サーバーが作成されることを示します。
Number of sub-tasks: デーモンの起動時に、このワークスペースに対して事前起動されるサーバーのサブタスク数を入力します。前述のようにサーバー・プロセスのプールを設定する以外に、このパラメータを指定して追加のサーバー・プロセスをサブタスクとして設定できます。サーバーを10、事前起動されるサブタスクを10に設定すると、100のタスクが起動します(1つのプロセスにつき10のサブタスク)。
バインディング構成には、次の情報が含まれます。
環境設定。バインディングで定義されたすべてのアダプタで使用する環境を構成するために使用されます。
現行コンピュータのアプリケーション・アダプタ。
Oracle Studioで環境設定を構成する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machines」フォルダを開いて、バインディングを構成するマシンを開きます。
「Bindings」フォルダを開きます。このコンピュータで使用可能なバインディングがリストされます。
「NAV」を右クリックして「Open」を選択します。
「Environment」タブで、必要に応じて環境設定を編集します。環境設定を編集するには、プロパティ・カテゴリを開き、編集する値をクリックします。
次の図に、バインディングの「Environment」タブを示します。
バインディング環境は、次のカテゴリに分類されます。
次の表に、デバッグ操作とロギング操作を定義するパラメータを示します。
表8-2 「Debug」のパラメータ
パラメータ | 説明 |
---|---|
これを選択すると、バックエンド・アダプタに送信された入力XML、およびバックエンド・アダプタによって戻された出力XMLがログに書き込まれます。 |
|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
これを選択すると、一般トレース情報がログに記録されます。デフォルトでは、エラー・メッセージのみがログに書き込まれます。 注意: デフォルト設定を変更すると、パフォーマンスが低下する場合があります。 |
|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
これ選択すると、ログの各イベント行にタイムスタンプが追加されます。 |
|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
バイナリXMLログ・レベルをリストから選択します。次のログ・レベルから選択できます。
|
|
メッセージ用ログ・ファイルの高位修飾子。次のタイプのメッセージがログに書き込まれます。
|
|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
これを選択すると、トランザクションに関する追加情報をトランザクション・マネージャがログに書き込みます。 |
次の表に、テンポラリ・ファイルの書き込みに関連する一般的な操作を定義するパラメータを示します。
表8-3 「General」のパラメータ
パラメータ | 説明 |
---|---|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
テンポラリ・ファイルが書き込まれるディレクトリ。ハッシュ結合で使用したりファイルのソート用に作成されるテンポラリ・ファイルも含まれます。デフォルトは、現行の高位修飾子です。 |
|
2桁の年を4桁の年に変換する方法を決定します。 固定基準年: この方法は、1900年に近い古いライブ・データがある場合に適しています。この場合、ユーザーは現行の2桁書式を維持する必要があるためです。 ユーザーがこの基準日を変更できるのは、古い日付がデータソースから削除された場合のみです。 移動基準年: |
|
クライアント・コンピュータのメモリー・バッファに使用されるバイト数を指定します。これは、Oracle Connectのクライアント/サーバーで先読みデータを格納するために使用します。デフォルトは |
次の表に、グローバリゼーション・サポートを定義するパラメータを示します。
表8-4 「Language Settings」のパラメータ
パラメータ | 説明 |
---|---|
アプリケーション言語を識別します。デフォルトのコードページは、このパラメータで指定された値に基づいて選択されます。詳細は、付録D「グローバリゼーション設定」を参照してください。 |
|
グローバリゼーション・サポートで、ワークスペースのコードページを識別するために使用します。詳細は、付録D「グローバリゼーション設定」を参照してください。 |
|
データ型が
デフォルトは |
「Modeling」のパラメータは、OracleAS Adapter for IMS/TMでは使用できません。
次の表に、トランザクションのサポートを定義するパラメータを示します。
表8-5 「Transaction」のパラメータ
パラメータ | 説明 |
---|---|
これを選択すると、トランザクションに関する追加情報がトランザクション・マネージャのログ・ファイルに書き込まれます。 |
|
これを選択すると、トランザクションがまだ開いている間に接続が閉じた場合、データソースに対して開かれているすべてのシングルフェーズ・コミット・トランザクションがコミットされます。 |
|
これを選択すると、2フェーズ・コミット機能が無効になります。2フェーズ・コミットをサポートするドライバでも無効になります。 |
|
このパラメータは、OracleAS Adapter for IMS/TMでは使用できません。 |
|
トランザクションの使用時にアクティビティを記録するログ・ファイルの高位修飾子と名前。RRSがz/OSプラットフォーム上で稼働していない場合、 |
|
トランザクションが起動した後、そのトランザクションでリカバリ操作が試行可能になるまでの時間(分単位)。デフォルトは |
|
エラーを返さずにトランザクションの完了を待機する時間を指定します。 このパラメータはRECOVERYを実行するときにも使用されます。その場合は、最後のトランザクション・アクティビティから、強制アクティビティを実行できるようになるまでの待ち時間を分で表しています。 |
|
次のいずれか1つを選択: |
|
No conversion: すべてのトランザクションを送信済のままにしておく場合には、これを選択します。デフォルトでは、これが選択されます。 Convert all to distributed: すべての単純トランザクションを分散トランザクションに変換する場合には、これを選択します。 Convert all to simple: すべての分散トランザクションを単純トランザクションに変換する場合には、これを選択します。 |
次の表に、XMLサポートを定義するパラメータを示します。
表8-6 「XML」カテゴリのパラメータ
パラメータ | 説明 |
---|---|
メモリーに保持するXML文書の最大サイズを指定します。デフォルトは |
|
別のコンピュータに渡すXML文書の最大サイズを指定します。デフォルトは 注意: このプロパティのこの値を増やすと、デーモンの「Maximum XML in memory」プロパティの値も増やすことが必要になる場合があります。デーモンの詳細は、「制御」を参照してください。 |
|
内部通信バッファの最大サイズを入力します。デフォルト値( |
|
XMLで使用する日付フォーマットを入力します。オプションは次のとおりです。
|
|
これを選択すると、不正なXML文字が |
|
これを選択すると、レコード・フォーマットが固定の場合に、埋め込まれた空白がXML文字列の列から取り除かれます。デフォルトでは、このオプションが選択されており、埋め込まれた空白が固定サイズの文字の列に合わせて取り除かれます。この動作が不要な場合は、このチェック・ボックスの選択を解除します。 |
アダプタ構成はプラットフォーム間で移行できます。構成情報は、最初にソース・プラットフォームのOracle Connectリポジトリに格納され、XMLファイルにエクスポートされてから、ターゲット・プラットフォームにインポートできます。
構成を移行するとき、ソース・プラットフォームに固有のファイル名やパスは、ターゲット・プラットフォームの有効なファイルに変更する必要があることに注意してください。
Oracle Studioを使用してアダプタ構成を移行する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
「Design」パースペクティブの「Configuration」ビューで「Machines」フォルダを開きます。
Configuration Explorerで、必要なコンピュータを右クリックし、「Export XML definitions」を選択します。
コンピュータのXML表現とその完全な構成が格納されているXMLファイルのパスと名前を指定します。
XML定義のパスをターゲット・プラットフォームで必要なパスに編集します。たとえば、serverLogFileの設定は、プラットフォームに応じて変更が必要になる場合があります。
「Oracle StudioでのIBM z/OSプラットフォームの設定」の説明に従い、Oracle Studioでソース・プラットフォームと同じ設定方法でターゲット・プラットフォームを設定します。
Configuration Explorerで、ターゲット・コンピュータを右クリックし、「Import XML definitions」を選択します。
XMLファイルをターゲット・プラットフォームにインポートします。
Oracle Connectは、プラットフォームのセキュリティ・システムの範囲内で動作します。たとえば、RACFがインストールされたz/OSコンピュータでは、ワークスペースのサーバー・モードがマルチタスクに設定されている場合、クライアント接続に応じてアドレス空間のタスクごとにTRACROUTE VERIFY
が実行されます。
さらに、Oracle Connectでは次のセキュリティが提供されています。
バイナリXML暗号化メカニズム。次のようにしてアクティブ化されます。
クライアントからサーバーへの最初のメッセージには、事前定義済の共有鍵が含まれます。接続文字列には鍵名と鍵値が含まれます。サーバーは、ネイティブ・オブジェクト・ストア(NOS)から、クライアントから渡された鍵名の鍵値を取得します。
サーバーは任意の128ビットRC4セッション鍵を生成し、これは共有鍵で暗号化されてクライアントに戻されます。事前定義済の共有鍵がない場合、事前定義済のハードコード鍵が使用されます(この鍵はクライアントおよびサーバーの両方でハードコードされます)。
セッション全体が暗号化されているかどうかにかかわらず、パスワードが送信される場合は、RC4の128ビット・セッション鍵を使用して常に暗号化されます。
事前定義済の共有鍵がある場合は、セッション全体が暗号化されます。そうでない場合、パスワードの交換のみが暗号化されます(ハードコードされた鍵を使用)。
資格証明: ネットワーク上で送信されるパスワードおよびユーザー名は、事前定義済のハードコードされた128ビットRC4セッション鍵を使用して暗号化されます。
デザインタイム: Oracle Studio内で、Oracle Studio自体へのアクセス権限を付与し、コンピュータ、ユーザー・プロファイルおよびワークスペースへのアクセス権限を付与するためのセキュリティ。
ランタイム: アクセス用のデーモンの制御を含めて、IMS/TMへのアクセスで使用するセキュリティ。
次の各項の説明に従って、デザインタイムのセキュリティを設定します。
Oracle Studioへのアクセスの保護については、「Oracle Studioへのパスワード・アクセスの設定」で説明します。
Oracle Studioでコンピュータを構成する権限の保護については、「管理権限を持つユーザーの指定」で説明します。
ユーザー・プロファイルへのアクセスを保護するには、Oracle Studioで該当するユーザー・プロファイルを右クリックし、「Change Master Password」を選択します。表示されたダイアログ・ボックスで、今後、特定のユーザー・プロファイルを編集する際に入力する必要があるパスワードを指定します。
ワークスペースへのアクセスを保護するには、Oracle Studioで該当するワークスペースを右クリックし、「Set Authorization」を選択します。表示されたダイアログ・ボックスで、今後、特定のワークスペースを編集する際に入力する必要がある有効なユーザーとパスワードを指定します。
ランタイム時に、セキュリティは次のように実装されます。
クライアント・リクエストでデーモンを介してレガシー・プラットフォームにアクセスする場合は、匿名アクセスが許可されるか、またはユーザー・プロファイルにコンピュータの有効なユーザー名とパスワードを入力する必要があります。J2CA 1.5 IMS/TMアダプタのuserName
プロパティとpassword
プロパティは、デーモンにアクセスするためにこの段階で使用されます。
注意: デーモンへのアクセスに使用するユーザー名は、使用するユーザー・プロファイルの名前と同じである必要があります。 |
クライアントによるアクセスは、Oracle Studioのワークスペースの「Server Mode」タブの「Server」セクションで入力したポートの範囲に従って、有効なポートを介する必要があります。詳細は、ワークスペースの「サーバー モード」の説明を参照してください。
注意: NATプロトコルを使用してファイアウォールを介したレガシー・プラットフォームへのアクセスは、コンピュータがOracle Studioに追加されたときに指定します。 |
クライアントは、サーバー・プロセスを割り当てるために、ワークスペースへの匿名アクセスが付与されるか、またはOracle Studioのワークスペースの「Security」タブの「Authorized Workspace Users」セクションにリストされる必要があります。詳細は、ワークスペースの「セキュリティ」の説明を参照してください。
デーモンの起動や停止、サーバー・プロセスの終了など、デーモンでコマンドを実行する機能を使用できるのは、Oracle Connectにデーモン管理者として登録された管理者のみです。デーモンの「セキュリティ」で説明するように、クライアントはOracle Studioのデーモンの「Security」タブで有効なデーモン管理者として登録されます。
注意: ワークスペースのレベルでのみコマンドを実行できる管理者も指定できます。ワークスペースの「セキュリティ」で説明するように、このような管理者は、ワークスペースの「Security」タブで選択します。 |
OracleAS Adapter for IMS/TMでは、グローバル・トランザクションをサポートしていません。