8.4 構成済参照構成ドメイン設定

参照構成ドメインのデフォルト設定は、ほとんどのシナリオに適しています。ただし、Oracle SOA固有のSOADataSource接続プール・サイズ(デフォルト値150)およびデータベースのprocesses(デフォルト値1500)パラメータをチューニングして、高負荷をサポートする必要があるというエラーが表示されることがあります。次に例を示します。
  • No resources currently available in pool SOADataSource to allocate to applications
  • TNS:listener does not currently know of service requested in connect descriptor

processesパラメータ値を増やす場合、データベース・ホストがこの変更をサポートできることを確認します。そうでなければ、メモリー不足エラーが発生し、データベースがクラッシュする可能性があります。

Oracle WebLogicの設定

次の表に、Oracle WebLogicの構成済参照構成ドメインの設定を示します。

表8-1 Oracle WebLogicの設定

パラメータ

構成済値

説明と構成

JTA timeout

120

トランザクション・タイムアウト値の秒数です。この時間が経過した後(begin()からカウント)に、トランザクションがactive状態の場合、ロールバックされます。

トランザクションがprepared状態になると、タイムアウト・パラメータは適用されず、すべてのリソースがコミットされるまでトランザクションは再試行されます。

『Fusion Middleware ControlによるOracle WebLogic Serverの管理』ドメインのJTA設定の構成に関する項を参照してください。

Http Logging

拡張ログ設定を使用

拡張ログ・フォーマットでは、記録されている情報をカスタマイズできます。定義した各サーバー・インスタンスまたは各仮想ホストに対して、HTTPアクセス・ログの動作を定義する属性を設定できます。

『Oracle WebLogic Serverサーバー環境の管理』拡張ログ・フォーマットを使用したHTTPアクセス・ログに関する項を参照してください。

Oracleテクノロジ・アダプタの設定

次の表に、Oracleテクノロジ・アダプタの構成済参照構成ドメインの設定を示します。

表8-2 Oracleテクノロジ・アダプタの設定

パラメータ 構成済値 説明と構成
接続プール構成

すべてのアダプタ initial-capacity:0

データベース・アダプタ initial-capacity:1

ファイル・アダプタ max-capacity:1000

FTP、JMS、AQおよびMQアダプタのmax-capacity:200

データベース・アダプタ max-capacity:300

すべてのアダプタ shrink-frequency-seconds:60

『テクノロジ・アダプタの理解』接続プールの作成に関する項を参照してください。

インバウンド・アダプタのスレッド構成

ファイル/FTPアダプタ(JCA): ThreadCount=-1

MQアダプタ(JCA): InboundThreadCount=1

データベース・アダプタ(JCA): NumberOfThreads=1

JMSアダプタ(バインディング・プロパティ): adapter.jms.receive.threads:1

AQアダプタ(バインディング・プロパティ): adapter.aq.dequeue.threads=1

JCAの記載があるプロパティは、JCAファイルで構成を設定します。
  • ファイル・アダプタ: <property name="ThreadCount" value="-1"/>
  • MQアダプタ: <property name="InboundThreadCount" value="1"/>
  • データベース・アダプタ: <property name="NumberOfThreads" value="1"/>
バインディング・プロパティとしてマークされたプロパティは、Oracle SOA Suitecomposite.xmlでバインディング・プロパティとして設定するか、Oracle Service Busの動的エンドポイント・プロパティとして設定します。次に例を示します。
<service name="Inbound"> 
<interface.wsdl interface="http://xmlns...#wsdl.interface Inbound_PortType)"/> 
<binding.jca config="Inbound_jms.jca"> 
<property name="adapter.jms.receive.threads">1</property> 
</binding.jca> 
</service>
JMSアダプタにおける単一ポーリング・サイクル adapter.jms.SinglePollCycle=true
Oracle SOA Suiteのcomposite.xmlでOracle SOA Suiteのバインディング・プロパティとして設定するか、またはOracle Service Busで動的エンドポイント・プロパティとして設定します。次に例を示します。
<service name="Inbound"> 
<interface.wsdl interface="http://xmlns...#wsdl.interface Inbound_PortType)"/> 
<binding.jca config="Inbound_jms.jca"> 
<property name="adapter.jms.SinglePollCycle">truee</property>
</binding.jca> 
</service>
Oracle DatabaseアダプタでMaxTransactionSizeおよびMaxRaiseSizeを設定

MaxRaiseSize=1

MaxTransactionSize=10

データベースのアクティブ化指定(インバウンド)用にJCAファイルで設定します。
<property name="MaxRaiseSize" value="1"/>
<property name="MaxTransactionSizee" value="10"/>

Oracle FileアダプタおよびFTPアダプタのPublishSizeおよびChunkSize

PublishSize=1

ChunkSize=1000

インバウンド・ファイルおよびFTPアクティブ化仕様でJCAプロパティとして、デバッチ処理の一部として構成します。次に例を示します。
<property name="PublishSize" value="1"/>
『テクノロジ・アダプタの理解』ファイルのデバッチ処理に関する項を参照してください。
ChunkSizeを構成して、ファイルまたはFTPアダプタ・チャンク相互作用機能とともに使用します。次に例を示します。
<property name="ChunkSize" value="1000"/>
『テクノロジ・アダプタの理解』ファイルのChunkedReadに関する項およびOracleファイル・アダプタのチャンク読取りに関する項を参照してください。

インバウンドの再試行

jca.retry.count=5

jca.retry.interval=2

jca.retry.backoff=2

バインディング・プロパティとしてOracle SOA Suitecomposite.xmlに設定するか、動的エンドポイント・プロパティとしてOracle Service Busに設定します。次に例を示します。
<service name="Inbound"> 
<interface.wsdl interface="http:// xmlns...#wsdl.interface(Inbound_PortType)"/> 
<binding.jca config="Inbound_db.jca"> 
<property name="jca.retry.count">5</property> 
<property name="jca.retry.interval">2</property> 
<property name="jca.retry.backoff">2</property> 
</binding.jca> 
</service>

ドメイン・レベルの設定

次の表に、構成済ドメイン・レベルの参照構成ドメインの設定を示します。

表8-3 ドメイン・レベルの設定

パラメータ 構成済値 説明と構成

XX:+HeapDumpOnOutOfMemoryError

-XX:+HeapDumpOnOutOfMemoryError

Javaヒープからの割当てが不足する場合に、ヒープ・ダンプを生成するようJava HotSpot VMに指示します。このオプションでは問題が発生するため、OutOfMemoryError例外が表示されるまでの時間が長い本番システムでこのオプションを使用できます。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

+UnlockCommercialFeatures

-XX:+UnlockCommercialFeatures

これを使用して、商用機能のロックを解除します。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Xms -Xmx

8g (管理対象サーバー)

フラグXmxはJava仮想マシン(JVM)の最大メモリー割当てプールを指定し、Xmsは初期メモリー割当てプールを指定します。これを設定すると、JVMはXms量のメモリーで起動され、最大Xmx量のメモリーを使用できます。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Xms -Xmx

4g (管理サーバー)

フラグXmxはJava仮想マシン(JVM)の最大メモリー割当てプールを指定し、Xmsは初期メモリー割当てプールを指定します。これを設定すると、JVMはXms量のメモリーで起動され、最大Xmx量のメモリーを使用できます。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dweblogic.http.client.defaultReadTimeout

60000

WebLogic URLConnectionで使用されるプロトコル・ハンドラのデフォルトの読取りタイムアウトを指定します。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dweblogic.http.client.defaultConnectionTimeout

5000

WebLogic URLConnectionで使用されるプロトコル・ハンドラのデフォルトの接続タイムアウトを指定します。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-DHTTPClient.socket.connectionTimeout

5000

このプロパティはHTTPClient.socket.connectionTimeoutのFusion Applications構成ルールです。これは、接続が確立されるまで、HTTPクライアント接続タイムアウトをミリ秒単位で設定します。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dweblogic.security.SSL.minimumProtocolVersion

TLSv1.2

SSLハンドシェイクの開始時に、SSLピアは両方のピアがサポートする最も高いプロトコル・バージョンを判断します。ただし、SSL接続で有効なSSLとTLSの最小サポート・バージョンを制限するようWebLogic Serverを構成することもできます。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-DHTTPClient.socket.readTimeout

60000

このプロパティはHTTPClient.socket.readTimeoutのFusion Applications構成ルールです。HTTPクライアント読取りタイムアウト(ミリ秒)を設定します。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dweblogic.MaxMessageSize

30000000

プロトコル固有の設定またはカスタム・チャネル設定によってオーバーライドされないかぎり、サポートされているすべてのプロトコルで受信されるメッセージにおいて許容される最大バイト数。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Doracle.osb.dms

off

Oracle Service BusのDMSモニターを無効にします。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

XX:StringTableSize

-XX:StringTableSize=1000003

文字列プール・マップのサイズを設定するJVMプロパティ。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dcom.ibm.mq.cfg.TCP.Connect_Timeout

5

OSB MQのトランスポート/SOA MQアダプタにのみ適用されます。IBM MQサーバーへの接続を待機する秒数。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dcom.ibm.mq.cfg.MQRCVBLKTO

5

OSB MQのトランスポート/SOA MQアダプタにのみ適用されます。IBM MQサーバー接続が確立されると、クライアントがレスポンスを待機する秒数を表します。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dsoa.payload.threshold.kb

 

10000

