Hiroshi Okunushi's Blog ☆ミ| IIS PHP etc.

IIS7, PHP on IIS を中心とした情報発信ブログです。

Blogs

【IIS7】 実世界の IIS7.0 パフォーマンスデータ

  • Comments 2
  • Likes

IIS7のセミナーを2年続けてきて最近増えてきているのはパフォーマンスは?というご質問です。より実践が近い時には当然判断基準が欲しいのは小職の過去の経験からも自明の理です。マイクロソフトはシステムインテグレーションを本業としておらず、パートナー様とともにビジネスを推進するモデルのため、現場での実践値の蓄積がすごく多いわけではなく、テスト時やマイクロソフトが運用している環境の情報が最初に事例として出てくることが歴史的に多いです。しかし、最近事情が変わってきており、まずは社内事例を早くということでマイクロソフトの社内システムに関する情報を一生懸命 IT部門が発信してくれています。

今回はそんな中で microsoft.com を運用しているチームからの実践値をご紹介し、部分的に日本語化してお届けします。

Microsoft.com Operations Performance Analysis of IIS 7.0/Windows Server 2008
http://blogs.technet.com/mscom/archive/2008/06/09/microsoft-com-operations-performance-analysis-of-iis-7-0-windows-server-2008.aspx

大まかにこの報告内容を整理すると、IIS 7.0 環境の方が IIS 6.0 環境よりもリソース(主にCPU)を10%以上多く使い、31% RPS(リクエスト/秒 ≒ スループット)が向上し、かつ各リクエストを速く処理したということです。
※詳細は原文の表やグラフをご自身でご確認ください。

いつも言われることですが、パフォーマンスとは利用ハードウェアの組合せ、アプリケーションの内容やトランザクションミックス によって左右されるところが大きいです。従って、皆さんの環境とアプリケーションでここまでの効果があるともちろん断言できず、「お試しください」というのが質問を受けた時の答えなのですが少なくともいい参考値だと思います。さらに 例になっている microsoft.com というサイトはかなりトラフィック量も多いサイトですので、Windows Server を実際に開発しているチームとともに OS 側のベータ段階での調整を多く出来たことを差し引いてもお役に立つ数字ではあると思います。

さて、例によって文章のところは独自翻訳をここでしておこうと思います。

==============================================

今年 Windows Server 2008 が出荷し、多くの企業では Windows Server 2008 と IIS 7.0 に移行する価値判断をまさに評価しているところです。IT技術者 あるいは 意思決定を行う立場の方にとって、より明解な判断を下す上で実際に運用できている証拠を欲しいに違いありません。間違いなく、新しいファイルベースの構成システムとモジュール化構造になったアーキテクチャによって IIS 7.0 は管理が容易で柔軟になるでしょう。しかし、果たして前のバージョンである IIS 6.0 / Windows Server 2003 に対してパフォーマンスはどうなんだ となることでしょう。

Microsoft.com 運用チームは 早く、より活動的に IIS 7.0 / Windows Server 2008 を実運用に取り込んできました。実際に www.microsoft.com で一つのサーバーを運用に移したのは 2005年6月に遡り���す。次の質問に対する答えを模索し始めたのです。

「IIS 7.0 / Windows Server 2008 は IIS 6.0 / Windows Server 2003 よりもパフォーマンスがいいのか?」

私たちは実際のインターネットからのトラフィックを処理しているピークの時間帯を含む www.microsoft.com サイトの実運用環境で並行検証を行い、分析をしてきました。

このパフォーマンス検証の中で、CPU稼働率が Windows Server 2008 製品版 サーバーの方が高くなっていることを確認しました。また、これがサーバーがより高い RPS(リクエスト/秒)をマークしていることによって起こっていることもわかりました。下記で記述しているようにハードウェア負荷分散装置は W2K3 SP2 サーバーと比較して、より多く(31% 高い RPS) Windows Server 2008 製品版サーバーへ送り出し、Web リクエスト数が増加している中、さらに各Webリクエストを速く処理していることを確認しました。下記で登場するいい指数は CPUサイクルあたりのリクエスト数(RPS / CPU稼働率)の「効率」と「コスト」と言えます。この指数によると、IIS 7.0/W2K8 製品版 は 10%以上  IIS 6.0/WS03 SP2 に比べると効率的に 実際の www.microsoft.com サイト のWebプラットフォームトラフィックを処理したことになります。

~ 中略 ~ ※表やグラフに関して原文を参照ください。

パフォーマンス概要と方法論:

サイト:

www.microsoft.com

この評価中、ライブであった www.microsoft.com サイトは80サーバーで成り立っていました。4つのクラスターで、各20サーバーずつ、複数のデータセンターに配置されていました。このパフォーマンス分析は www.microsoft.com サイトの内の一つのクラスター(20台)で行われました。このクラスターは 19台の Windows Server 2008 製品版サーバーと1台の Windows Server 2003 SP2 (W2K3 SP2) サーバーで構成され、全サーバーで実際のインターネットからのトラフィックを処理していました。この一台の Windows Server 2003 サーバーは結構 有名になりました。実は彼のブログも存在します。  http://blogs.technet.com/windowsserver/pages/about-lone-server.aspx

ハードウェア:

モデル: HP DL585 G1 (4つの デュアルコア CPU)
メモリ: 32GB

OS:

Windows Server 2008 製品版 (Build: 6.0.6001.18000) Enterprise エディション x64

負荷分散:

私たちはハードウェア負荷分散ソリューションを使用しています。使用している負荷分散のアルゴリズムは「最もクライアントからの接続数が少ない(サーバー)」に基づいてクラスター内の各サーバーへの割り振りを行うもので、ラウンドロビンでもなく、その他 アルゴリズムも使用していません。ハードウェア負荷分散装置は各クラスターのメンバーに対して同数の実行クライアント接続数を維持するように動作します。従って、W2K8 サーバーが Web リクエストを W2K3 サーバーよりも速くWebリクエストを処理するとより多くのトラフィックをW2K8 サーバーに負荷分散装置が送ることになります。

方法論:

www.microsoft.com を運用しているWebサーバーの1つのクラスターからパフォーマンスモニタのログを72時間の間、トラフィックのピーク時間帯(月曜~水曜)に取得しました。グラフの数字は W2K8 製品版に関するデータはクラスター内の W2K8 製品版サーバーの平均を表しており、W2K3 SP2 に関するデータは一台のサーバーで取得したものです。

==============================================

Comments
  • すっかり失念していました。故に負荷試験は大事なので、自主トレシリーズのこれから公開する負荷試験の章は見てください...でした。

    IT Pro道場 自主トレシリーズ トップページ

    http://go.microsoft.com/?linkid=8884535

  • すでにお気づきの方もいらっしゃると思いますが、マイクロソフトのサイトでの R2 Beta 稼働が始まっています。 www.microsoft.com Completes Move to Microsoft-IIS/7.5

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment