ホームページ  >  記事  >  バックエンド開発  >  マルチサブドメイン Web サイトを別のデータベースに関連付けるにはどうすればよいですか?

マルチサブドメイン Web サイトを別のデータベースに関連付けるにはどうすればよいですか?

WBOY
WBOY転載
2024-02-05 22:18:08420ブラウズ

マルチサブドメイン Web サイトを別のデータベースに関連付けるにはどうすればよいですか?

質問の内容

私は、以下に示すように、sso を使用して、独立したデータベースを持つマルチサブドメイン Web サイトを開発しています。

  • www.example.com (企業 Web サイトおよびストア) - www_db

  • blog.example.com - blog_db

  • forum.example.com - forum_db

  • account.example.com - ログイン、登録、account_db (ユーザー)

問題があります。フォーラムでは、ユーザーは投稿を追加できる必要があり、投稿リストをレンダリングするときに、各投稿のユーザー データ (ユーザー名、アバターなど) を取得する必要があります。と投稿がデータベース内で異なる場合、どうすればよいですか?

投稿方法がわかりません。API 経由で投稿から user_id でユーザーを取得していると思いますが、リクエストが多すぎます


正解


わかりました一つずつ進めていきましょう:

これは認証に関する質問だと思います。その場合、

MessageQueue 経由で AccountService にリクエストを送信して、その特定のユーザーのアクセス許可を取得できます。トラフィックが多い場合、これはネットワークに大きな負担をかける可能性がありますが、各ユーザーとその権限を ForumService にキャッシュすることで最適化できます。

さらに、最初のリクエストでユーザーの初期取得を実行し、その後ユーザー データを基礎となるサービスにさらに伝播するゲートウェイ API を実装することもできます。

auth と同じ状況が当てはまります。これらのユーザーを 1 人ずつ取得し、必要と思われる期間キャッシュすることができます。もちろん、データの整合性は一時的に失われますが、可用性が向上し、ネットワーク トラフィックが削減されます (

最終整合性)。 AuthServiceUserChangedNotification を発行するようにして、不一致を最小限に抑えることもできます。

https://obeycode.com/articles/7 /マイクロサービスの簡単な用語---はじめに

以上がマルチサブドメイン Web サイトを別のデータベースに関連付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。