![]() ![]() ![]() ![]() |
この例は、Open Applications Group (OAG) 標準に従って定義された、以下のビジネス オブジェクト ドキュメント (BOD) を処理する単純な注文アプリケーションに基づいています。
注意 : | このガイドで説明されているテストは、制御された環境で実施されたものです。そのため、ここで示されている数値は、ユーザがそれぞれの環境でテストを実行して得られる結果と一致しない場合があります。これらの数値は、キャパシティ プランニングのプロセスについて説明するためのものです。 |
以下の図は、アプリケーションのコンフィグレーションを示しています。
この例では、プロセスが自動化されており (ユーザによる対話はない)、目標が 1 秒あたりに処理されるトランザクションで示されているため、作業負荷は、思考時間をゼロとして設計されています。
たとえば、50% の PO WS Driver JPD ユーザと 50% の PO JMS Driver JPD ユーザが混在する場合について検討します。Mercury LoadRunner ベースの Java プログラムを、テストの負荷生成クライアントとして使用します。クライアントは、SOAP/HTTP を使用して Driver JPD をトリガし、コールバックを待機してから、次の要求を送信します。
注文を処理するオペレーションのフロー全体 (ドライバ JPD の呼び出し、注文ドキュメントの送信、および確認ドキュメントの受信) を、1 つの作業単位として見なします。
この例の目標の SLA は、最大平均 CPU 使用率 70% で、1 秒あたりに 50 の注文を処理することです。
以降の節では、スケーラビリティ テストを実行するための、ハードウェアおよびソフトウェアのコンフィグレーションについて説明します。
-Xms 1536m -Xmx 1536m -Xgc:parallel
wli.internal.instance.info.buffer
には非永続キューを使用)
垂直スケーラビリティ テストのソフトウェア コンフィグレーションは、以下の JMS EG 設定を除き、水平スケーラビリティ テストと同じです。
これらの設定により、WLI 9.2 の JMS EG のメッセージ駆動型 Bean の数が、デフォルト値の 5 から 16 に増えます。デフォルト値は、大量の着信メッセージを処理するには不十分であったため、垂直拡張シナリオでは、この変更を実行しています。
/3 GB
スイッチを使用して起動します。Init.ora
パラメータ :*.aq_tm_processes=1
*.background_dump_dest='D:\oracle\admin\PERFDB2\bdump'
*.compatible='9.2.0.0.0'
*.control_files='D:\oracle\oradata\PERFDB2\CONTROL01.CTL','D:\oracle\oradata\PERFDB2\CONTROL02.CTL','D:\oracle\oradata\PERFDB2\CONTROL03.CTL'
*.core_dump_dest='D:\oracle\admin\PERFDB2\cdump'
*.db_block_size=8192
*.db_cache_size=25165824
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='PERFDB2'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=PERFDB2XDB)'
*.fast_start_mttr_target=300
*.hash_join_enabled=TRUE
*.instance_name='PERFDB2'
*.java_pool_size=33554432
*.job_queue_processes=10
*.large_pool_size=8388608
*.open_cursors=300
*.pga_aggregate_target=55165824
*.processes=1000
*.query_rewrite_enabled='FALSE'
*.remote_login_passwordfile='EXCLUSIVE'
*.shared_pool_size=90331648
*.sort_area_size=524288
*.star_transformation_enabled='FALSE'
*.timed_statistics=TRUE
*.undo_management='AUTO'
*.undo_retention=10800
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='D:\oracle\admin\PERFDB2\udump'
以降の節では、スケーラビリティ テストの結果について説明します。
以下の図は、垂直スケーラビリティ テストの結果を示しています。
テストは、WLI で 1、2、および 4 つの CPU を使用して実行されました。CPU 使用率が 70% に達するまで、徐々に負荷を増加しました。グラフは、最大平均 CPU 使用率 70% で、1 秒あたりに 50 の注文を処理するという SLA を、4 つの CPU では達成できないことを示しています。
「キャパシティの見積り」の説明に従って、テストから得た結果をつなぐ曲線を描きます。曲線の方程式を導き出し、それを使用して、必要な追加のハードウェア リソースを見積ります。
以下の図は、水平スケーラビリティ テストの結果を示しています。
テストは、1、2、および 4 台のマシン (各マシンに 1 つの管理対象サーバ) を使用して実行されました。グラフは、70% の CPU 使用率での平均 TPS を示しています。グラフは、4 ノードの WLI クラスタ (1 ノードあたり 1 台のマシン) によって、70% の CPU 使用率で 54.262 の注文を処理できることを示しています。
ここで説明した例では、水平拡張シナリオでは、利用可能なハードウェア リソースを使用して、要求される SLA が達成されましたが、垂直拡張シナリオでは達成されませんでした。
要求される SLA が達成されない場合は、テストから得た結果をつなぐ曲線を描きます。曲線の方程式を導き出し、それを使用して、必要な追加のハードウェア リソースを見積ります。
以下の図は、垂直拡張シナリオでのキャパシティの見積りを示しています。
この例の場合、方程式は、y = 8.6041x - 0.593 です。y は平均 TPS であり、x は CPU の数です。曲線は、WLI アプリケーションが直線的に拡張することを示しています。
注意 : | 方程式は、このガイドで説明されているテストのセットアップに基づいています。キャパシティを見積るために使用する必要がある方程式は、テストのセットアップ、アプリケーションの特性、および SLA によって異なります。また、このドキュメントで説明されているテストは、データベース (およびデータベース I/O) 関連のボトルネックが存在しないと仮定しています。 |
以下の図は、水平拡張シナリオでのキャパシティの見積りを示しています。
方程式は、y = 12.636x + 4.065 です。y は平均 TPS であり、x はクラスタ内のノード数です。
注意 : | 方程式は、このガイドで説明されているテストのセットアップに基づいています。キャパシティを見積るために使用する必要がある方程式は、テストのセットアップ、アプリケーションの特性、および SLA によって異なります。また、このドキュメントで説明されているテストは、データベース (およびデータベース I/O) 関連のボトルネックが存在しないと仮定しています。 |
![]() ![]() ![]() |