1

node.js プロジェクトをマイクロサービス アプローチに移行し始めていますが、データを共有する方法がわかりません。以下に例を示します。次の境界付けられたコンテキストがあるとします。

  • アカウント (ユーザー アカウント、権限、ログイン/ログアウト、プロファイルなどの管理に使用)
  • 画像 (特定のアカウントに関連付けられたプロフィール写真、画像ギャラリーなどのファイルのアップロードを管理するために使用されます)
  • ビデオ (特定のユーザーに関連付けられたさまざまな形式へのビデオのアップロードとトランスコーディングの管理に使用)

この例では、画像とビデオは、アカウントの境界付けられたコンテキストまたはマイクロサービスに自然に依存しているように見えます。アカウント テーブルを画像データベースとビデオ データベースにコピーして、必要なアカウント データのみを格納することもできると思いますが、アカウント情報は頻繁に更新されるため、一貫性を維持するなどの点で悪夢のように思えます。他のマイクロサービスには、この同じ依存関係が必要です。3 つのマイクロサービスすべてで同じデータベースを使用することもできますが、それは、各マイクロサービスを独自のデータベースに関連付けるという推奨事項に違反することになります。

このシナリオを処理するための推奨されるアプローチは何ですか? 私はまだ計画段階にあり、これが正しい方法で行われたことを確認したいと考えています.

4

2 に答える 2