第3のポイントでは、トランザクション数を増加していき、CPU負荷が100%に達した後、さらにトランザクション数を増加させた場合にどのようなスループットを示すかを調べた。
CPU利用率が100%を超え、さらに多くの負荷をかけていっても、1秒間に処理できるトランザクションの数に変化はなく、スループットの低下は見られなかった。
「この結果は私たちにとっても意外でした。Linuxなどx86上で稼働する多くのプラットフォームでは、CPU使用率が100%を超えるとスループットが低下していきます。ところがSoralis 10では低下せずにそれまでのパフォーマンスを確保しています」(宮田氏)
この結果について、小泉氏も「システムを運用する際、例えば今回擬似的に想定したWebショッピングなどはユーザー数の増加にあわせてシステムの増強を図る必要がありますが、そのタイミングを見計らうのが難しい。予想を越えてトランザクションが増加してシステムの限界を越えてしまうと、レスポンス低下によりお客様に迷惑がかかります。しかし、Solaris 10環境のようにシステムの負荷が限界を超えてもパフォーマンスを維持する環境であれば、高負荷時のレスポンス低下を最低限に抑えることが可能です」と評価する。
さらに、この結果を受けた第4の検証ポイントがOracle RACの動的再構成機能の有効性の確認だ。Oracle RACでは複数のサービスをクラスタ内で動作させる場合にそれぞれのサービスに割り振るノード数を動的に変更できる。例えばあるサービスの負荷が高くなった場合はノード数を追加してレスポンスの低下を抑えることが可能だ。
今回は8ノード環境で2つのサービスを動作させ、片方のサービスの負荷を順次上げていき、一定以上増加したところでノード数を増やしていくことで、それぞれのサービスのスループットがどのように変化するかを調べている。
結果は、負荷を増加し、ノードの処理が限界に近い状態と、ノードを追加して各ノードの負荷が減った状態のどちらでも、同じスループットを実現している。検証3で示された高負荷時にも安定したスループットを示すように、Solaris 10ではノード数増加までにパフォーマンスが低下してしまうことがなく、Oracle RACの動的再構成機能を有効に活用できることが分かる。