Oracle SOA Suite/Oracle Service Busでは最大ペイロード・サイズを使用できます(Oracle Service BusのHTTP/MQ/JMS/トランスポートのみに適用)。-Dsoa.refconfig.enabled=falseの場合は、設定できません。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dsoa.refconfig.enabled

true

参照構成ドメイン設定を有効にします。このJVMプロパティはSOA参照構成ドメインの親プロパティです。たとえば、このプロパティがfalseで、-Dsoa.payload.threshold.kbがまだ10000に設定されている場合、-Dsoa.refconfig.enabled=falseであるためにペイロード制限は開始されません。

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

-Dsoa.attachment.threshold.kb

1000000

Oracle SOA Suite/Oracle Service Busで許容される最大添付サイズ(Oracle Service BusのHTTPビジネス・サービスにのみ適用)。-Dsoa.refconfig.enabled=falseの場合、これは無効です

MW_HOME/soa/common/bin/setSOARefConfigEnv.shに設定します(Windowsの場合は.cmd)。

Oracle Service Busの設定

次の表に、Oracle Service Busの構成済参照構成ドメインの設定を示します。

表8-4 Oracle Service Busの設定

パラメータ 構成済値 説明と構成

SBDefaultRequestWorkManager

-

ワーク・マネージャのプロパティ。MQおよびJMS以外の新規作成されたすべてのプロキシは、ディスパッチ・ポリシーに対してデフォルトでこのワーク・マネージャを使用します。

ワーク・マネージャに関する項を参照してください

MaxThreadsConstraint-SBDefaultRequestWorkManager

200

SBDefaultRequestWorkManagerは、ワーク・マネージャの最大スレッド数制約に関連付けられます。

ワーク・マネージャ: 最大スレッド数制約: 構成に関する項を参照してください

MinThreadsConstraint-SBDefaultRequestWorkManager

2

SBDefaultRequestWorkManagerは、ワーク・マネージャの最小スレッド数制約に関連付けられます。

ワーク・マネージャ: 最小スレッド数制約: 構成に関する項を参照してください

SBDefaultRequestWorkManagerMQJMS

-

ワーク・マネージャのプロパティ。新規作成されたすべてのJMSプロキシとMQプロキシは、ディスパッチ・ポリシーに対してデフォルトでこのパラメータを使用します。

グローバル・ワーク・マネージャの作成に関する項を参照してください

MinThreadsConstraint-SBDefaultRequestWorkManagerMQJMS

2

SBDefaultRequestWorkManagerMQJMSは、JMSおよびMQプロキシのワーク・マネージャの最大スレッド数制約に関連付けられます。

ワーク・マネージャ: 最小スレッド数制約: 構成に関する項を参照してください

MinThreadsConstraint-SBDefaultResponseWorkManagerMQJMS

3

SBDefaultResponseWorkManagerは、JMSおよびMQプロキシのワーク・マネージャ最小スレッド制約に関連付けられます。

ワーク・マネージャ: 最小スレッド数制約: 構成に関する項を参照してください

HTTPビジネス・サービス

接続タイムアウト: 5秒

読取りタイムアウト: 30秒

再試行回数: 1

再試行間隔: 15秒

ビジネス・サービスの構成については、ビジネス・サービスのトランスポート・プロトコルの構成に関する項を参照してください。

HTTPトランスポートを使用するビジネス・サービスの構成は、HTTPトランスポートを使用するビジネス・サービスの構成に関する項を参照してください。

JMSビジネス・サービス

再試行回数: 1

再試行間隔: 15秒

ビジネス・サービスの構成については、ビジネス・サービスのトランスポート・プロトコルの構成に関する項を参照してください。

JMSトランスポートを使用するビジネス・サービスの構成は、JMSトランスポートを使用するビジネス・サービスの構成に関する項を参照してください。

MQビジネス・サービス

再試行回数: 1

再試行間隔: 15秒

ビジネス・サービスの構成については、ビジネス・サービスのトランスポート・プロトコルの構成に関する項を参照してください。

MQトランスポートの詳細は、MQトランスポートの使用に関する項を参照してください。

xbus.ha.dead_letter_queue.jmsprovider.ConnectionFactory

xbus.ha.dead_letter_queue.jmsprovider.ConnectionFactory

キュー名: ha_jms_dead_letter_queue

JNDI名: ha_jms_dead_letter_queue

このプロパティは、JMSトランスポートへの受信メッセージのサイズが、-Dsoa.payload.threshold.kbで設定された許容サイズを超える場合に、参照構成ドメインのキューへのメッセージのバック・アウトに使用されます

Oracle SOA固有の設定

次の表に、Oracle SOAの構成済参照構成ドメインの設定を示します。

表8-5 Oracle SOA固有の設定

パラメータ 構成済値 説明と構成

SOAワーク・マネージャ

