配置類關係(Configuration Relation)
類具體說明:
· ApplicationConfig 應用配置,用於配置當前應用信息,不管該應用是提供者還是消費者。
· RegistryConfig 註冊中心配置,用於配置連接註冊中心相關信息。
· ProtocolConfig 協議配置,用於配置提供服務的協議信息,協議由提供方指定,消費方被動接受。
· ServiceConfig 服務配置,用於暴露一個服務,定義服務的元信息,一個服務可以用多個協議暴露,一個服務也可以註冊到多個註冊中心。
· ProviderConfig 提供方的缺省值,當ProtocolConfig和ServiceConfig某屬性沒有配置時,採用此缺省值。
· ReferenceConfig 引用配置,用於創建一個遠程服務代理,一個引用可以指向多個註冊中心。
· ConsumerConfig 消費方缺省配置,當ReferenceConfig某屬性沒有配置時,採用此缺省值。
· MethodConfig 方法配置,用於ServiceConfig和ReferenceConfig指定方法級的配置信息。
· ArgumentConfig 用於指定方法參數配置。
配置優先級順序(Configuration Override)
· 上圖中以timeout爲例,顯示了配置的查找順序,其它retries,loadbalance, actives等類似。
· 方法級優先,接口級次之,全局配置再次之。
· 如果級別一樣,則消費方優先,提供方次之。
· 其中,服務提供方配置,通過URL經由註冊中心傳遞給消費方。
· 建議由服務提供方設置超時,因爲一個方法需要執行多長時間,服務提供方更清楚,如果一個消費方同時引用多個服務,就不需要關心每個服務的超時設置。
理論上ReferenceConfig的非服務標識配置,在ConsumerConfig,ServiceConfig, ProviderConfig均可以缺省配置。
配置類型(Configuration Type):
注意:只有group,interface,version是服務的匹配條件,三者決定是不是同一個服務,其它配置項均爲調優和治理參數。
所有配置項分爲三大類,參見下表中的"作用"一列。
· 服務發現:表示該配置項用於服務的註冊與發現,目的是讓消費方找到提供方。
· 服務治理:表示該配置項用於治理服務間的關係,或爲開發測試提供便利條件。
· 性能調優:表示該配置項用於調優性能,不同的選項對性能會產生影響。
所有配置最終都將轉換爲URL表示,並由服務提供方生成,經註冊中心傳遞給消費方,各屬性對應URL的參數,參見配置項一覽表中的"對應URL參數"列。
URL格式:
更多dubbo配置信息移步:https://www.gitbook.com/@dubbo
關注公衆號獲取海量視頻