マイクロサービスを適用する領域を見極めよ
講演の中盤以降では、マイクロサービスをアプリケーション構築に適用する上での課題と解決策を、10項目挙げて説明した。
課題1:どこに適用すればいいか分からない、もしくはすべてのアプリケーションにマイクロサービスを適用しようとする
課題2:マイクロサービスの適正な粒度が分からない
課題3:マイクロサービスの適用スタイルが現実的とは限らない
課題4:マイクロサービスを提供者側の目線で構築してしまう
課題5:マイクロサービスの適用を一時的なプロジェクトと考え、将来的な状況を考えない
課題6:マイクロサービスを設計・開発するプロセスが未熟なまま、プロジェクトを開始してしまう
課題7:マイクロサービス基盤をどう構築するか分からない
課題8:マイクロサービスの選択の自由度や独立性の高さを追求しすぎると、開発・実行環境が管理不能となる
課題9:既存アプリケーションとシームレスに連携できない
課題10:マイクロサービスのスキルが社内にない
1つめの課題は、マイクロサービスの適用領域が分からない、というもの。これについては、「ペースレイヤの視点とバイモーダルの視点で考えることが有効」(飯島氏)としている。
ペースレイヤは、変更頻度によって業務システムを分類する方法で、記録システム、差別化システム、革新システムの3段階に分かれる。他企業との差別化要因とはならない記録システム(基幹システム)は、頻ぱんに変更する必要がない。一方で、差別化できるシステムは頻ぱんに変更がかかる。
バイモーダルとは、取り組みのスピード感によって業務システムを分類する方法で、モード1とモード2の2つに分かれる。システムに応じてモード1とモード2を両立させて使い分けるという概念がバイモーダルだ。モード1に分類できるシステムは安定稼働としっかりした運用を重視しており、モード2に分類できるシステムは新しいことに即座に取り組んで試してみるフットワークの軽さを重視している。
マイクロサービスが最も適するシステム領域は、取り組みのスピード感が高く、変更の頻度も大きいものだ。しかし、安定稼働を重視するモード1のシステムにも、マイクロサービスの適用の可能性がある、と飯島氏は言う。
「既存の業務システムは、変化の必要がない記録システムと、変化しなけれなばならない差別化システムが密結合で深く結び付いている。このせいで、差別化システムを変えたくても変えられない。だから、変化が激しい差別化要素をモード1のシステムから切り離す。ここにマイクロサービスが生きる」(飯島氏)
マイクロサービスを適用する箇所を決定する上では、ビジネスのシナリオとオペレーションを分析する必要がある。変更が多い機能はどこなのか、対応のスピードが求められるのはどこなのか、などを分析する。これによって、マイクロサービスを適用すべき箇所が分かる。一般的に、顧客との接点となる部分は変化が激しいため、マイクロサービスに適している。