Tech Sketch Bucket of Technical Chips by TIS Inc.

ITシステムの性能に取り組む基礎知識 (その4: チューニングポイントの優先度)

Pocket

techsketch-banner-perfeng+blackgraph(700x72).jpg


この一連のブログは「基礎の基礎からの話をします」と書いて始めました,今回が最後の記事にするつもりです.

■問題

APサーバとDBサーバの2層から構成されるITシステムがあります.高負荷時に平均1秒以内の応答時間が要件です.製造を終えて単発(低負荷)で性能を測定してみると,AP=0.5秒,DB=0.2秒が掛かり,合計0.7秒でした.高負荷状態になったときには1秒を超過することが予想されます.さて,APサーバのロジックを改善する案と,DBサーバのデータ構造を改善する案の2案があるとき,どちらを優先させるのが良いでしょうか?

前回の問題と同じように,上記の問題の文中に書かれていることだけでは不明なことがたくさんあります.言い換えるとその隠れた条件次第で,正解はひとつではありません.また,APサーバかDBサーバかを画一的に決定できるとも限りません.以下ではいくつかの考え方を述べてみたいと思います.

ITシステムの性能に取り組む基礎知識 (その3: 平均値とパーセンタイル値)

Pocket

techsketch-banner-perfeng+blackgraph(700x72).jpg


前回は「待ち行列の基本」というサブタイトルでしたが,今見ても情報処理技術者試験対策講座みたいですね. 今回のサブタイトルも似たようなものですが,内容は前回よりはもうちょっと実践的にしてみました.


■問題

ある機能の応答時間を測定したところ,平均値が500ミリ秒,90パーセンタイル値が350ミリ秒でした. どの様な性能問題が考えられるか説明できますか.

問題文は極端にシンプルですが,性能対策に関連するいろんな課題を隠しています. 少々解説が長くなりますが,レベルを順次上げながら説明していきます. 最も「性能問題らしい」部分は,レベル3(5番目)で出てきますが,それまで少し腰を据えて読んでいただければありがたいです.

ITシステムの性能に取り組む基礎知識 (その2: 待ち行列の基本)

Pocket

techsketch-banner-perfeng+blackgraph(700x72).jpg

前回は前振りだけでしたが, 今回からひとつずつ解説していきます.  今回の問題は特に基礎的な話なのであまり面白くないかもしれません. 

■問題

ある受付業務を2箇所の窓口ABで行っていましたが, 来客の少ないBAに一本化することにしました.  Aの受付数は20%増加するが十分にこなせるはずでした.  ところが, 客の待ち時間が2倍になりクレームが頻発.  どうしてこの様なことが起こるか説明できますか?

基本情報処理技術者の教科書に出てきそうな問題ですね.  この例題は性能問題のもっとも基礎的な待ち行列に関するものですが, 多くの場合は公式を覚えるだけで, 性能問題につながる本質が理解されているとは言い難いように思います.  話の題材を「2台のサーバ」としてサーバ統合の例え話にした方がITシステム向け問題らしくはなるのですが, ここではあえて「2つの窓口」という話にしています.  その理由については後述します. 

ITシステムの性能に取り組む基礎知識 (その1: 性能問題を理解するために)

Pocket

techsketch-banner-perfeng+blackgraph(700x72).jpg

ITシステムの性能問題は昔からあるテーマで,その基礎はほとんど変わっていないにも関わらず,多くのITエンジニアに理解されているとは言い難いものです.  現代のITシステムは多数の構成要素から成り立っており,性能問題の解決は相当にやっかいな難問になってきているのが実状です.  その様な状況であるからこそ,基礎をしっかりと理解して臨むことが必要であると感じています.
私たち先端技術センターでは, この高度化したITシステムの性能問題を解決すべく, 高負荷テスト, 性能データ分析, シミュレーション技法による性能事前評価などに取り組んできていますが, それらの高度な技術を有効に活用してもらうためにも, まず, 多くのITエンジニア達に性能問題の基礎を理解していただきたいと考えています.