微服務交互可行解決方案

假設有獨立程序A、B、C、D、E、F、G,它們之間經過http協議訪問,那麼怎樣保證程序之間的訪問高可用。設計

好比下圖的狀況:blog

t1時刻A程序訪問B程序成功(正常),t2時刻A程序訪問的B程序不可用(異常),t3時刻A程序訪問可用的B程序(指望)。token

解決方案之一:接口

第1步:程序B一、B2啓動時告訴「信息中心」它們的存在。io

第2步:程序A1向「信息中心」查詢B程序的訪問地址。cli

第3步:程序A1經過「信息中心」提供的地址訪問程序B1。file

 

「信息中心」接口設計:高可用

/profile?action=&name=&client=&token=接口設計

參數action:register註冊程序,query查詢程序。程序

參數name:action值是"register"則是註冊的程序名,值是"query"則是要查詢的程序名。

參數client:當不爲空的時候「信息中心」檢測到「信息變化」會調用這個接口。

參數token:驗證程序。

 

B1註冊到「信息中心」

/profile?action=register&name=B

 

A1向「信息中心」查詢

/profile?action=query&name=B

相關文章
相關標籤/搜索