SOAIncomingRequests_maxThreads

60

ワーク・マネージャの最大スレッド制約パラメータ。このパラメータは、受信クライアント・リクエストを処理する同時スレッドの数を制限します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 左側のメニューから「環境」を選択し、次に「ワーク・マネージャ」を選択します。

  3. 「ワーク・マネージャのサマリー」ページで、SOAIncomingRequests_maxThreadsを検索します

SOAワーク・マネージャ

SOAInternalProcessing_maxThreads

145

ワーク・マネージャの最大スレッド制約パラメータ。このパラメータは、内部プロセスの同時スレッド数を制限します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 左側のメニューから「環境」を選択し、次に「ワーク・マネージャ」を選択します。

  3. 「ワーク・マネージャのサマリー」ページで、SOAInternalProcessing_maxThreadsを検索します

SOALocalTxDataSource (最大接続数)

150

データ・ソースの接続プール・サイズ。このパラメータは、SOAプロセスに使用可能な同時ローカル・データベース接続の総数を決定します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 左側のメニューから「環境」「データ・ソース」の順に選択します。

  3. データ・ソースの「構成」ページで、SOALocalTxDataSourceページを選択します。

  4. 「接続プール」タブを選択し、スクロールして「最大容量」属性を見つけます。

SOADataSource (最大接続数)

150

データ・ソースの接続プール・サイズ。このパラメータは、SOAプロセスに使用可能な同時XAデータベース接続の総数を決定します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 左側のメニューから「環境」「データ・ソース」の順に選択します。

  3. データ・ソースの「構成」ページで、SOADataSourceページを選択します。

  4. 「接続プール」タブを選択し、スクロールして「最大容量」属性を見つけます。

イベント配信ネットワーク(EDN)構成:

  • PollTimeoutMillisec (JMSアダプタのポーリング・タイムアウト)
  • default_EdnConsumer_minThreads_1 (SOA_EDN_WMmin-thread-constraint)
  • ThreadsPerSubscriber

PollTimeoutMillisec: 10ミリ秒

default_EdnConsumer_minThreads_1: 4

ThreadsPerSubscriber: 1

PollTimeoutMillisec (デフォルトは10ミリ秒)を使用すると、ユーザーはインバウンド・ポーラーがサブスクライバからのイベントを同期的に受信するために使用する時間をミリ秒で指定できます。これは、イベントを受信しない場合にポーラーからのコールがタイムアウトになった後の時間です。

PollTimeoutMilliSecを構成するには:

  1. Oracle WebLogic Server Enterprise Managerにログインします。

  2. 「WebLogicドメイン」の下の「システムMBeanブラウザ」を選択します。

  3. EDNConfig MBeanを検索し、PollTimeoutMilliSec属性を変更します。

EDN workmanagerはこの最小スレッドに準拠しています。

EDNに対する負荷が高い場合、負荷を処理するEDN消費容量が十分でないため例外エラーが発生する可能性があります。default_EdnConsumer_minThreads_1およびThreadsPerSubscriber EDNプロパティの値を増やします。

default_EdnConsumer_minThreads_1を構成するには:

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 左側のメニューから「環境」を選択し、「ワーク・マネージャ」を選択します。

  3. 「ワーク・マネージャのサマリー」画面でdefault_EdnConsumer_minThreads_1を検索します。

データベースの設定

次の表に、データベースの構成済参照構成ドメインの設定を示します。

表8-6 データベースの設定

パラメータ 構成済値 説明と構成

distributed_lock_timeout

1400

分散トランザクションがロックされているリソースを待機する時間(秒)を指定します。

データベースのバウンスが必要: はい

問合せ: select name, value from v$parameter where name = 'distributed_lock_timeout';

システム・ユーザー資格証明を使用して、MW_HOME/soa/common/tools/refconfig/soaDBParams.py (Windowsの場合は.cmd)を実行します。

db_securefile

ALWAYS

SecureFilesとしてLOBファイルを処理するかどうかを指定します。

データベースのバウンスが必要: いいえ

問合せ: select table_name from user_lobs where SECUREFILE = 'YES'

システム・ユーザー資格証明を使用して、MW_HOME/soa/common/tools/refconfig/soaDBParams.py (Windowsの場合は.cmd)を実行します。

processes

600

Oracleに同時に接続できるオペレーティング・システム・ユーザー・プロセスの最大数を指定します。この値により、ロック、ジョブ・キュー・プロセス、パラレル実行プロセスなどのすべてのバックグラウンド・プロセスが使用できます。

データベースのバウンスが必要: はい

問合せ: select name,value from v$parameter where name = 'processes';

システム・ユーザー資格証明を使用して、MW_HOME/soa/common/tools/refconfig/soaDBParams.py (Windowsの場合は.cmd)を実行します。