Maison > développement back-end > Golang > le corps du texte

Comment associer un site Web multi-sous-domaines à une base de données distincte ?

WBOY
Libérer: 2024-02-05 22:18:08
avant
415 Les gens l'ont consulté

Comment associer un site Web multi-sous-domaines à une base de données distincte ?

Contenu de la question

J'utilise sso pour développer un site Web multi-sous-domaines avec des bases de données indépendantes, comme indiqué ci-dessous :

  • www.example.com (site Web de l'entreprise et magasin) - www_db

  • blog.example.com - blog_db

  • forum.example.com - forum_db

  • account.example.com - connexion, inscription, account_db (utilisateur)

J'ai un problème, sur un forum, les utilisateurs doivent pouvoir ajouter des posts, puis lors du rendu de la liste des posts, je dois récupérer les données utilisateur pour chaque post : nom d'utilisateur, avatar, etc., mais puisque les utilisateurs et les posts sont dans des bases de données différentes, que dois-je faire ?

Je ne comprends pas comment il est publié, je pense récupérer l'utilisateur par user_ids depuis la publication via API mais il y a trop de demandes


Réponse correcte


D'accord, faisons-le une par une :

Je suppose qu'il s'agit d'une question d'authentification, auquel cas vous pouvez optimiser en mettant en cache chaque utilisateur et ses autorisations dans MessageQueueAccountService 发出请求以获取该特定用户的权限。如果您有大量流量,这可能会对网络造成沉重负担 - 但这可以通过在 ForumService .

De plus, vous pouvez implémenter une API de passerelle qui effectue l'acquisition initiale de l'utilisateur à la première demande, puis propage ensuite les données utilisateur au service sous-jacent.

La même situation s'applique avec auth. Vous pouvez obtenir ces utilisateurs un par un et les mettre en cache aussi longtemps que vous le jugez nécessaire. Bien entendu, vous perdrez temporairement une certaine cohérence des données, mais vous gagnerez en disponibilité et réduisez le trafic réseau (Eventual Consistency). Vous pouvez également utiliser AuthService 发出 UserChangedNotification et réduire les incohérences au minimum absolu.

https://obeycode.com/articles/7/Terminologie simple des microservices---Introduction

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal