dubbo日志关闭_Dubbo配置参考手册之dubbo:service

本文详细介绍了dubbo:service配置,包括接口、服务对象引用、版本、分组等31个属性。重点讨论了性能调优属性如延迟注册、超时时间、重试次数、负载均衡策略,以及服务治理属性如令牌验证、Mock和日志配置。这些属性在服务提供者端起到关键作用,帮助实现服务的高效和稳定。
摘要由CSDN通过智能技术生成

概述

dubbo:service配置项用于在服务提供者端定义真实服务信息,一共有31个属性可供配置。所有配置最终都将转换为URL表示,然后注册到注册中心并传递给消费方。大部分的属性都会有一个URL的参数与之对应。

属性详情

interface

服务接口名,类型是class即接口完整类名,属于dubbo:service标签的必填属性(后续的属性说明中,没有专门指明是必填属性的,均为可选属性),其作用是用于服务发现。

ref

服务对象实现引用,类型是object,指向bean的id,属于dubbo:service标签的必填属性,其作用是用于服务发现。

version

服务版本,建议使用两位数字版本,如:1.0,通常在接口不兼容时版本号才需要升级。对应URL参数为version,类型为string,缺省值为0.0.0。

group

服务分组,对应URL参数为group,类型为string,当一个接口有多个实现,可以用分组区分,比较实用的属性。

path

服务路径,对应URL中的部分路径,类型为string,缺省为接口名。1.0不支持自定义路径,总是使用接口名,如果有1.0调2.0,配置服务路径可能不兼容。

delay

延迟注册服务时间,单位毫秒,类型为int,对应URL中的delay参数,缺省值为0。设为-1时,表示延迟到Spring容器初始化完成时暴露服务。在对dubbo进行优化时,delay是可优化的属性之一。

timeout

远程服务调用超时时间,单位毫秒,类型为int,对应URL的参数为timeout,其缺省值为1000即1秒。和delay一样,也是性能调优属性之一。

retries

远程服务调用重试次数,对应URL的参数为retries,int类型属性,缺省值为2。注意,重试次数不包括第一次调用,这里的重试次数定义的是第一次调用不成功后的重新尝试调用的次数。如果不需要重试,可以设置为0。retries也是服务提供者端性能调优的属性之一。

connections

对每个提供者的最大连接数,即每个提供者同一时间允许保持的最大连接数。int类型,缺省值为100。对应URL参数connections,是性能调优类的属性。connections对于rmi、http、hessian等短连接协议表示限制连接数,对于dubbo等长连接协表示建立的长连接个数。

loadbalance

负载均衡策略,对应URL中的loadbalance参数,string类型,其取值范围为random,roundrobin,leastactive,分别表示随机,轮询,最少活跃调用。loadbalance是性能调优中非常重要的属性之一,缺省值为random。

async

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

local

设为true,表示使用缺省代理类名,即:接口名 + Local后缀,对应URL中的local参数,类型为class或boolean,缺省值为false。local属于服务治理类属性,目前已经废弃,使用stub属性代替。

stub

设为true,表示使用缺省代理类名,即:接口名 + Stub后缀,服务接口客户端本地代理类名,用于在客户端执行本地逻辑,如本地缓存等,该本地代理类的构造函数必须允许传入远程代理对象,构造函数如:public XxxServiceStub(XxxService xxxService)。其对应URL中的stub参数,类型为class或boolean,缺省值为false。

mock

设为true,表示使用缺省Mock类名,即:接口名 + Mock后缀,服务接口调用失败mock实现类,该Mock类必须有一个无参构造函数,与Local的区别在于,Local总是被执行,而Mock只在出现非业务异常(比如超时,网络异常等)时执行,Local在远程调用之前执行,Mock在远程调用后执行。mock是比较重要的服务治理的属性,其类型为class或boolean,缺省值为false。对应URL的参数是mock。

token

令牌验证,为空表示不开启,如果为true,表示随机生成动态令牌,否则使用静态令牌,令牌的作用是防止消费者绕过注册中心直接访问,保证注册中心的授权功能有效,如果使用点对点调用,需关闭令牌功能。token属于服务治理类属性,其类型为class或boolean,缺省值为false。对应URL中的参数为token。

registry

表示当前dubbo:service标签声明服务实现向指定注册中心注册。在多个注册中心时使用,值为的id属性,多个注册中心ID用逗号分隔,如果不想将该服务注册到任何registry,可将值设为N/A。registry类型为string,缺省向所有registry注册。

provider

指定提供者provider,值为的id属性,string类型,缺省使用第一个provider配置。

deprecated

服务是否过时,如果设为true,消费方引用时将打印服务过时警告error日志,boolean类型,缺省为false,是可选的服务治理类属性。对应URL参数为deprecated。

dynamic

服务是否动态注册,如果设为false,注册后将显示后disable状态,需人工启用,并且服务提供者停止时,也不会自动取消册,需人工禁用。boolean类型,对应URL参数为dynamic,缺省值为true,属于服务治理类的属性。

accesslog

设为true,将向logger中输出访问日志,也可填写访问日志文件路径,直接把访问日志输出到指定文件。其类型为string或boolean,缺省值为false,对应URL参数为accesslog。

owner

服务负责人,用于服务治理,请填写负责人公司邮箱前缀。string类型的属性,对应URL参数为owner。

document

服务文档URL,对应URL参数为document,类型为string。

weight

当前服务实现的权重。int类型的性能调优属性,对应URL参数为weight。

executes

服务提供者每服务每方法最大可并行执行请求数,int类型的性能调优类属性,对应URL参数为executes,缺省值为0。

proxy

string类型的性能调优类属性,表示生成动态代理方式,可选取值为jdk和javassist,缺省值为javassist。其在URL的参数为proxy。

cluster

集群方式,string类型的性能调优类属性,可选取值为failover、failfast、failsafe、failback、forking,缺省值为failover。

filter

服务过滤器链,服务提供方远程调用过程拦截器名称,多个名称用逗号分隔。string类型性能调优属性,缺省值为default。其对应的URL参数为service.filter。

listener

服务提供方导出服务监听器名称,多个名称用逗号分隔。string类型的性能调优类属性,其对应的URL参数为exporter.listener,缺省值为default。

protocol

使用指定的协议曝露服务,在多协议时使用,值为的id属性,多个协议ID用逗号分隔。string类型。

layer

服务提供者所在的分层。如:biz、dao、intl:web、china:acton。string类型的服务治理类属性,其在URL上对应的参数为layer。

register

该协议的服务是否注册到注册中心,boolean类型的服务治理类属性,其在URL上对应的参数为register,缺省值为true。

总结

dubbo:service标签的属性非常多,除了interface和ref连个必填属性外,还有部分性能调优类属性会经常用到,比如delay,timeout,retries,loadbalance,async、weight、proxy、cluster等,另外有一些服务治理类的属性也会经常用到,比如mock、token等,可结合应用的场景需要灵活适当配置。

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

14825e182bad490a4a049248479b440f.png

学习工作之余,一起看看诗和远方:湟川河畔

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值