首頁 > 後端開發 > Golang > 主體

如何將多子網域網站與獨立的資料庫關聯起來?

WBOY
發布: 2024-02-05 22:18:08
轉載
414 人瀏覽過

如何將多子網域網站與獨立的資料庫關聯起來?

問題內容

我使用 sso 開發具有獨立資料庫的多子網域網站,如下所示:

  • www.example.com(公司網站和商店)- www_db

  • blog.example.com - blog_db

  • #forum.example.com - forum_db

  • #account.example.com - 登入、註冊、account_db(使用者)

我有一個問題,在論壇上,用戶必須可以添加帖子,然後在呈現帖子列表時,我必須獲取每個帖子的用戶數據:用戶名、頭像等,但由於用戶和帖子是在不同的資料庫中,我該怎麼做?

我不明白它是如何發布的,我認為通過API 從帖子中通過user_ids 獲取用戶,但請求太多


##正確答案


好吧,讓我們一項一項地進行:

我假設這是一個關於身份驗證的問題,在這種情況下,您可以透過

MessageQueueAccountService 發出請求以取得該特定使用者的權限。如果您有大量流量,這可能會對網路造成沉重負擔 - 但這可以透過在 ForumService 中快取每個使用者及其權限來優化。

此外,您還可以實作一個網關 API,該 API 在首次請求時執行使用者的初始獲取,然後將使用者資料進一步傳播到底層服務。

與 auth 相同的情況也適用。您可以一一取得這些用戶,並將它們快取到您認為必要的時間。當然,您會暫時失去一些資料一致性,但您將獲得可用性並降低網路流量(

最終一致性)。您也可以使 AuthService 發出 UserChangedNotification 並將不一致情況減少到絕對最低限度。

https://obeycode.com/articles/7 /微服務簡單術語---簡介#

以上是如何將多子網域網站與獨立的資料庫關聯起來?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板