Spring Cloud 參考文檔(推送通知和Spring Cloud Bus)

推送通知和Spring Cloud Bus

許多源代碼存儲庫提供程序(例如Github、Gitlab、Gitea、Gitee、Gogs或Bitbucket)經過webhook通知你存儲庫中的更改,你能夠經過提供程序的用戶界面將webhook配置爲URL以及你感興趣的一組事件。例如,Github使用POST到webhook,其中包含一個JSON體,其中包含一個提交列表和一個header(X-Github-Event)設置爲push,若是添加了對spring-cloud-config-monitor庫的依賴並在Config Server中激活Spring Cloud Bus,則會啓用/monitor端點。git

激活webhook後,Config Server會針對它認爲可能已更改的應用程序發送一個RefreshRemoteApplicationEvent,變動檢測能夠制定策略。可是,默認狀況下,它會查找與應用程序名稱匹配的文件中的更改(例如,foo.properties的目標是foo應用程序,而application.properties則針對全部應用程序)。要覆蓋該行爲時使用的策略是PropertyPathNotificationExtractor,它接受請求headers和body做爲參數,並返回已更改的文件路徑列表。github

默認配置的開箱即用的使用Github、Gitlab、Gitea、Gitee、Gogs或Bitbucket,除了來自Github,Gitlab,Gitee或Bitbucket的JSON通知,你能夠經過使用path={name}模式中的form-encoded的body參數POST到/monitor來觸發更改通知,這樣作會廣播到匹配{name}模式(能夠包含通配符)的應用程序。web

僅當在Config Server和客戶端應用程序中激活 spring-cloud-bus時,纔會傳輸 RefreshRemoteApplicationEvent
默認配置還檢測本地git存儲庫中的文件系統更改,在這種狀況下,不使用webhook,可是,只要編輯配置文件,就會廣播刷新。

上一篇:嵌入Config Server

下一篇:Spring Cloud Config Client

相關文章
相關標籤/搜索