SIP サーブレットを実行するための環境の調整
SIP サーブレットの実行中にパフォーマンスの問題が発生する場合は、以下の 1 つ以上の調整の提案を実装することができます。
このタスクについて
以下の推奨事項は、暗黙の保証なしに、現状のまま提供されます。
手順
- Java™ 仮想マシン (JVM) の設定に、以下の変更を行います。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」>「server_name」>「Java およびプロセス管理」>「プロセス定義」>「Java 仮想マシン」とクリックします。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」>「server_name」>「Java およびプロセス管理」>「プロセス定義」>「制御」>「Java 仮想マシン」とクリックします。
- 「詳細ガーベッジ・コレクションを使用可能にする (Enable Verbose garbage collection)」を選択します。
- 「初期ヒープ・サイズ」を 1284 に設定します。
- 「最大ヒープ・サイズ」を 1284 に設定します。
- 「汎用 JVM 引数」フィールドで、次のように指定します。 -Xmn150m -Xgcpolicy:gencon -Xtgc:parallel -Xgc:scvNoAdaptiveTenure,scvTenureAge=1,stdGlobalCompactToSatisfyAllocate -Xdump:heap:events=user,request=exclusive+prepwalk+compact -Xcompactexplicitgc -XX:MaxDirectMemorySize=256000000 -Xdump:heap:events=user,request=exclusive+prepwalk+compact
- アプリケーション・サーバーの以下の JVM ログ設定を変更します。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」> 「server_name」>「Java およびプロセス管理」>「プロセス定義」>「ロギングおよびトレース」>「JVM ログ」とクリックします。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」> 「server_name」>「Java およびプロセス管理」>「プロセス定義」>「制御」>「ロギングおよびトレース」>「JVM ログ」とクリックします。
- System.out で、「ファイル・サイズの最大サイズ (File size maximum Size)」プロパティーに 20、「ヒストリー・ログ・ファイルの最大数」プロパティーに 2 を指定します。
- System.err で、「ファイル・サイズの最大サイズ (File size maximum Size)」プロパティーに 20、「ヒストリー・ログ・ファイルの最大数」プロパティーに 2 を指定します。
- 以下のノード・エージェント検出モニター・ポリシー設定を変更します。
これらの設定を変更することにより、オペレーティング・システムがハングしているかどうかを JVM が検出できるようになります。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」> 「server_name」>「Java およびプロセス管理」>「モニター・ポリシー」とクリックします。
- 「始動の最大試行回数」プロパティーを 2 に設定します。
- 「Ping 間隔」プロパティーを 30 に設定します。
- 「Ping タイムアウト」プロパティーを 60 に設定します。
- スレッド・プールを作成して、「名前」プロパティーに SipContainerPool、「最小サイズ」と「最大サイズ」の両方のプロパティーに 45 を指定します。
- SIP コンテナー設定に、以下の変更を行います。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」>「server_name」>「SIP コンテナー設定」 > 「sip_container」とクリックします。
- 「最大アプリケーション・セッション数」プロパティーを 36000 に設定します。
- 「最大メッセージ数 (平均期間)」プロパティーを 26640 に設定します。
- 「最大ディスパッチ・キュー・サイズ」プロパティーを 5220 に設定します。
- 「平均期間」プロパティーを 30000 に設定します。
- 「統計更新率」プロパティーを 3000 に設定します。
- 選択可能なスレッド・プールのリストから「SipContainerPool」を選択します。
- 「カスタム・プロパティー」>「新規」とクリックして、以下の SIP コンテナーのカスタム・プロパティーを SIP コンテナー設定に追加します。
表 1. SIP コンテナーのカスタム・プロパティー設定. この表は、SIP サーブレットのパフォーマンスを改善する必要がある場合に、リストされている SIP コンテナーのカスタム・プロパティーに指定できる設定値を示しています。 名前 値 javax.sip.max.object.pool.size 1000 javax.sip.stat.report.interval 0 max.tu.pool.size 1000 weight.overload.watermark 1 end.of.service.replication true immediate.replication false thread.message.queue.max.size 5000 bootstrap.batch.size 1000 bootstrap.blocking.delay 500 - 「SIP コンテナー設定」ページから、「SIP コンテナー・トランスポート・チェーン」>「SIPCInboundDefaultUDP」>「UDP インバウンド・チャネル (UDP 1)」>「カスタム・プロパティー」>「新規」とクリックして、以下の 2 つのカスタム・プロパティーを追加します。
表 2. UDP インバウンド・チャネル (UDP 1) のカスタム・プロパティー設定. この表は、SIP サーブレットのパフォーマンスを改善する必要がある場合に、リストされている UDP インバウンド・チャネル (UDP 1) のカスタム・プロパティーに指定できる設定値を示しています。 名前 値 sendBufferSizeSocket 3000000 receiveBufferSizeSocket 3000000
- 各プロキシー・サーバーで、プロキシー・サーバー設定に、以下の変更を行います。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」 >「プロキシー・サーバー」>「proxy_server_name」>「プロキシー・サーバー設定 (Proxy server settings)」とクリックします。
- 2 つの新しいポートを作成します。
これらのポートを追加するには、「プロキシー・サーバー」>「proxy_server_name」ページで「ポート」をクリックします。
最初のポートに、以下の設定値を指定します。- 「ユーザー定義ポート」を選択します。
- 「ポート名」フィールドに、SIP_LB_ADDRESS を指定します。
- 「ホスト」フィールドに、ロード・バランサー (クラスター) アドレスを指定します。
- 「ポート」フィールドに、5060 を指定します。
2 番目のポートに、以下の設定値を指定します。- 「ユーザー定義ポート」を選択します。
- 「ポート名」フィールドに、HTTP_LB_ADDRESS を指定します。
- 「ホスト」フィールドに、ロード・バランサー (クラスター) アドレスを指定します。
- 「ポート」フィールドに、80 を指定します。
- 「ポート」ページで、DCS_UNICAST_ADDRESS ポートの「ホスト」フィールドの値を、プロキシー・サーバーの管理ネットワークのホスト名に変更します。 このネットワークは、Distribution and Consistency Services (DCS) 通信などの WebSphere® Application Server プロセス間通信を処理します。
- 「ポート」ページで、PROXY_HTTPS_ADDRESS、PROXY_HTTP_ADDRESS、PROXY_SIPS_ADDRESS、および PROXY_SIP_ADDRESS ポートの「ホスト」フィールドの値を、プロキシー・サーバーの SIP トラフィックを処理しているネットワークのホスト名に変更します。
- 以下のカスタム・プロパティーを追加します。
以下のプロパティーを追加するには、「プロキシー・サーバー設定 (Proxy server settings)」ページで「SIP プロキシー設定」>「カスタム・プロパティー」とクリックします。
表 3. SIP プロキシー・サーバーのカスタム・プロパティー設定. この表は、SIP サーブレットのパフォーマンスを改善する必要がある場合に、リストされている SIP プロキシー・サーバーのカスタム・プロパティーに指定できる設定値を示しています。 名前 値 isSipComplianceEnabled false serverUDPInterface プロキシー・サーバーの SIP トラフィックを処理しているネットワークのホスト名。 この値が、コンテナー側インターフェースになります。 serverUDPPort 5080。このポートが、コンテナー側ポートになります。 LBIPAddr ロード・バランサー IP アドレス。このアドレスはクラスター・アドレスではありません。 SIPAdvisorMethodName オプション maxThroughputFactor 90 perSecondBurstFactor 200 burstResetFactor 120 sipProxyStartupDelay 120000 proxyTransitionPeriod 360 minDeflatorRatio 6 maxDeflatorRatio 10 keepAliveInterval 2000 keepAliveFailures 3 clusterRouteConfigUpdateDelay 60000 localOutboundTCPAddress ローカル・アウトバウンド TCP 接続の IP アドレス。 localOutboundTCPPort ローカル・アウトバウンド TCP 接続のポート番号。 receiveBufferSizeSocket 3000000 sendBufferSizeSocket 3000000 - UDP トランスポート・チェーン UDP_SIP_PROXY_CHAIN を削除します。
UDP トランスポート・チェーン UDP_SIP_PROXY_CHAIN を削除するには、「プロキシー・サーバー設定 (Proxy server settings)」ページで「SIP プロキシー・サーバー設定」>「SIP プロキシー・サーバーのトランスポート」とクリックして、UDP トランスポート・チェーン UDP_SIP_PROXY_CHAIN を選択してから、「削除」をクリックします。
- SIP プロキシー・サーバーのトランスポートの設定を変更します。
SIP プロキシー・サーバーのトランスポートの設定を変更するには、「プロキシー・サーバー」>「 proxy_server_name」ページで「SIP プロキシー・サーバー設定」>「SIP プロキシー・サーバーのトランスポート」 >「新規」とクリックしてから、新規トランスポートに以下の設定値を指定します。
- 「トランスポート・チェーン名」フィールドに SIP_LB_CHAIN を指定します。
- 「トランスポート・チェーン・テンプレート」フィールドに、proxy を指定します。
- 管理コンソールの次のページで、選択可能なオプションのリストから「既存のポートの使用」および「SIP_LB_ADDRESS」を選択します。
- HTTP プロキシー・サーバーのトランスポートの設定を変更します。
HTTP プロキシー・サーバーのトランスポートの設定を変更するには、「プロキシー・サーバー」>「proxy_server_name」ページで「HTTP プロキシー・サーバー設定」>「プロキシー・サーバーのトランスポート」 >「新規」とクリックしてから、新規トランスポートに以下の設定値を指定します。
- 「トランスポート・チェーン名」フィールドに、HTTP_LB_CHAIN を指定します。
- 「トランスポート・チェーン・テンプレート」フィールドに、proxy を指定します。
- 管理コンソールの次のページで、選択可能なオプションのリストから「既存のポートの使用」および「HTTP_LB_ADDRESS」を選択します。
- 以下のカスタム・プロパティーを UDP チャネル設定に追加します。
UDP チャネル設定に新しいカスタム・プロパティーを追加するには、「SIP プロキシー・サーバー設定」ページで、「SIP プロキシー・トランスポート・チェーン (SIP proxy transport chains)」>「UDPInboundChannel」>「カスタム・プロパティー」>「新規」とクリックします。
表 4. SIP プロキシー・トランスポート・チェーンの UDPInboundChannel カスタム・プロパティー設定. この表は、SIP サーブレットのパフォーマンスを改善する必要がある場合に、リストされている SIP プロキシー・トランスポート・チェーンの UPDInboundChannel カスタム・プロパティーに指定できる設定値を示しています。 名前 値 sendBufferSizeSocket 3000000 receiveBufferSizeSocket 3000000 - 以下のカスタム・プロパティーを HTTP プロキシー・サーバー設定に追加します。
このプロパティーを追加するには、「プロキシー・サーバー」> 「proxy_server_name」ページで、「プロキシー・サーバー設定 (Proxy server settings)」>「プロキシー設定」>「カスタム・プロパティー」>「新規」とクリックします。
表 5. HTTP プロキシー・サーバーのカスタム・プロパティー設定. この表は、SIP サーブレットのパフォーマンスを改善する必要がある場合に、リストされている HTTP プロキシー・サーバーのカスタム・プロパティーに指定できる設定値を示しています。 名前 説明 値 localOutboundTCPAddress ローカル・アウトバウンド・インターフェース・アドレス SIP トラフィックを処理しているネットワークのプロキシー・アドレス。 localOutboundTCPPort 1080 ローカル・アウトバウンド・ポート - プロキシー・サーバーの次の JVM 設定を変更します。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere プロキシー・サーバー」>「proxy_server_name」>「Java およびプロセス管理」>「プロセス定義」>「Java 仮想マシン」とクリックします。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere プロキシー・サーバー」>「proxy_server_name」>「Java およびプロセス管理」>「プロセス定義」>「制御」>「Java 仮想マシン」とクリックします。
- 「初期ヒープ・サイズ」を 300 に設定します。
- 「最大ヒープ・サイズ」を 450 に設定します。
- 「汎用 JVM 引数」フィールドで、次のように指定します。
-Xmo60m;-Xgcpolicy:gencon;-Xgc:noAdaptiveTenure,tenureAge=8,stdGlobalCompactToSatisfyAllocate;-Xtgc:parallel
-Xdump:heap:events=user,request=exclusive+prepwalk+compact;-Xloa;-Xloaminimum0.03
環境内で 50 を超えるプロキシー・サーバーを実行している場合は、–Xmo200m から –Xmo600m を指定することもできます。
- プロキシー・サーバーの次の JVM ログ設定を変更します。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere プロキシー・サーバー」> 「proxy_server_name」>「Java およびプロセス管理」>「プロセス定義」>「ロギングおよびトレース」>「JVM ログ」とクリックします。
以下の変更を行うには、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere プロキシー・サーバー」> 「proxy_server_name」>「Java およびプロセス管理」>「プロセス定義」>「制御」>「ロギングおよびトレース」>「JVM ログ」とクリックします。
- System.out で、「ファイル・サイズの最大サイズ (File size maximum Size)」プロパティーに 20、「ヒストリー・ログ・ファイルの最大数」プロパティーに 2 を指定します。
- System.err で、「ファイル・サイズの最大サイズ (File size maximum Size)」プロパティーに 20、「ヒストリー・ログ・ファイルの最大数」プロパティーに 2 を指定します。
- 2 つの新しいポートを作成します。
- アプリケーション・サーバーのトランスポート・バッファーのサイズと、プロキシー・サーバーのトランスポート・バッファーのサイズを 100 メガバイトに設定します。
アプリケーション・サーバーの場合は、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere Application Server」>「server_name」とクリックして、「トランスポート・バッファー・サイズ」プロパティーに 100 を入力します。
プロキシー・サーバーの場合は、管理コンソールで、「サーバー」>「サーバー・タイプ」>「WebSphere プロキシー・サーバー」> 「server_name」とクリックして、「トランスポート・バッファー・サイズ」プロパティーに 100 を入力します。
- デプロイメント・マネージャーのトランスポート・バッファーのサイズを 100 メガバイトに設定します。
管理コンソールで、「システム管理」>「デプロイメント・マネージャー」>「コア・グループ・サービス」とクリックして、「トランスポート・バッファー・サイズ」プロパティーに 100 を入力します。
- 各ノード・エージェントで、ノード・エージェントのトランスポート・バッファーを 100 メガバイトに設定します。
管理コンソールで、「システム管理」>「ノード・エージェント」>「node_agent」「コア・グループ・サービス」とクリックして、「トランスポート・バッファー・サイズ」プロパティーに 100 を入力します。
- コア・グループ設定に、以下の変更を行います。
- IBM_CS_FD_PERIOD_SECS、IBM_CS_FD_CONSECUTIVE_MISSED、および IBM_CS_DATASTACK_MEG のコア・グループの各カスタム・プロパティーの設定を変更します。 これらのカスタム・プロパティーには、以下の値が推奨されています。これらのプロパティーについて詳しくは、コア・グループのカスタム・プロパティーについての文書を参照してください。
表 6. コア・グループのカスタム・プロパティー設定. この表は、SIP サーブレットのパフォーマンスを改善する必要がある場合に、リストされているコア・グループのカスタム・プロパティーに指定できる設定値を示しています。 名前 説明 値 IBM_CS_FD_PERIOD_SECS このカスタム・プロパティーは、障害検出プロトコルが、 ディスカバリー・プロトコルで確立されたコア・グループのネットワーク接続を検査する頻度 (秒) を変更します。 接続障害が発生した場合、Failure Detection Protocol から Discovery Protocol に通知が送られます。 2 IBM_CS_FD_CONSECUTIVE_MISSED このカスタム・プロパティーは、コア・グループ・メンバーが失敗したと判断される、 ハートビートの連続欠落数を指定します。 バージョン 7.0 とバージョン 6.x プロセスの混合を含む、 少なくとも 1 つのコア・グループが組み込まれた混合セル環境で実行している場合を除き、 このカスタム・プロパティーは構成しないでください。
3 IBM_CS_DATASTACK_MEG このカスタム・プロパティーは、同期に使用可能なメモリーの量 (メガバイト) を指定します。 バージョン 7.0 とバージョン 6.x プロセスの混合を含む、 少なくとも 1 つのコア・グループが組み込まれた混合セル環境で実行している場合を除き、 このカスタム・プロパティーは構成しないでください。
100
- IBM_CS_FD_PERIOD_SECS、IBM_CS_FD_CONSECUTIVE_MISSED、および IBM_CS_DATASTACK_MEG のコア・グループの各カスタム・プロパティーの設定を変更します。


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsip_tune_ha
ファイル名:tsip_tune_ha.html