Cosminexus システム設計ガイド

[目次][用語][索引][前へ][次へ]

付録A.1 パフォーマンスチューニング

ここでは,ベーシックモードで使用できるパフォーマンスチューニングについて説明します。

ベーシックモードで使用できるパフォーマンスチューニングを次の表に示します。

表A-1 ベーシックモードで使用できるパフォーマンスチューニング

チューニング項目 使用可否 参照先
同時実行数の最適化 リクエスト処理スレッド数(インプロセスHTTPサーバ使用時) ○ 6.3.3
Webアプリケーションの同時実行数 URLグループ単位 ○ 6.3.4
Webアプリケーション単位 ○
Webコンテナ単位 ○
Enterprise Beanの同時実行数 Stateless Session Beanの同時実行数 ○ 6.3.5
Stateful Session Beanの同時実行数 ○
Entity Beanの同時実行数 ○
Message-driven Beanの同時実行数 ○
CTMで制御する同時実行数 ○ 6.3.6
Enterprise Beanの呼び出し方法の最適化 ローカルインタフェースの使用 ○ 6.4.1
リモートインタフェースのローカル呼び出し機能の使用 ○ 6.4.2
リモートインタフェースの参照渡し機能の使用 ○ 6.4.3
データベースアクセス方法の最適化 コネクションプーリング ○ 付録A.1(1)
ステートメントプーリング × −
タイムアウトの設定 Webフロントシステムでのタイムアウト Webサーバ側で設定するクライアントからのリクエスト受信,およびクライアントへのデータ送信のタイムアウト ○ 6.6.2
リダイレクタ側で設定するWebコンテナへのデータ送信のタイムアウト ○
リダイレクタ側で設定するWebコンテナからのデータ受信のタイムアウト ○
Webコンテナ側で設定するリダイレクタからのデータ受信のタイムアウト ○
Webコンテナ側で設定するリダイレクタへのデータ受信のタイムアウト ○
バックシステムでのタイムアウト EJBクライアント側で設定するEnterprise Beanのリモート呼び出し(RMI-IIOP通信)とJNDIによるネーミングサービス呼び出しのタイムアウト ○ 6.6.3
EJBクライアント側で設定するCTMからEnterprise Bean呼び出しのタイムアウト ○
EJBコンテナ側で設定するデータベースのトランザクションタイムアウト(DB Connectorを使用した場合) ○※ 6.6.4
データベースのタイムアウト ○ 6.6.5
J2EEアプリケーションのメソッドタイムアウト ○ 6.6.6
Webアプリケーションの動作の最適化 静的コンテンツとWebアプリケーションの配置の切り分け ○ 6.7.1
静的コンテンツのキャッシュ ○ 6.7.2
リダイレクタによるリクエストの振り分け ○ 6.7.3
CTMの動作の最適化 CTMドメインマネジャおよびCTMデーモンの稼働状態を監視する間隔の設定 ○ 6.8.1
負荷状況監視間隔の設定 ○ 6.8.2
CTMデーモンのタイムアウト閉塞の設定 ○ 6.8.3
CTMで振り分けるリクエストの優先順位の設定 ○ 6.8.4
そのほかの項目のチューニング Persistent Connectionについてのチューニング ○ 6.9

(凡例)○:使用できる。 ×:使用できない。 −:該当しない。

注※
ベーシックモードの場合,CMTを使用するときのトランザクションのタイムアウトは,Enterprise Bean,インタフェースまたはメソッドの属性では設定できません。ベーシックモードの場合,CMTを使用するときのトランザクションのタイムアウトは,usrconf.propertiesで定義してください。

これらのチューニング項目のうち,ベーシックモードで使用できる機能や,チューニングパラメタの異なるものについて説明します。

<この項の構成>
(1) データベースへのアクセス方法を最適化するためのチューニングパラメタ

(1) データベースへのアクセス方法を最適化するためのチューニングパラメタ

ベーシックモードの場合に,コネクションプーリングで使用できる機能を次の表に示します。なお,コネクションプーリングで使用できる各機能の設計時の指針については,「6.5.1 コネクションプーリングを使用する」を参照してください。

表A-2 コネクションプーリングで使用できる機能(ベーシックモードの場合)

機能 使用可否
プールするコネクションの最大値と最小値を指定する ○
プール内のコネクションを検査して無効なコネクションを破棄する ○
コネクション取得失敗時にリトライする △
スイーパによって使わないコネクションをプールから削除する※ ○
コネクションウォーミングアップによってあらかじめコネクションをプールしておく ×
コネクション枯渇時のコネクション取得要求を取得待ちキューに入れる ×
コネクションプール内の不要なコネクションを段階的に減少させる ×
コネクションプールをクラスタ化する ×
コネクションプールの未使用コネクションがしきい値以下になったとき,コネクションを追加する ○
コネクション取得待ち時間を指定する ○

(凡例)○:使用できる。 △:指定しても無視される。 ×:使用できない。

注※
ただし,スイーパを実行する処理は負荷が高いため,性能に影響が出ます。このため,スイーパを使用する場合は,自動削除の間隔を1時間以上の値にすることをお勧めします。

次に,ベーシックモードの場合にコネクションプーリングをチューニングするパラメタについて説明します。これらのチューニングパラメタは,データソース単位に設定します。

チューニングパラメタについて,次の表に示します。これらは,サーバ管理コマンドのCUIで設定します。CUIを使用する場合は,属性ファイルを編集してください。

表A-3 ベーシックモードの場合のコネクションプーリングのチューニングパラメタ

設定項目 設定方法 設定個所
コネクションプールにプールするコネクションの最小値 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<MinimumSize>タグ
コネクションプールにプールするコネクションの最大値 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<MaximumSize>タグ
コネクションの生成時刻からコネクションを自動破棄するかを判定するまでの時間 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<ConnectionTimeout>タグ
コネクションの自動破棄(コネクションスイーパ)が動作する間隔 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<SweeperInterval>タグ
コネクションプールにコネクションを追加するためのしきい値 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<Threshold>タグ
コネクションプールにコネクションを追加する場合の追加数 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<GrowthIncrement>タグ
コネクション取得待ち時間 CUI(cjsetresprop) データソース属性ファイルの<PoolConfiguration>タグ下の<WaitTimeout>タグ

注 
cjsetrespropコマンドについては,マニュアル「Cosminexus リファレンス コマンド編」を参照してください。データソース属性ファイルについては,マニュアル「Cosminexus リファレンス 定義編」参照してください。