マイクロサービスについて知っておくべき 5 つのこと

# 01

アジリティとスピードが向上する

マイクロサービスはアプリケーション開発にアジリティとスピードをもたらします。各サービスは、小規模チームにより個別に開発、ならびに管理されるためです。各サービスは他のサービスから切り離されています。そのため、担当チームは、異なる部門やタイム ゾーンのグループとの連携やそれらに伴う面倒なことから開放されます。つまり、チームはマイクロサービスをいつでも個別にアップデートできます。

# 02

品質が高くなる

大規模なモノリシック アプリケーションを小規模なサービスに分割することで、チームは異なる機能セットに同時に焦点を向けられます。つまり、より多くの不具合を特定したり、除去したりできます。しかし、独立してデプロイ可能なコンポーネントの数やそれらコンポーネント間の依存性が非常に多くなると、テスト プロセスは複雑になります。増大した複雑さを管理するためには、伝統的なモノリシック アーキテクチャに対して適用していたテスト戦略を再考する必要があります。

# 03

費用効果が高くなる

サービス指向アーキテクチャ アプローチでは、特定のビジネス機能に対するアプリケーション ロジックが 1 つ存在します。これは複数のコンテキストで再利用可能です。つまり、必要に応じで同じサービスを複数のアプリケーションやビジネス プロセスで使用できます。時間の経過とともに開発コストを削減できるの対し、開発スピードは上がります。これにより、顧客によりすばやく納品できます。

# 04

回復性が向上する

私たちは、アプリケーションをダウンさせ、99.999% の信頼性から遠ざけるやっかいな不具合に取り組んできました。マイクロサービスを活用することで、大部分の不具合の影響範囲は単一サービスに限定されます。その他のアプリケーションは引き続き正常に稼働します。

コードベースが小規模であればあるほど、不具合の追跡と修正は容易になります。例えば、通知に関するマイクロサービスがダウンした場合でも、引き続きビルドは正常に動作します。ユーザーへの影響は、ビルド結果に関する通知が受け取れないことのみです。

さらに広く見れば、マイクロサービスには回復性があります。なぜなら、それぞれが個別にビルドおよびデプロイされているからです。ある領域において供給停止が起こった場合でも、すべてのプロセスがシャット ダウンするわけではありません。

# 05

スケーラビリティが高くなる

1 次元的なスケーラビリティのみが可能なモノリシック アプリケーションとは異なり、マイクロサービスは必要に応じで各コンポーネントをそれぞれ個別にスケールできます。つまり、システム全体における重要性に応じて各サービスを効率的にスケールできます。将来、あなたのソリューションをスケールする場合に十分な柔軟性を確保できます。アプリケーションに新しいサービスを簡単に追加したり、サービスを互いにスケールしたりできるためです。

ゴーツーグループにご相談を

ゴーツーグループは、製品ライセンス購入、導入支援、運用支援、ユーザー研修など、貴社がアトラシアン製品を活用して業務の効率化を図るお手伝いをします。

お問い合わせ