概述
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开发工程师# #架构师# #诗和远方#
学习工作之余,一起看看诗和远方:巾峰远眺