プランニング」が行われます。プランニングを経験したことのある人であれば、その難しさはご理解いただけることと思います。プランニングは容易です。ITの利用範囲の拡大とともに、利用者が不特定多数になるようなシステムも多くなってきています。徐々に単体のシステム同士が連携するようになり、当初予測していたもの以外のトランザクションが入り込んでくるようなことも起こるようになりました。ビジネスの変化も激しくなってきており、ますます負荷の予測が困難になってきています。2005年前後からSOA(サービス指向アーキテクチャ)が流行りましたが、SOAには非同期でメッセージのやり取りを行う概念が盛り込まれていました。「同期」と「非同期」の概念は人間の作業でいえば「電話」と「メール」に例えることができます。電話(=同期)では受け手が他の電話に対応している時は、その他からの発信は失敗します。発信者は何度も電話をかける必要がありますし、受信者は次から次へと電話がかかってくればバタバタしてパンクしてしまいます。メール(=非同期)では、発信者は受信者の状況を意識する必要はなく、メッセージを送ることができます。受信者は自分の空いた時間でメッセージを処理することができるため、余裕を持って作業ができます。システム同士が連携するようになってきたタイミングでSOAが出てきたこと、そしてSOAに非同期の概念が盛り込まれていたことは、ある意味自然なことだと思います。非同期の概念はSOAの流行以前にも存在しており、私自身もそれ以前に非同期の概念を活用して負荷に強いシステムを作った経験はあるため、珍しいものではありませんでしたが、SOAの流行によって非同期の概念が日本に広まり負荷に強いシステムが増えていくのではないかと期待していました。日中のRequest-Response処理と夜間のバッチ処理に二極化していた考え方から抜け出すことはできず、日本ではSOAや非同期の概念が根付くには至らなかったと認識しています。プランニングが非常に難しくなっています。プランニングは難しくなる一方です。前述した非同期の概念のみでなく、仮想化やクラウドの活用による柔軟性向上など、キャパシティプランニングの難しさを克服する手段は他にもあります。これらをうまく組み合わせ、最適なキャパシティプランニングを目指していきましょう。