マイクロサービスの構築
マイクロサービスはJHipsterアプリケーションの一種であり、フロントエンドを持たず(Angularフロントエンドはgatewayで生成される必要があります)、Consulと連携して設定、検出、管理されます。
マイクロサービスアーキテクチャにおけるエンティティ
JWTまたはDTOを使用する場合、Userエンティティはマイクロサービスで生成されません。OAuth 2.0が使用 される場合、マイクロサービスには、トークンからユーザーデータを抽出し、それをマイクロサービスのデータベースに保存するメカニズムがあります。そのため、JWTおよびDTOの場合、Userエンティティはゲートウェイのデータベースにのみ存在するため、Userエンティティとの関係を使用または定義できません。
異なるマイクロサービスのエンティティ間の関係はサポートされていません。
エンティティの生成
マイクロフロントエンドのエンティティについては、マイクロフロントエンドを参照してください。
エンティティサブジェネレータを使用すると、フロントエンドとバックエンドのコードが同じアプリケーションに配置されないため、マイクロサービスアーキテクチャでの動作が少し異なります。
まず、マイクロサービスアプリケーションでエンティティを生成します。これは通常どおりに動作し、JHipster UMLまたはJDL Studioを使用して、複雑なエンティティとリレーションシップも生成できます。マイクロサービスにはフロントエンドがないため、UIコードは生成されません。
次に、ゲートウェイでエンティティサブジェネレータを再度実行します。最初に、ゲートウェイに固有の新しい質問が表示されます。
- 新しいエンティ ティを通常生成するか(ゲートウェイも標準のJHipsterアプリケーションなので、これはモノリスアプリケーションのように動作します)、マイクロサービスから既存のJHipster構成を使用するかを選択できます。
- マイクロサービスからエンティティを生成することを選択した場合、ローカルコンピュータ上のこのマイクロサービスへのパスを入力する必要があります。すると、JHipsterがゲートウェイ上にフロントエンドコードを生成します。
マイクロフロントエンド
JHipsterのマイクロフロントエンド実装は、Module Federationを使用し、フロントエンドエンティティの実装をゲートウェイではなくマイクロサービスに配置できるようにします。
開発段階では、認証プロセスのためにゲートウェイを実行する必要があります。
ゲートウェイを使用して、または単独でマイクロフロントエンドを起動する方法については、生成されたREADMEを参照してください。例として、jhipster-micro-frontends を参照してください。