概述

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

dubbo:method标签一共提供了16个属性供配置,除了name属性外,其它都是可选属性。

属性详情

name

方法名,用来标识一个方法,string类型。

timeout

方法调用超时时间,单位毫秒。对应URL中的参数为.timeout,int类型,属于性能调优类属性。

retries

远程服务调用重试次数,不包括第一次调用,不需要重试请设为0。对应URL中的参数为.retries,int类型,缺省值为缺省为的retries,属于性能调优类属性。

loadbalance

负载均衡策略,可选值:random,roundrobin,leastactive,分别表示:随机,轮询,最少活跃调用。对应URL中的参数为.loadbalance,string类型,属于性能调优类属性。

async

是否异步执行,不可靠异步,只是忽略返回值,不阻塞执行线程。对应URL中的参数为.async,boolean类型,缺省为的async,属于性能调优类属性。

sent

异步调用时,标记sent=true时,表示网络已发出数据。对应URL中的参数为.sent,boolean类型,缺省值为true,属于性能调优类属性。

actives

每服务消费者最大并发调用限制。对应URL中的参数为.actives,int类型,缺省值为0,属于性能调优类属性。

executes

每服务每方法最大使用线程数限制,此属性只在作为的子标签时有效。对应URL中的参数为.executes,int类型,缺省值为0,属于性能调优类属性。

deprecated

服务方法是否过时,此属性只在作为的子标签时有效。对应URL中的参数为.deprecated,boolean类型,缺省值为false,属于服务治理类属性。

sticky

设置true 该接口上的所有方法使用同一个provider.如果需要更复杂的规则,请使用用路由。对应URL中的参数为.sticky,boolean类型,缺省值为false,属于服务治理类属性。

return

方法调用是否需要返回值,async设置为true时才生效,如果设置为true,则返回future,或回调onreturn等方法,如果设置为false,则请求发送成功后直接返回Null。对应URL中的参数为.return,boolean类型,缺省值为true,属于性能调优类属性。

oninvoke

方法执行前拦截。string类型,属于性能调优类属性。

onreturn

方法执行返回后拦截。string类型,属于性能调优类属性。

onthrow

方法执行有异常拦截。string类型,属于性能调优类属性。

cache

以调用参数为key,缓存返回结果,可选:lru, threadlocal, jcache等。对应URL中的参数为.cache,string/boolean类型,属于服务治理类属性。

validation

是否启用JSR303标准注解验证,如果启用,将对方法参数上的注解进行校验。对应URL中的参数为.validation,boolean类型,属于服务治理类属性。

#java开发工程师# #架构师# #诗和远方#




dubbo exception filter的原理 dubbo:parameter_性能调优

学习工作之余,一起看看诗和远方:巾峰远眺