2021年09月01日 08時00分 公開
特集/連載

マイクロサービスについて企業が知っておくべきことデメリットも理解しておく

クラウドネイティブ、モダナイゼーション、DXなどの文脈でもてはやされているマイクロサービス。全ての企業が取り組むべきものなのか。デメリットも含めて再整理しよう。

[Daniel Robinson,Computer Weekly]
iStock.com/anyaberkut

 マイクロサービスの普及はクラウドネイティブやアジャイル開発などのトレンドと連動しており、特にコンテナといったデプロイ手段と密接に関係している。

 O'Reillyが2020年に実施した調査によると、調査対象1500社の中でマイクロサービスを全く利用していない企業は約4分の1にすぎなかったという。だが利用している企業(約75%)で5年以上利用していたのは約10%にすぎない。つまり、大半の企業は5年以内にマイクロサービスを採用したことになる。

 マイクロサービスは具体的な技術ではない。ソフトウェアアーキテクチャの一つであり、アプリケーションやサービスを設計する際のアプローチの一つだ。マイクロサービスではアプリケーションを1つのモノリシックなエンティティーではなく、独立してデプロイできる小さなサービスに分解する。そのサービスがコミュニケーションし合い、アプリケーションに必要な機能を提供する。

 このアプローチには幾つかメリットがある。コンポーネントを個別にスケーリングできることから、スケーラビリティの向上が容易だ。アプリケーション全体をスケーリングするのではなく、需要が多い一部のコンポーネントのみをスケーリングする。その場合、スケーリングするコンポーネントの新しいインスタンスを起動してワークロードのバランスを取る。

 マイクロサービスはアジャイル開発にも適している。マイクロサービスはコンポーネントのサイズが小さいので改善しやすく、迅速にコードを更新できる。開発者がコードを理解するのも容易だ。その結果、信頼性も高まる可能性がある。タスクの種類に適したプログラミング言語があるため、コンポーネントによって使う言語を変えることも可能だ。

 コンポーネントにエラーが発生した際は適切に分離されることから、ダウンタイムが減る可能性があるのもメリットの一つだ。あるマイクロサービスでエラーが起きても、その結果としてアプリケーションやサービス全体がダウンする恐れは減少する。

潜在的なデメリット

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

news018.jpg

アフリカFinTech事情 初のキャッシュレス大陸への勢いが止まらない
FinTechのユニコーンが続々と生まれるアフリカ大陸。砂漠の南が燃えています。

news162.jpg

テレビと広告とTwitterと人間の脳の関係について、いま分かっていること(無料eBook)
「ITmedia マーケティング」では、気になるマーケティングトレンドをeBookにまとめて不定...

news029.jpg

P&Gが「ショッパー」のニーズを満たすために全社横断でやっていること
「LINE BIZ DAY BREAKOUT BRAND&DIRECT」で発表された事例の中から、P&Gが実施したデジタ...