デプロイ王子のテクノロジ解説!

細かく分けて何度もデプロ~イ!マイクロサービスアーキテクチャの利点・欠点 - (page 2)

廣瀬一海(デプロイ王子) 2016年07月13日 07時00分

  • このエントリーをはてなブックマークに追加
  • 印刷

マイクロサービスのメリット

 マイクロサービスアーキテクチャによる開発は、どのような効能があるのでしょうか。そのメリットとデメリットについて説明します。まずはメリットを考えてみましょう。

  1. マルチテナントによるコストメリット
    マイクロサービスアーキテクチャは、Azure Service FabricやDockerなどのコンテナ仮想化技術を使ったマルチテナントな仕組みを前提にしていることがほとんどです。サーバ単位でスケールしていたマルチティアアーキテクチャと比較しても、分離された個々のサービス単位でのスケールアウト、スケールインが可能になる利点があります。
  2. 継続的デリバリに適する
    サービスとして分離されるために依存量や実装量が小さく、デプロイメント、テスト、ステージング、本番の環境構成や切り替えが行いやすくなり、作業量が明確化され、達成率や品質が向上します。
  3. 早期の問題点の把握と継続的改善
    継続的デリバリだけでなく、測定による問題点の把握、フィードバックによる改善がしやすくなりシステムの品質の向上に貢献するでしょう。
  4. クラウドの魅力を最大限に引き出せる
    マルチティアアーキテクチャと比較しても、各サービス単位で柔軟にスケールアウトしやすくなり、耐障害性も向上します。また、クラウドのAPIもマイクロサービスにおけるコンポーネント単位であると捉え、クラウドの機能をプロダクトに取り込むことができます。
  5. ビジネスに応じた、プロダクトライフサイクル
    疎結合なので、時流に合わせてサービスそのものを新しい手法や言語で置き換えることも可能です。ビジネスに応じて、絶好の機会を逃すことが無く、最小の追加実装でプロダクトを維持できるようになります。

マイクロサービスのデメリット

 マイクロサービスアーキテクチャには、もちろんデメリットもあります。

  1. 疎結合の処理コスト
    サービスであることから、リモート呼び出しには相応の時間と処理コストがかかります。非同期である点を受け入れ、相応の工夫と利用者やビジネス側にも理解が必要になるでしょう。
  2. サービスのインターフェース仕様の変更が開発に影響をもたらす
    APIの場所や名前解決の工夫、APIの規則に一定のルールを作る必要が出てきます。クラウドで提供されるAPIの統合や管理を行うサービス、SwaggerによるAPIとドキュメント生成は実践する上で手掛かりとなります。また、後述する書籍には、具体的にAPIの場所や名前を解決するための工夫と実践が記載されています。
  3. チーム作りの難しさ
    これが最大の課題になります。従来ではDBチーム、ミドルウェアチーム、UIチーム、サーバサイド開発チーム、インフラチームと分割していた役割を超えて、各チームの担当者を少人数の1つのチームとして駆動させることが重要です。また、お互いの役割の知識を共有した上で、アジャイル、DevOps、DDDなどを理解する学習コストが相応に必要となるでしょう。これらは、一朝一夕では達成できることではありませんが、作ったチームは企業にとって、かけがえの無い財産になるでしょう。

最後に

 より詳しい解説は、Sam Newman著・佐藤直生監訳『マイクロサービスアーキテクチャ』(オライリー社)や、Bob Familiar著・株式会社クイープ訳『Microservices on Azure』(翔泳社)を読んでいただければ、皆さんがマイクロサービスを実践する上での手掛かりがみつかるでしょう。

 クラウドベンダー各社も、Dockerなどのコンテナの活用やマイクロサービスアーキテクチャを支える仕組みなどを矢継ぎ早に出しています。マイクロサービスアーキテクチャは、今までのIaaSとはちょっと違う、クラウドの美味しさを最大限に引き出す良い道具であり、手法となります。プロジェクトからサービスへシフトするための開発チーム作りには、従来と大きく違うところもありますが、新規開発の際には採用を検討する余地があると言えるでしょう。

廣瀬一海
愛称「デプロイ王子」。1997年からOSSやLinuxを活用し、主にインターネット向けサーバシステムの設計や無停止設計、分散設計と構築などを担当する。日本医師会総合政策研究機構(日医総研)客員研究員、日本コンピューター、pnop CTO、アイレット クラウドパック事業部 シニアソリューションアーキテクトを経て、2015年12月から日本マイクロソフトのクラウドソリューションアーキテクト。2012年/2013年/2014年/2015年にMVP Award Program Microsoft Azure受賞。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

  • このエントリーをはてなブックマークに追加

関連ホワイトペーパー

SpecialPR

連載

CIO
月刊 Windows 10移行の心・技・体
ITアナリストが知る日本企業の「ITの盲点」
シェアリングエコノミーの衝撃
デジタル“失敗学”
コンサルティング現場のカラクリ
Rethink Internet:インターネット再考
インシデントをもたらすヒューマンエラー
トランザクションの今昔物語
エリック松永のデジタルIQ道場
研究現場から見たAI
Fintechの正体
米ZDNet編集長Larryの独り言
大木豊成「仕事で使うアップルのトリセツ」
山本雅史「ハードから読み解くITトレンド放談」
田中克己「展望2020年のIT企業」
松岡功「一言もの申す」
松岡功「今週の明言」
内山悟志「IT部門はどこに向かうのか」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
大河原克行「エンプラ徒然」
内製化とユーザー体験の関係
「プロジェクトマネジメント」の解き方
ITは「ひみつ道具」の夢を見る
セキュリティ
セキュリティインシデント対応の現場
エンドポイントセキュリティの4つの「基礎」
企業セキュリティの歩き方
サイバーセキュリティ未来考
ネットワークセキュリティの要諦
セキュリティの論点
スペシャル
エンタープライズAIの隆盛
インシュアテックで変わる保険業界
顧客は勝手に育たない--MAツール導入の心得
「ひとり情シス」の本当のところ
ざっくり解決!SNS担当者お悩み相談室
生産性向上に効くビジネスITツール最前線
ざっくりわかるSNSマーケティング入門
課題解決のためのUI/UX
誰もが開発者になる時代 ~業務システム開発の現場を行く~
「Windows 10」法人導入の手引き
ソフトウェア開発パラダイムの進化
エンタープライズトレンド
10の事情
座談会@ZDNet
Dr.津田のクラウドトップガン対談
Gartner Symposium
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft Inspire
Microsoft Connect()
HPE Discover
Oracle OpenWorld
Dell Technologies World
AWS re:Invent
AWS Summit
PTC LiveWorx
吉田行男「より賢く活用するためのOSS最新動向」
古賀政純「Dockerがもたらすビジネス変革」
中国ビジネス四方山話
ベトナムでビジネス
日本株展望
企業決算
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]