マイクロサービスアーキテクチャ-青写真
マイクロサービスはSOAを内部的に実装します。広い意味では、1つのSOAアプリケーションのサブセットと見なすことができます。
ルールとワークフロー
以下は、マイクロサービスを開発する際に注意する必要のある原則です。
High Cohesion−すべてのビジネスモデルは、可能な限り最小のビジネス部分に細分化する必要があります。各サービスは、1つのビジネスタスクのみを実行するように焦点を合わせる必要があります。
Independent −すべてのサービスは、本質的にフルスタックであり、互いに独立している必要があります。
Business Domain Centric −ソフトウェアはビジネスユニットに応じてモジュール化され、階層ベースではありません。
Automation−テストの展開は自動化されます。最小限の人間の相互作用を導入するようにしてください。
Observable −各サービスは本質的にフルスタックであり、エンタープライズアプリケーションのように独立して展開および監視できる必要があります。
チーム管理
「TwoPizzaRule」は、マイクロサービス開発チームの参加者数を制限する一種のルールです。このルールによれば、1つのアプリケーションのチームメンバーの数は、2つのピザで食べられるように非常に少なくする必要があります。通常、その数は8を超えてはなりません。マイクロサービスは本質的にフルスタックであるため、チームも本質的にフルスタックです。生産性を向上させるには、そのサービスに必要なあらゆる種類の専門知識を備えた最大8人のメンバーからなる1つのチームを構築する必要があります。
タスク管理
タスクは、ソフトウェア開発ライフサイクルにおける重要な役割です。大規模なアプリケーションの開発は、いくつかの小さなタスク単位に分割できます。Facebookなどの1つのアプリケーションを開発する必要があると考えてみましょう。次に、「ログイン」機能は、ビルドプロセス全体のタスクと見なすことができます。これらの各タスクの進捗状況は、高度なスキルを持つ専門家の下で適切に監視する必要があります。アジャイルは、優れたタスク管理に追いつくために業界で採用されているよく知られたプロセス構造です。