当前位置: 首页 > 科技观察

SpringBootDubboapplications.properties配置清单

时间:2023-03-13 23:30:53 科技观察

本文大纲1、前言2、applications.properties配置清单3、@Service服务提供者常用配置4、@Reference服务消费者常用配置5、总结运行环境:JDK7或8.Maven3.0+技术栈:SpringBoot1.5+,Dubbo2.5+1.前言Mason发表完《Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例》和《如何在 Spring Boot 使用 Dubbo Activate 扩展点》两篇文章后,很多人跟我聊起SpringBoot集成Dubbo的细节。当然大部分都是配置问题,比如Q:如果一个程序既提供服务又提供消费者,如何配置扫描包?A(群友周博):com.xxx.provider生产者,com.xxx.consumer消费者,然后扫描包设置为com.xxxQ:如何设置消费者调用生产者的超时时间?A:目前无法通过application.properties来定义。@ReferencetimeoutQ:consumer如何配置访问多个provider?A:@Reference可以指定不同的寄存器。Register(registercenterlikeprovidercontainer)可以对应多个providerQ:@Service(version="1.0.0")从application.properties配置文件可以读取到这个1.0.0吗?可以区分不同的环境,统一升级管理A:时序没有解决...但是应用环境,比如:dev/test/run,可以使用如下配置spring.dubbo.application.environment这里,SpringBoot的集成Dubbo项目依赖spring-boot-starter-dubbo项目,项目地址为https://github.com/teaey/spring-boot-starter-dubbo。2.applications.properties配置列表根据starter工程源码可以看到application.properties对应的Dubbo配置类DubboProperties。包括扫描路径、应用配置类、注册中心配置类和服务协议类。具体常用配置下:扫描包路径:指Dubbo服务注解的服务包路径##Dubbo配置#扫描包路径spring.dubbo.scan=org.spring.springboot.dubbo应用配置类:关于Dubbo应用级配置##Dubbo应用配置//应用名称spring.dubbo.application.name=xxx//模块版本spring.dubbo.application.version=xxx//应用所有者spring.dubbo.application.owner=xxx//组织名称(BU或部门)spring.dubbo.application.organization=xxx//层级spring.dubbo.application.architecture=xxx//环境,如:dev/test/runspring.dubbo.application.environment=xxx//java代码编译spring.dubbo.application.compiler=xxx//日志输出方式spring.dubbo.application.logger=xxx//注册中心0spring.dubbo.application.registries[0].address=zookeeper://127.0.0.1:2181=xxx//注册中心1spring.dubbo.application.registries[1].address=zookeeper://127.0.0.1:2181=xxx//服务监控spring.dubbo.application.monitor.address=xxx这里注意多注册中心是怎么配置的。下面介绍如何配置单个注册中心。注册中心配置类:ZooKeeper常用作服务注册的注册中心。#dubbo注册中心配置类//注册中心地址spring.dubbo.application.registries.address=xxx//注册中心登录用户名spring.dubbo.application.registries.username=xxx//注册中心登录密码spring.dubbo.application.registries.password=xxx//注册中心默认端口spring.dubbo.application.registries.port=xxx//注册中心协议spring.dubbo.application.registries.protocol=xxx//客户端实现spring.dubbo。application.registries.transporter=xxxspring.dubbo.application.registries.server=xxxspring.dubbo.application.registries.client=xxxspring.dubbo.application.registries.cluster=xxxspring.dubbo.application.registries.group=xxxspring.dubbo。application.registries.version=xxx//注册中心请求超时时间(毫秒)spring.dubbo.application.registries.timeout=xxx//注册中心会话超时时间(毫秒)spring.dubbo.application.registries.session=xxx//动态注册中心列表存储文件spring.dubbo.application.registries.file=xxx//停止时等待完成通知时间spring.dubbo.application.registries.wait=xxx//启动时检查注册中心是否存在spring.dubbo。application.registries.check=xxx//在这个注册中心注册是动态服务还是静态服务spring.dubbo.application.registries.dynamic=xxx//在这个注册中心注册中心上的服务是否暴露spring.dubbo.application.registries.register=xxx//注册中心上的服务是否引用spring.dubbo.application.registries.subscribe=xxx服务协议配置类:##Dubbo服务协议配置//服务协议spring.dubbo.application.protocol.name=xxx//服务IP地址(多网卡时使用)spring.dubbo.application.protocol.host=xxx//服务端口spring.dubbo.application.protocol.port=xxx//上下文路径spring.dubbo.application.protocol.contextpath=xxx//线程池类型spring.dubbo.application.protocol.threadpool=xxx//线程池大小(固定大小)spring.dubbo.application.protocol.threads=xxx//IO线程池大小(固定大小)spring.dubbo.application.protocol.iothreads=xxx//线程池队列大小spring.dubbo.application.protocol.queues=xxx//最大接收数connectionsspring.dubbo.application.protocol.accepts=xxx//协议编码spring.dubbo.application.protocol.codec=xxx//序列化方式spring.dubbo.application.protocol.serialization=xxx//字符集spring.dubbo.application.protocol.charset=xxx//最大请求数据长度spring.dubbo.application.protocol.payload=xxx//缓冲区大小spring.dubbo.application.protocol.buffer=xxx//心跳间隔spring.dubbo.application.protocol.heartbeat=xxx//访问日志spring.dubbo.application.protocol.accesslog=xxx//网络传输方式spring.dubbo.application.protocol.transporter=xxx//信息交换方式spring.dubbo.application.protocol.exchanger=xxx//信息线程模型分发方式spring.dubbo.application.protocol.dispatcher=xxx//对称网络组网方式spring.dubbo.application.protocol.networker=xxx//服务端实现spring.dubbo.application.protocol.server=xxx//客户端实现spring.dubbo.application.protocol.client=xxx//支持的telnet命令,多个命令以逗号分隔查看spring.dubbo.application.protocol.status=xxx//spring.dubbo.application.protocol.status=xxx是否注册3.@Service服务商常用配置@Service常用配置如下版本版本groupGroupproviderprovider协议lserviceprotocolmonitorservicemonitorregistry服务注册...4.@Referenceserviceconsumer常用配置@Reference配置如下详细介绍了SpringBootDubbo集成中的大集合【本文为专栏作家“李强强”原创稿件,转载请联系作者获得授权】点此查看该作者更多好文