マイクロサービス アーキテクチャについて調べる

完了

昨今、マイクロサービスという用語をよく耳にします。 マイクロサービスとは、自律的で、独立してデプロイできる、スケーラブルなソフトウェア コンポーネントです。

小規模で、1 つのことを円滑に行うことが重視されており、自律的な実行が可能です。 1 つのマイクロサービスの変更が、ランドスケープ内の他のマイクロサービスに影響を与えてはなりません。

マイクロサービス アーキテクチャを選ぶことで、独立して開発、テスト、デプロイできるサービスのランドスケープが作成されます。 それは、他のリスクと複雑さを意味します。

これを作成して、インターフェイスとその扱い方を追跡するのが最善です。 また、1 つではなく、複数のアプリケーション ライフサイクルを管理する必要があります。

Diagram showing a microservice architecture with multiple applications.

従来のアプリケーションでは、マルチレイヤー アーキテクチャを目にすることがよくあります。

UI で 1 つのレイヤー、ビジネス ロジックとサービスで 1 つのレイヤー、データ サービスで 1 つのレイヤーのような場合です。

UI とバックエンドに専用のチームが存在する場合があります。 何かを変更する必要がある場合は、すべてのレイヤーで変更する必要があります。

マイクロサービス アーキテクチャに移行する場合、これらのレイヤーすべてが同じマイクロサービスの一部になります。

マイクロサービスには、特定の 1 つの機能だけが含まれています。

マイクロサービス間の対話式操作は、非同期的に行われます。

相互が直接呼び出されることはありませんが、キューやイベントなどの非同期メカニズムが使用されます。

各マイクロサービスには、それ自体にライフサイクルと継続的デリバリーのパイプラインがあります。 これらを正しく構築した場合、システムの他の部分に影響を与えることなく、マイクロサービスの新しいバージョンをデプロイできます。

マイクロサービス アーキテクチャは、明らかに継続的デリバリーの前提条件ではありませんが、ソフトウェア コンポーネントが小さいほど、完全に自動化されたパイプラインの実装に役立ちます。