- 人
- NativeCountry
- SpokenLanguages
はMIcroservice粒度について問い合わせがありました。例を使ってクエリを説明しようとします。DBテーブルごとのマイクロサービス?
私は上記の3つのテーブルがデータベースにあり、Person - > NativeCountryテーブル間に多対1の関係があるとします。データベースの人 - >言語間の1対多の関係。
フロントエンドアプリケーションは、個人エンティティに対してCRUD操作を実行していると想定されています。また、自然環境や音声言語に基づいて人々を取得する機能も備えています。
エンティティごとに3つの独立したマイクロサービスを開発し、上位レイヤのAggregator Microserviceを使用してUXレイヤの結合データを構築するのは理にかなっていますか?
この質問は有効ですが、ビジネスドメインを理解していないと答えにくいです。 Person、NativeCountry、およびSpokenLanguagesを照会し、独立している必要があるより大きいドメインがある場合は、マイクロサービスを別々に決して分離しないようにするには、通常、単一のマイクロサービスを使用します。ドメイン特有の詳細をいくつか追加したり、他のサービスがそれらを使用する方法があれば、より正確な答えを得るための少しの洞察を与えるかもしれません。 –
UIには、新しい国を追加する機能があると言いますが、これにはネイティブの国とそれに付随する言語があらかじめ組み込まれています。ただし、作成者のUIで使用可能な音声言語を事前に入力するには、使用可能な言語をDBで照会して入力する必要があります。 UIには、これと一致する人々を検索できるように、ネイティブカントリーまたは検索基準として話されている言語の1つを提供することができる検索セクションが必要です。 –
データベースサーバ自体は大きなサービスです。あなたはそれを別のサービスに包んだり、壊したりするだけです。 –