2016年06月20日 08時00分 UPDATE
特集/連載

Computer Weekly製品ガイドソフトウェアアーキテクチャの分裂と征服

個別に導入できるモジュールで構成されたアプリケーションには、柔軟性の高いソリューション開発の未来がある。

[Randy Heffner,Computer Weekly]
Computer Weekly

 アプリケーション開発と配信のプロフェッショナルは、ペースを加速させると同時に、配信する内容の品質や耐久性を保つ(できれば向上させる)必要がある。Netflix、Amazon、Google、PayPal、Uber、eBay、Yahoo!といったWebネイティブあるいはモバイルネイティブ企業、そして幅広い業種の企業が、継続的なビジネスイノベーションという課題に対応するためにソフトウェアアーキテクチャを変更している。

Computer Weekly日本語版 6月8日号無料ダウンロード

なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。

ボタンボタン

 この課題には主に、「どのように」「何を」という2つの側面がある。「どのように」に関しては、アジャイル開発や継続的デリバリーによってソフトウェアのデリバリープロセスを向上できる。「何を」については、API、コンテナおよびマイクロサービスによってソフトウェアの柔軟性やデプロイを向上させ、ソフトウェアのデリバリーと安定性における静かな革命の中心となる基盤を提供できる。

マイクロサービスの重要性

 マイクロサービスをモノリシック(一枚岩)型のアプリケーションと比較すると、まず何よりもデプロイが異なる。だが設計にも違いがある。

 例えばJavaベースのWebアプリケーションは、モジュール式Javaクラスのコレクションとして記述できる。だがそうしたクラスは個別にデプロイできる設計にはなっていない。デプロイするには、その全てを集めて1つの大型ファイルにパッケージ化しなければならない。マイクロサービスは1つのアプリケーションを構成し直して、個別にデプロイ可能な小規模ユニット群に分割できる。

 マイクロサービスには主に4つのメリットがある。まず、システムの各パーツを個々にデプロイできれば、個々に拡張することも可能だ。1つのシステムで20のインスタンスを必要とするサービスもあれば、2つのインスタンスで済むサービスもある。Walmartは「Node.js」ベースのマイクロサービスを使って、他の小売業者に問題が生じているブラックフライデーの売り上げ急増に対応できるようにした。

 第2に、個々にデプロイされたサービスは、全く違うプラットフォームや設計モデルを使って実装できる。巨大なインメモリデータベースと専用のプログラミング言語を必要とするサービスもあれば、非常に規模が小さくNode.js上にJavaScriptで記述できるサービスもある。Amazonの小売りストアの注文履歴サービスはこの原則をさらに進化させ、最近の注文と古い注文で実装が異なっている。

 第3に、サービスを個別に運用すれば、システム全体が同時にダウンする可能性が低下する。ある顧客のリクエスト処理に障害が生じても、他の顧客のリクエストに影響が及びにくくなる。各サービスの運用はそれぞれの規模や性能、セキュリティ、トランザクション管理ニーズに合わせて最適化できるため、特にその傾向は強まる。例えばNetflixは定期的にプロダクションサービスをダウンさせることによって耐久性を保証し、全体が稼働し続けることを確認している。

 第4に、マイクロサービスは累積的開発とデプロイの選択肢も増える。アジャイルの手法、特に継続的デリバリーは、システムのパーツが個別に構築されてデプロイされると一層ペースが速まる。だがたとえウオーターフォール開発であっても、マイクロサービスの方が不具合を修正しやすい。小型のユニット開発であれば本番導入の前に小規模なテストや頻繁なテストを実施でき、テストの選択肢が増えてフィードバックの頻度も高められる。

コンポーネント、API、あるいはその両方

 “マイクロサービスとは何か”という点について、業界の論議は極めて曖昧だ。だがこの単語を2つに分割すると、論議は見えやすくなる。

この記事を読んだ人にお薦めの関連記事

この記事を読んだ人にお薦めのホワイトペーパー

Loading

注目テーマ

ITmedia マーケティング新着記事

news077.jpg

電通が学生と企業の共創プロジェクト「βutterfly」を開発、企業向けにスポンサードプランを提供
電通は、顧客企業と学生の協働型プロジェクト「βutterfly」を開始すると発表した。β版...

news040.jpg

「インバウンド」で注目される浅草、訪日外国人観光客で賑わう理由とは?
口コミ時代のWebとソーシャルメディアは最大の武器。最小限の手間で最大の効果を発揮する...

news103.png

オムニバス、「セゾンDMP」を活用したターゲティング広告を提供
クレディセゾンの100%子会社オムニバスは、クレディセゾンが保有するクレジットカードの...