dubbo:method

方法级配置。对应的配置类: org.apache.dubbo.config.MethodConfig。同时该标签为 <dubbo:service><dubbo:reference> 的子标签,用于控制到方法级。

属性对应URL参数类型是否必填缺省值作用描述兼容性
namestring必填标识方法名1.0.8以上版本
timeout<methodName>.timeoutint可选缺省为的timeout性能调优方法调用超时时间(毫秒)1.0.8以上版本
retries<methodName>.retriesint可选缺省为<dubbo:reference>的retries性能调优远程服务调用重试次数,不包括第一次调用,不需要重试请设为02.0.0以上版本
loadbalance<methodName>.loadbalancestring可选缺省为的loadbalance性能调优负载均衡策略,可选值:random,roundrobin,leastactive,分别表示:随机,轮询,最少活跃调用2.0.0以上版本
async<methodName>.asyncboolean可选缺省为<dubbo:reference>的async性能调优是否异步执行,不可靠异步,只是忽略返回值,不阻塞执行线程1.0.9以上版本
sent<methodName>.sentboolean可选true性能调优异步调用时,标记sent=true时,表示网络已发出数据2.0.6以上版本
actives<methodName>.activesint可选0性能调优每服务消费者最大并发调用限制2.0.5以上版本
executes<methodName>.executesint可选0性能调优每服务每方法最大使用线程数限制- -,此属性只在<dubbo:method>作为<dubbo:service>子标签时有效2.0.5以上版本
deprecated<methodName>.deprecatedboolean可选false服务治理服务方法是否过时,此属性只在<dubbo:method>作为<dubbo:service>子标签时有效2.0.5以上版本
sticky<methodName>.stickyboolean可选false服务治理设置true 该接口上的所有方法使用同一个provider.如果需要更复杂的规则,请使用用路由2.0.6以上版本
return<methodName>.returnboolean可选true性能调优方法调用是否需要返回值,async设置为true时才生效,如果设置为true,则返回future,或回调onreturn等方法,如果设置为false,则请求发送成功后直接返回Null2.0.6以上版本
oninvokeattribute属性,不在URL中体现String可选性能调优方法执行前拦截2.0.6以上版本
onreturnattribute属性,不在URL中体现String可选性能调优方法执行返回后拦截2.0.6以上版本
onthrowattribute属性,不在URL中体现String可选性能调优方法执行有异常拦截2.0.6以上版本
cache<methodName>.cachestring/boolean可选服务治理以调用参数为key,缓存返回结果,可选:lru, threadlocal, jcache等Dubbo2.1.0及其以上版本支持
validation<methodName>.validationboolean可选服务治理是否启用JSR303标准注解验证,如果启用,将对方法参数上的注解进行校验Dubbo2.1.0及其以上版本支持

比如:

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