dubbo配置參考手冊

  • 配置參考手冊
    • <dubbo:service/>
    • <dubbo:reference/>
    • <dubbo:protocol/>
    • <dubbo:registry/>
    • <dubbo:monitor/>
    • <dubbo:application/>
    • <dubbo:module/>
    • <dubbo:provider/>
    • <dubbo:consumer/>
    • <dubbo:method/>
    • <dubbo:argument/>
    • <dubbo:parameter/>

 

配置參考手冊

  這裏以Xml配置爲準,列舉所有配置項,其它配置方式,請參見相應轉換關係:屬性配置註解配置API配置

注意:只有group,interface,version是服務的匹配條件,三者決定是不是同一個服務,其它配置項均爲調優和治理參數。

所有配置項分爲三大類,參見下表中的"作用"一列。

  • 服務發現:表示該配置項用於服務的註冊與發現,目的是讓消費方找到提供方。
  • 服務治理:表示該配置項用於治理服務間的關係,或爲開發測試提供便利條件。
  • 性能調優:表示該配置項用於調優性能,不同的選項對性能會產生影響。

所有配置最終都將轉換爲URL表示,並由服務提供方生成,經註冊中心傳遞給消費方,各屬性對應URL的參數,參見配置項一覽表中的"對應URL參數"列。

 

<dubbo:service/>

服務提供者暴露服務配置:
配置類:com.alibaba.dubbo.config.ServiceConfig

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:service> interface   class 必填   服務發現 服務接口名 1.0.0以上版本
<dubbo:service> ref   object 必填   服務發現 服務對象實現引用 1.0.0以上版本
<dubbo:service> version version string 可選 0.0.0 服務發現 服務版本,建議使用兩位數字版本,如:1.0,通常在接口不兼容時版本號才需要升級 1.0.0以上版本
<dubbo:service> group group string 可選   服務發現 服務分組,當一個接口有多個實現,可以用分組區分 1.0.7以上版本
<dubbo:service> path <path> string 可選 缺省爲接口名 服務發現 服務路徑 (注意:1.0不支持自定義路徑,總是使用接口名,如果有1.0調2.0,配置服務路徑可能不兼容) 1.0.12以上版本
<dubbo:service> delay delay int 可選 0 性能調優 延遲註冊服務時間(毫秒) ,設爲-1時,表示延遲到Spring容器初始化完成時暴露服務 1.0.14以上版本
<dubbo:service> timeout timeout int 可選 1000 性能調優 遠程服務調用超時時間(毫秒) 2.0.0以上版本
<dubbo:service> retries retries int 可選 2 性能調優 遠程服務調用重試次數,不包括第一次調用,不需要重試請設爲0 2.0.0以上版本
<dubbo:service> connections connections int 可選 100 性能調優 對每個提供者的最大連接數,rmi、http、hessian等短連接協議表示限制連接數,dubbo等長連接協表示建立的長連接個數 2.0.0以上版本
<dubbo:service> loadbalance loadbalance string 可選 random 性能調優 負載均衡策略,可選值:random,roundrobin,leastactive,分別表示:隨機,輪循,最少活躍調用 2.0.0以上版本
<dubbo:service> async async boolean 可選 false 性能調優 是否缺省異步執行,不可靠異步,只是忽略返回值,不阻塞執行線程 2.0.0以上版本
<dubbo:service> stub stub class/boolean 可選 false 服務治理 設爲true,表示使用缺省代理類名,即:接口名 + Local後綴,服務接口客戶端本地代理類名,用於在客戶端執行本地邏輯,如本地緩存等,該本地代理類的構造函數必須允許傳入遠程代理對象,構造函數如:public XxxServiceLocal(XxxService xxxService) 2.0.0以上版本
<dubbo:service> mock mock class/boolean 可選 false 服務治理 設爲true,表示使用缺省Mock類名,即:接口名 + Mock後綴,服務接口調用失敗Mock實現類,該Mock類必須有一個無參構造函數,與Local的區別在於,Local總是被執行,而Mock只在出現非業務異常(比如超時,網絡異常等)時執行,Local在遠程調用之前執行,Mock在遠程調用後執行。 2.0.0以上版本
<dubbo:service> token token string/boolean 可選 false 服務治理 令牌驗證,爲空表示不開啓,如果爲true,表示隨機生成動態令牌,否則使用靜態令牌,令牌的作用是防止消費者繞過註冊中心直接訪問,保證註冊中心的授權功能有效,如果使用點對點調用,需關閉令牌功能 2.0.0以上版本
<dubbo:service> registry   string 可選 缺省向所有registry註冊 配置關聯 向指定註冊中心註冊,在多個註冊中心時使用,值爲<dubbo:registry>的id屬性,多個註冊中心ID用逗號分隔,如果不想將該服務註冊到任何registry,可將值設爲N/A 2.0.0以上版本
<dubbo:service> provider   string 可選 缺使用第一個provider配置 配置關聯 指定provider,值爲<dubbo:provider>的id屬性 2.0.0以上版本
<dubbo:service> deprecated deprecated boolean 可選 false 服務治理 服務是否過時,如果設爲true,消費方引用時將打印服務過時警告error日誌 2.0.5以上版本
<dubbo:service> dynamic dynamic boolean 可選 true 服務治理 服務是否動態註冊,如果設爲false,註冊後將顯示後disable狀態,需人工啓用,並且服務提供者停止時,也不會自動取消冊,需人工禁用。 2.0.5以上版本
<dubbo:service> accesslog accesslog string/boolean 可選 false 服務治理 設爲true,將向logger中輸出訪問日誌,也可填寫訪問日誌文件路徑,直接把訪問日誌輸出到指定文件 2.0.5以上版本
<dubbo:service> owner owner string 可選   服務治理 服務負責人,用於服務治理,請填寫負責人公司郵箱前綴 2.0.5以上版本
<dubbo:service> document document string 可選   服務治理 服務文檔URL 2.0.5以上版本
<dubbo:service> weight weight int 可選   性能調優 服務權重 2.0.5以上版本
<dubbo:service> executes executes int 可選 0 性能調優 服務提供者每服務每方法最大可並行執行請求數 2.0.5以上版本
<dubbo:service> actives actives int 可選 0 性能調優 每服務消費者每服務每方法最大併發調用數 2.0.5以上版本
<dubbo:service> proxy proxy string 可選 javassist 性能調優 生成動態代理方式,可選:jdk/javassist 2.0.5以上版本
<dubbo:service> cluster cluster string 可選 failover 性能調優 集羣方式,可選:failover/failfast/failsafe/failback/forking 2.0.5以上版本
<dubbo:service> filter service.filter string 可選 default 性能調優 服務提供方遠程調用過程攔截器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:service> listener exporter.listener string 可選 default 性能調優 服務提供方導出服務監聽器名稱,多個名稱用逗號分隔  
<dubbo:service> protocol   string 可選   配置關聯 使用指定的協議暴露服務,在多協議時使用,值爲<dubbo:protocol>的id屬性,多個協議ID用逗號分隔 2.0.5以上版本
<dubbo:service> layer layer string 可選   服務治理 服務提供者所在的分層。如:biz、dao、intl:web、china:acton。 2.0.7以上版本
<dubbo:service> register register boolean 可選 true 服務治理 該協議的服務是否註冊到註冊中心 2.0.8以上版本

<dubbo:reference/>

服務消費者引用服務配置:
配置類:com.alibaba.dubbo.config.ReferenceConfig

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:reference> id   string 必填   配置關聯 服務引用BeanId 1.0.0以上版本
<dubbo:reference> interface   class 必填   服務發現 服務接口名 1.0.0以上版本
<dubbo:reference> version version string 可選   服務發現 服務版本,與服務提供者的版本一致 1.0.0以上版本
<dubbo:reference> group group string 可選   服務發現 服務分組,當一個接口有多個實現,可以用分組區分,必需和服務提供方一致 1.0.7以上版本
<dubbo:reference> timeout timeout long 可選 缺省使用<dubbo:consumer>的timeout 性能調優 服務方法調用超時時間(毫秒) 1.0.5以上版本
<dubbo:reference> retries retries int 可選 缺省使用<dubbo:consumer>的retries 性能調優 遠程服務調用重試次數,不包括第一次調用,不需要重試請設爲0 2.0.0以上版本
<dubbo:reference> connections connections int 可選 缺省使用<dubbo:consumer>的connections 性能調優 對每個提供者的最大連接數,rmi、http、hessian等短連接協議表示限制連接數,dubbo等長連接協表示建立的長連接個數 2.0.0以上版本
<dubbo:reference> loadbalance loadbalance string 可選 缺省使用<dubbo:consumer>的loadbalance 性能調優 負載均衡策略,可選值:random,roundrobin,leastactive,分別表示:隨機,輪循,最少活躍調用 2.0.0以上版本
<dubbo:reference> async async boolean 可選 缺省使用<dubbo:consumer>的async 性能調優 是否異步執行,不可靠異步,只是忽略返回值,不阻塞執行線程 2.0.0以上版本
<dubbo:reference> generic generic boolean 可選 缺省使用<dubbo:consumer>的generic 服務治理 是否缺省泛化接口,如果爲泛化接口,將返回GenericService 2.0.0以上版本
<dubbo:reference> check check boolean 可選 缺省使用<dubbo:consumer>的check 服務治理 啓動時檢查提供者是否存在,true報錯,false忽略 2.0.0以上版本
<dubbo:reference> url <url> string 可選   服務治理 點對點直連服務提供者地址,將繞過註冊中心 1.0.6以上版本
<dubbo:reference> stub stub class/boolean 可選   服務治理 服務接口客戶端本地代理類名,用於在客戶端執行本地邏輯,如本地緩存等,該本地代理類的構造函數必須允許傳入遠程代理對象,構造函數如:public XxxServiceLocal(XxxService xxxService) 2.0.0以上版本
<dubbo:reference> mock mock class/boolean 可選   服務治理 服務接口調用失敗Mock實現類名,該Mock類必須有一個無參構造函數,與Local的區別在於,Local總是被執行,而Mock只在出現非業務異常(比如超時,網絡異常等)時執行,Local在遠程調用之前執行,Mock在遠程調用後執行。 Dubbo1.0.13及其以上版本支持
<dubbo:reference> cache cache string/boolean 可選   服務治理 以調用參數爲key,緩存返回結果,可選:lru, threadlocal, jcache等 Dubbo2.1.0及其以上版本支持
<dubbo:reference> validation validation boolean 可選   服務治理 是否啓用JSR303標準註解驗證,如果啓用,將對方法參數上的註解進行校驗 Dubbo2.1.0及其以上版本支持
<dubbo:reference> proxy proxy boolean 可選 javassist 性能調優 選擇動態代理實現策略,可選:javassist, jdk 2.0.2以上版本
<dubbo:reference> client client string 可選   性能調優 客戶端傳輸類型設置,如Dubbo協議的netty或mina。 Dubbo2.0.0以上版本支持
<dubbo:reference> registry   string 可選 缺省將從所有註冊中心獲服務列表後合併結果 配置關聯 從指定註冊中心註冊獲取服務列表,在多個註冊中心時使用,值爲<dubbo:registry>的id屬性,多個註冊中心ID用逗號分隔 2.0.0以上版本
<dubbo:reference> owner owner string 可選   服務治理 調用服務負責人,用於服務治理,請填寫負責人公司郵箱前綴 2.0.5以上版本
<dubbo:reference> actives actives int 可選 0 性能調優 每服務消費者每服務每方法最大併發調用數 2.0.5以上版本
<dubbo:reference> cluster cluster string 可選 failover 性能調優 集羣方式,可選:failover/failfast/failsafe/failback/forking 2.0.5以上版本
<dubbo:reference> filter reference.filter string 可選 default 性能調優 服務消費方遠程調用過程攔截器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:reference> listener invoker.listener string 可選 default 性能調優 服務消費方引用服務監聽器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:reference> layer layer string 可選   服務治理 服務調用者所在的分層。如:biz、dao、intl:web、china:acton。 2.0.7以上版本
<dubbo:reference> init init boolean 可選 false 性能調優 是否在afterPropertiesSet()時飢餓初始化引用,否則等到有人注入或引用該實例時再初始化。 2.0.10以上版本
<dubbo:reference> protocol protocol string 可選   服力治理 只調用指定協議的服務提供方,其它協議忽略。 2.2.0以上版本

<dubbo:protocol/>

服務提供者協議配置:

配置類:com.alibaba.dubbo.config.ProtocolConfig
說明:如果需要支持多協議,可以聲明多個<dubbo:protocol>標籤,並在<dubbo:service>中通過protocol屬性指定使用的協議。

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:protocol> id   string 可選 dubbo 配置關聯 協議BeanId,可以在<dubbo:service protocol="">中引用此ID,如果ID不填,缺省和name屬性值一樣,重複則在name後加序號。 2.0.5以上版本
<dubbo:protocol> name <protocol> string 必填 dubbo 性能調優 協議名稱 2.0.5以上版本
<dubbo:protocol> port <port> int 可選

dubbo協議缺省端口爲20880,rmi協議缺省端口爲1099,http和hessian協議缺省端口爲80 

如果配置爲-1 或者 沒有配置port,則會分配一個沒有被佔用的端口。Dubbo 2.4.0+,分配的端口在協議缺省端口的基礎上增長,確保端口段可控。

服務發現 服務端口 2.0.5以上版本
<dubbo:protocol> host <host> string 可選 自動查找本機IP 服務發現 -服務主機名,多網卡選擇或指定VIP及域名時使用,爲空則自動查找本機IP,-建議不要配置,讓Dubbo自動獲取本機IP 2.0.5以上版本
<dubbo:protocol> threadpool threadpool string 可選 fixed 性能調優 線程池類型,可選:fixed/cached 2.0.5以上版本
<dubbo:protocol> threads threads int 可選 100 性能調優 服務線程池大小(固定大小) 2.0.5以上版本
<dubbo:protocol> iothreads threads int 可選 cpu個數+1 性能調優 io線程池大小(固定大小) 2.0.5以上版本
<dubbo:protocol> accepts accepts int 可選 0 性能調優 服務提供方最大可接受連接數 2.0.5以上版本
<dubbo:protocol> payload payload int 可選 88388608(=8M) 性能調優 請求及響應數據包大小限制,單位:字節 2.0.5以上版本
<dubbo:protocol> codec codec string 可選 dubbo 性能調優 協議編碼方式 2.0.5以上版本
<dubbo:protocol> serialization serialization string 可選 dubbo協議缺省爲hessian2,rmi協議缺省爲java,http協議缺省爲json 性能調優 協議序列化方式,當協議支持多種序列化方式時使用,比如:dubbo協議的dubbo,hessian2,java,compactedjava,以及http協議的json等 2.0.5以上版本
<dubbo:protocol> accesslog accesslog string/boolean 可選   服務治理 設爲true,將向logger中輸出訪問日誌,也可填寫訪問日誌文件路徑,直接把訪問日誌輸出到指定文件 2.0.5以上版本
<dubbo:protocol> path <path> string 可選   服務發現 提供者上下文路徑,爲服務path的前綴 2.0.5以上版本
<dubbo:protocol> transporter transporter string 可選 dubbo協議缺省爲netty 性能調優 協議的服務端和客戶端實現類型,比如:dubbo協議的mina,netty等,可以分拆爲server和client配置 2.0.5以上版本
<dubbo:protocol> server server string 可選 dubbo協議缺省爲netty,http協議缺省爲servlet 性能調優 協議的服務器端實現類型,比如:dubbo協議的mina,netty等,http協議的jetty,servlet等 2.0.5以上版本
<dubbo:protocol> client client string 可選 dubbo協議缺省爲netty 性能調優 協議的客戶端實現類型,比如:dubbo協議的mina,netty等 2.0.5以上版本
<dubbo:protocol> dispatcher dispatcher string 可選 dubbo協議缺省爲all 性能調優 協議的消息派發方式,用於指定線程模型,比如:dubbo協議的all, direct, message, execution, connection等 2.1.0以上版本
<dubbo:protocol> queues queues int 可選 0 性能調優 線程池隊列大小,當線程池滿時,排隊等待執行的隊列大小,建議不要設置,當線程程池時應立即失敗,重試其它服務提供機器,而不是排隊,除非有特殊需求。 2.0.5以上版本
<dubbo:protocol> charset charset string 可選 UTF-8 性能調優 序列化編碼 2.0.5以上版本
<dubbo:protocol> buffer buffer int 可選 8192 性能調優 網絡讀寫緩衝區大小 2.0.5以上版本
<dubbo:protocol> heartbeat heartbeat int 可選 0 性能調優 心跳間隔,對於長連接,當物理層斷開時,比如拔網線,TCP的FIN消息來不及發送,對方收不到斷開事件,此時需要心跳來幫助檢查連接是否已斷開 2.0.10以上版本
<dubbo:protocol> telnet telnet string 可選   服務治理 所支持的telnet命令,多個命令用逗號分隔 2.0.5以上版本
<dubbo:protocol> register register boolean 可選 true 服務治理 該協議的服務是否註冊到註冊中心 2.0.8以上版本
<dubbo:protocol> contextpath contextpath String 可選 缺省爲空串 服務治理   2.0.6以上版本

<dubbo:registry/>

註冊中心配置:

配置類:com.alibaba.dubbo.config.RegistryConfig
說明:如果有多個不同的註冊中心,可以聲明多個<dubbo:registry>標籤,並在<dubbo:service>或<dubbo:reference>的registry屬性指定使用的註冊中心。

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:registry> id   string 可選   配置關聯 註冊中心引用BeanId,可以在<dubbo:service registry="">或<dubbo:reference registry="">中引用此ID 1.0.16以上版本
<dubbo:registry> address <host:port> string 必填   服務發現 註冊中心服務器地址,如果地址沒有端口缺省爲9090,同一集羣內的多個地址用逗號分隔,如:ip:port,ip:port,不同集羣的註冊中心,請配置多個<dubbo:registry>標籤 1.0.16以上版本
<dubbo:registry> protocol <protocol> string 可選 dubbo 服務發現 注同中心地址協議,支持dubbo, http, local三種協議,分別表示,dubbo地址,http地址,本地註冊中心 2.0.0以上版本
<dubbo:registry> port <port> int 可選 9090 服務發現 註冊中心缺省端口,當address沒有帶端口時使用此端口做爲缺省值 2.0.0以上版本
<dubbo:registry> username <username> string 可選   服務治理 登錄註冊中心用戶名,如果註冊中心不需要驗證可不填 2.0.0以上版本
<dubbo:registry> password <password> string 可選   服務治理 登錄註冊中心密碼,如果註冊中心不需要驗證可不填 2.0.0以上版本
<dubbo:registry> transport registry.transporter string 可選 netty 性能調優 網絡傳輸方式,可選mina,netty 2.0.0以上版本
<dubbo:registry> timeout registry.timeout int 可選 5000 性能調優 註冊中心請求超時時間(毫秒) 2.0.0以上版本
<dubbo:registry> session registry.session int 可選 60000 性能調優 註冊中心會話超時時間(毫秒),用於檢測提供者非正常斷線後的髒數據,比如用心跳檢測的實現,此時間就是心跳間隔,不同註冊中心實現不一樣。 2.1.0以上版本
<dubbo:registry> file registry.file string 可選   服務治理 使用文件緩存註冊中心地址列表及服務提供者列表,應用重啓時將基於此文件恢復,注意:兩個註冊中心不能使用同一文件存儲 2.0.0以上版本
<dubbo:registry> wait registry.wait int 可選 0 性能調優 停止時等待通知完成時間(毫秒) 2.0.0以上版本
<dubbo:registry> check check boolean 可選 true 服務治理 註冊中心不存在時,是否報錯 2.0.0以上版本
<dubbo:registry> register register boolean 可選 true 服務治理 是否向此註冊中心註冊服務,如果設爲false,將只訂閱,不註冊 2.0.5以上版本
<dubbo:registry> subscribe subscribe boolean 可選 true 服務治理 是否向此註冊中心訂閱服務,如果設爲false,將只註冊,不訂閱 2.0.5以上版本
<dubbo:registry> dynamic dynamic boolean 可選 true 服務治理 服務是否動態註冊,如果設爲false,註冊後將顯示後disable狀態,需人工啓用,並且服務提供者停止時,也不會自動取消冊,需人工禁用。 2.0.5以上版本

<dubbo:monitor/>

監控中心配置:

配置類:com.alibaba.dubbo.config.MonitorConfig

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:monitor> protocol protocol string 可選 dubbo 服務治理 監控中心協議,如果爲protocol="registry",表示從註冊中心發現監控中心地址,否則直連監控中心。 2.0.9以上版本
<dubbo:monitor> address <url> string 可選 N/A 服務治理 直連監控中心服務器地址,address="10.20.130.230:12080" 1.0.16以上版本

<dubbo:application/>

應用信息配置:

配置類:com.alibaba.dubbo.config.ApplicationConfig

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:application> name application string 必填   服務治理 當前應用名稱,用於註冊中心計算應用間依賴關係,注意:消費者和提供者應用名不要一樣,此參數不是匹配條件,你當前項目叫什麼名字就填什麼,和提供者消費者角色無關,比如:kylin應用調用了morgan應用的服務,則kylin項目配成kylin,morgan項目配成morgan,可能kylin也提供其它服務給別人使用,但kylin項目永遠配成kylin,這樣註冊中心將顯示kylin依賴於morgan 1.0.16以上版本
<dubbo:application> version application.version string 可選   服務治理 當前應用的版本 2.2.0以上版本
<dubbo:application> owner owner string 可選   服務治理 應用負責人,用於服務治理,請填寫負責人公司郵箱前綴 2.0.5以上版本
<dubbo:application> organization organization string 可選   服務治理 組織名稱(BU或部門),用於註冊中心區分服務來源,此配置項建議不要使用autoconfig,直接寫死在配置中,比如china,intl,itu,crm,asc,dw,aliexpress等 2.0.0以上版本
<dubbo:application> architecture  architecture  string 可選   服務治理 用於服務分層對應的架構。如,intl、china。不同的架構使用不同的分層。 2.0.7以上版本
<dubbo:application> environment environment string 可選   服務治理 應用環境,如:develop/test/product,不同環境使用不同的缺省值,以及作爲只用於開發測試功能的限制條件 2.0.0以上版本
<dubbo:application> compiler compiler string 可選 javassist 性能優化 Java字節碼編譯器,用於動態類的生成,可選:jdk或javassist 2.1.0以上版本
<dubbo:application> logger logger string 可選 slf4j 性能優化 日誌輸出方式,可選:slf4j,jcl,log4j,jdk 2.2.0以上版本

<dubbo:module/>

模塊信息配置:

配置類:com.alibaba.dubbo.config.ModuleConfig

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:module> name module string 必填   服務治理 當前模塊名稱,用於註冊中心計算模塊間依賴關係 2.2.0以上版本
<dubbo:module> version module.version string 可選   服務治理 當前模塊的版本 2.2.0以上版本
<dubbo:module> owner owner string 可選   服務治理 模塊負責人,用於服務治理,請填寫負責人公司郵箱前綴 2.2.0以上版本
<dubbo:module> organization organization string 可選   服務治理 組織名稱(BU或部門),用於註冊中心區分服務來源,此配置項建議不要使用autoconfig,直接寫死在配置中,比如china,intl,itu,crm,asc,dw,aliexpress等 2.2.0以上版本

<dubbo:provider/>

服務提供者缺省值配置:

配置類:com.alibaba.dubbo.config.ProviderConfig
說明:該標籤爲<dubbo:service>和<dubbo:protocol>標籤的缺省值設置。

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:provider> id   string 可選 dubbo 配置關聯 協議BeanId,可以在<dubbo:service proivder="">中引用此ID 1.0.16以上版本
<dubbo:provider> protocol <protocol> string 可選 dubbo 性能調優 協議名稱 1.0.16以上版本
<dubbo:provider> host <host> string 可選 自動查找本機IP 服務發現 服務主機名,多網卡選擇或指定VIP及域名時使用,爲空則自動查找本機IP,建議不要配置,讓Dubbo自動獲取本機IP 1.0.16以上版本
<dubbo:provider> threads threads int 可選 100 性能調優 服務線程池大小(固定大小) 1.0.16以上版本
<dubbo:provider> payload payload int 可選 88388608(=8M) 性能調優 請求及響應數據包大小限制,單位:字節 2.0.0以上版本
<dubbo:provider> path <path> string 可選   服務發現 提供者上下文路徑,爲服務path的前綴 2.0.0以上版本
<dubbo:provider> server server string 可選 dubbo協議缺省爲netty,http協議缺省爲servlet 性能調優 協議的服務器端實現類型,比如:dubbo協議的mina,netty等,http協議的jetty,servlet等 2.0.0以上版本
<dubbo:provider> client client string 可選 dubbo協議缺省爲netty 性能調優 協議的客戶端實現類型,比如:dubbo協議的mina,netty等 2.0.0以上版本
<dubbo:provider> codec codec string 可選 dubbo 性能調優 協議編碼方式 2.0.0以上版本
<dubbo:provider> serialization serialization string 可選 dubbo協議缺省爲hessian2,rmi協議缺省爲java,http協議缺省爲json 性能調優 協議序列化方式,當協議支持多種序列化方式時使用,比如:dubbo協議的dubbo,hessian2,java,compactedjava,以及http協議的json,xml等 2.0.5以上版本
<dubbo:provider> default   boolean 可選 false 配置關聯 是否爲缺省協議,用於多協議 1.0.16以上版本
<dubbo:provider> filter service.filter string 可選   性能調優 服務提供方遠程調用過程攔截器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:provider> listener exporter.listener string 可選   性能調優 服務提供方導出服務監聽器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:provider> threadpool threadpool string 可選 fixed 性能調優 線程池類型,可選:fixed/cached 2.0.5以上版本
<dubbo:provider> accepts accepts int 可選 0 性能調優 服務提供者最大可接受連接數 2.0.5以上版本
<dubbo:provider> version version string 可選 0.0.0 服務發現 服務版本,建議使用兩位數字版本,如:1.0,通常在接口不兼容時版本號才需要升級 2.0.5以上版本
<dubbo:provider> group group string 可選   服務發現 服務分組,當一個接口有多個實現,可以用分組區分 2.0.5以上版本
<dubbo:provider> delay delay int 可選 0 性能調優 延遲註冊服務時間(毫秒)- ,設爲-1時,表示延遲到Spring容器初始化完成時暴露服務 2.0.5以上版本
<dubbo:provider> timeout default.timeout int 可選 1000 性能調優 遠程服務調用超時時間(毫秒) 2.0.5以上版本
<dubbo:provider> retries default.retries int 可選 2 性能調優 遠程服務調用重試次數,不包括第一次調用,不需要重試請設爲0 2.0.5以上版本
<dubbo:provider> connections default.connections int 可選 0 性能調優 對每個提供者的最大連接數,rmi、http、hessian等短連接協議表示限制連接數,dubbo等長連接協表示建立的長連接個數 2.0.5以上版本
<dubbo:provider> loadbalance default.loadbalance string 可選 random 性能調優 負載均衡策略,可選值:random,roundrobin,leastactive,分別表示:隨機,輪循,最少活躍調用 2.0.5以上版本
<dubbo:provider> async default.async boolean 可選 false 性能調優 是否缺省異步執行,不可靠異步,只是忽略返回值,不阻塞執行線程 2.0.5以上版本
<dubbo:provider> stub stub boolean 可選 false 服務治理 設爲true,表示使用缺省代理類名,即:接口名 + Local後綴。 2.0.5以上版本
<dubbo:provider> mock mock boolean 可選 false 服務治理 設爲true,表示使用缺省Mock類名,即:接口名 + Mock後綴。 2.0.5以上版本
<dubbo:provider> token token boolean 可選 false 服務治理 令牌驗證,爲空表示不開啓,如果爲true,表示隨機生成動態令牌 2.0.5以上版本
<dubbo:provider> registry registry string 可選 缺省向所有registry註冊 配置關聯 向指定註冊中心註冊,在多個註冊中心時使用,值爲<dubbo:registry>的id屬性,多個註冊中心ID用逗號分隔,如果不想將該服務註冊到任何registry,可將值設爲N/A 2.0.5以上版本
<dubbo:provider> dynamic dynamic boolean 可選 true 服務治理 服務是否動態註冊,如果設爲false,註冊後將顯示後disable狀態,需人工啓用,並且服務提供者停止時,也不會自動取消冊,需人工禁用。 2.0.5以上版本
<dubbo:provider> accesslog accesslog string/boolean 可選 false 服務治理 設爲true,將向logger中輸出訪問日誌,也可填寫訪問日誌文件路徑,直接把訪問日誌輸出到指定文件 2.0.5以上版本
<dubbo:provider> owner owner string 可選   服務治理 服務負責人,用於服務治理,請填寫負責人公司郵箱前綴 2.0.5以上版本
<dubbo:provider> document document string 可選   服務治理 服務文檔URL 2.0.5以上版本
<dubbo:provider> weight weight int 可選   性能調優 服務權重 2.0.5以上版本
<dubbo:provider> executes executes int 可選 0 性能調優 服務提供者每服務每方法最大可並行執行請求數 2.0.5以上版本
<dubbo:provider> actives default.actives int 可選 0 性能調優 每服務消費者每服務每方法最大併發調用數 2.0.5以上版本
<dubbo:provider> proxy proxy string 可選 javassist 性能調優 生成動態代理方式,可選:jdk/javassist 2.0.5以上版本
<dubbo:provider> cluster default.cluster string 可選 failover 性能調優 集羣方式,可選:failover/failfast/failsafe/failback/forking 2.0.5以上版本
<dubbo:provider> deprecated deprecated boolean 可選 false 服務治理 服務是否過時,如果設爲true,消費方引用時將打印服務過時警告error日誌 2.0.5以上版本
<dubbo:provider> queues queues int 可選 0 性能調優 線程池隊列大小,當線程池滿時,排隊等待執行的隊列大小,建議不要設置,當線程程池時應立即失敗,重試其它服務提供機器,而不是排隊,除非有特殊需求。 2.0.5以上版本
<dubbo:provider> charset charset string 可選 UTF-8 性能調優 序列化編碼 2.0.5以上版本
<dubbo:provider> buffer buffer int 可選 8192 性能調優 網絡讀寫緩衝區大小 2.0.5以上版本
<dubbo:provider> iothreads iothreads int 可選 CPU + 1 性能調優 IO線程池,接收網絡讀寫中斷,以及序列化和反序列化,不處理業務,業務線程池參見threads配置,此線程池和CPU相關,不建議配置。 2.0.5以上版本
<dubbo:provider> telnet telnet string 可選   服務治理 所支持的telnet命令,多個命令用逗號分隔 2.0.5以上版本
<dubbo:service> contextpath contextpath String 可選 缺省爲空串 服務治理   2.0.6以上版本
<dubbo:provider> layer layer string 可選   服務治理 服務提供者所在的分層。如:biz、dao、intl:web、china:acton。 2.0.7以上版本

<dubbo:consumer/>

服務消費者缺省值配置:

配置類:com.alibaba.dubbo.config.ConsumerConfig
說明:該標籤爲<dubbo:reference>標籤的缺省值設置。

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:consumer> timeout default.timeout int 可選 1000 性能調優 遠程服務調用超時時間(毫秒) 1.0.16以上版本
<dubbo:consumer> retries default.retries int 可選 2 性能調優 遠程服務調用重試次數,不包括第一次調用,不需要重試請設爲0 1.0.16以上版本
<dubbo:consumer> loadbalance default.loadbalance string 可選 random 性能調優 負載均衡策略,可選值:random,roundrobin,leastactive,分別表示:隨機,輪循,最少活躍調用 1.0.16以上版本
<dubbo:consumer> async default.async boolean 可選 false 性能調優 是否缺省異步執行,不可靠異步,只是忽略返回值,不阻塞執行線程 2.0.0以上版本
<dubbo:consumer> connections default.connections int 可選 100 性能調優 每個服務對每個提供者的最大連接數,rmi、http、hessian等短連接協議支持此配置,dubbo協議長連接不支持此配置 1.0.16以上版本
<dubbo:consumer> generic generic boolean 可選 false 服務治理 是否缺省泛化接口,如果爲泛化接口,將返回GenericService 2.0.0以上版本
<dubbo:consumer> check check boolean 可選 true 服務治理 啓動時檢查提供者是否存在,true報錯,false忽略 1.0.16以上版本
<dubbo:consumer> proxy proxy string 可選 javassist 性能調優 生成動態代理方式,可選:jdk/javassist 2.0.5以上版本
<dubbo:consumer> owner owner string 可選   服務治理 調用服務負責人,用於服務治理,請填寫負責人公司郵箱前綴 2.0.5以上版本
<dubbo:consumer> actives default.actives int 可選 0 性能調優 每服務消費者每服務每方法最大併發調用數 2.0.5以上版本
<dubbo:consumer> cluster default.cluster string 可選 failover 性能調優 集羣方式,可選:failover/failfast/failsafe/failback/forking 2.0.5以上版本
<dubbo:consumer> filter reference.filter string 可選   性能調優 服務消費方遠程調用過程攔截器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:consumer> listener invoker.listener string 可選   性能調優 服務消費方引用服務監聽器名稱,多個名稱用逗號分隔 2.0.5以上版本
<dubbo:consumer> registry   string 可選 缺省向所有registry註冊 配置關聯 向指定註冊中心註冊,在多個註冊中心時使用,值爲<dubbo:registry>的id屬性,多個註冊中心ID用逗號分隔,如果不想將該服務註冊到任何registry,可將值設爲N/A 2.0.5以上版本
<dubbo:consumer> layer layer string 可選   服務治理 服務調用者所在的分層。如:biz、dao、intl:web、china:acton。 2.0.7以上版本
<dubbo:consumer> init init boolean 可選 false 性能調優 是否在afterPropertiesSet()時飢餓初始化引用,否則等到有人注入或引用該實例時再初始化。 2.0.10以上版本
<dubbo:consumer> cache cache string/boolean 可選   服務治理 以調用參數爲key,緩存返回結果,可選:lru, threadlocal, jcache等 Dubbo2.1.0及其以上版本支持
<dubbo:consumer> validation validation boolean 可選   服務治理 是否啓用JSR303標準註解驗證,如果啓用,將對方法參數上的註解進行校驗 Dubbo2.1.0及其以上版本支持

<dubbo:method/>

方法級配置:

配置類:com.alibaba.dubbo.config.MethodConfig
說明:該標籤爲<dubbo:service>或<dubbo:reference>的子標籤,用於控制到方法級,

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:method> name   string 必填   標識 方法名 1.0.8以上版本
<dubbo:method> timeout <metodName>.timeout int 可選 缺省爲的timeout 性能調優 方法調用超時時間(毫秒) 1.0.8以上版本
<dubbo:method> retries <metodName>.retries int 可選 缺省爲<dubbo:reference>的retries 性能調優 遠程服務調用重試次數,不包括第一次調用,不需要重試請設爲0 2.0.0以上版本
<dubbo:method> loadbalance <metodName>.loadbalance string 可選 缺省爲的loadbalance 性能調優 負載均衡策略,可選值:random,roundrobin,leastactive,分別表示:隨機,輪循,最少活躍調用 2.0.0以上版本
<dubbo:method> async <metodName>.async boolean 可選 缺省爲<dubbo:reference>的async 性能調優 是否異步執行,不可靠異步,只是忽略返回值,不阻塞執行線程 1.0.9以上版本
<dubbo:method> sent <methodName>.sent boolean 可選 true 性能調優 異步調用時,標記sent=true時,表示網絡已發出數據 2.0.6以上版本
<dubbo:method> actives <metodName>.actives int 可選 0 性能調優 每服務消費者最大併發調用限制 2.0.5以上版本
<dubbo:method> executes <metodName>.executes int 可選 0 性能調優 每服務每方法最大使用線程數限制- -,此屬性只在<dubbo:method>作爲<dubbo:service>子標籤時有效 2.0.5以上版本
<dubbo:method> deprecated <methodName>.deprecated boolean 可選 false 服務治理 服務方法是否過時,此屬性只在<dubbo:method>作爲<dubbo:service>子標籤時有效 2.0.5以上版本
<dubbo:method> sticky <methodName>.sticky boolean 可選 false 服務治理 設置true 該接口上的所有方法使用同一個provider.如果需要更復雜的規則,請使用用路由 2.0.6以上版本
<dubbo:method> return <methodName>.return boolean 可選 true 性能調優 方法調用是否需要返回值,async設置爲true時才生效,如果設置爲true,則返回future,或回調onreturn等方法,如果設置爲false,則請求發送成功後直接返回Null 2.0.6以上版本
<dubbo:method> oninvoke attribute屬性,不在URL中體現 String 可選   性能調優 方法執行前攔截 2.0.6以上版本
<dubbo:method> onreturn attribute屬性,不在URL中體現 String 可選   性能調優 方法執行返回後攔截 2.0.6以上版本
<dubbo:method> onthrow attribute屬性,不在URL中體現 String 可選   性能調優 方法執行有異常攔截 2.0.6以上版本
<dubbo:method> cache <methodName>.cache string/boolean 可選   服務治理 以調用參數爲key,緩存返回結果,可選:lru, threadlocal, jcache等 Dubbo2.1.0及其以上版本支持
<dubbo:method> validation <methodName>.validation boolean 可選   服務治理 是否啓用JSR303標準註解驗證,如果啓用,將對方法參數上的註解進行校驗 Dubbo2.1.0及其以上版本支持

比如:

<dubbo:reference interface="com.xxx.XxxService">
    <dubbo:method name="findXxx" timeout="3000" retries="2" />
</dubbo:reference>

<dubbo:argument/>

方法參數配置:

配置類:com.alibaba.dubbo.config.ArgumentConfig
說明:該標籤爲<dubbo:method>的子標籤,用於方法參數的特徵描述,比如:

<dubbo:method name="findXxx" timeout="3000" retries="2">
    <dubbo:argument index="0" callback="true" />
<dubbo:method>
標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:argument> index   int 必填   標識 方法名 2.0.6以上版本
<dubbo:argument> type   String 與index二選一   標識 通過參數類型查找參數的index 2.0.6以上版本
<dubbo:argument> callback <metodName><index>.retries boolean 可選   服務治理 參數是否爲callback接口,如果爲callback,服務提供方將生成反向代理,可以從服務提供方反向調用消費方,通常用於事件推送. 2.0.6以上版本

<dubbo:parameter/>

選項參數配置:

配置類:java.util.Map
說明:該標籤爲<dubbo:protocol>或<dubbo:service>或<dubbo:provider>或<dubbo:reference>或<dubbo:consumer>的子標籤,用於配置自定義參數,該配置項將作爲擴展點設置自定義參數使用。

標籤 屬性 對應URL參數 類型 是否必填 缺省值 作用 描述 兼容性
<dubbo:parameter> key key string 必填   服務治理 路由參數鍵 2.0.0以上版本
<dubbo:parameter> value value string 必填   服務治理 路由參數值 2.0.0以上版本
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章