dubbo的配置使用----在ssm中的配置

本文详细介绍如何使用Zookeeper作为Dubbo的注册中心,包括配置步骤、直连形式的使用场景,以及本地调试技巧。同时,对比分析了两种连接方式的配置差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、使用zookeeper作为注册中心

首先需要先安装好zookeeper服务器(解压zookeeper安装包-->进入conf/配置好zoo.cfg,在该文件中指定好data目录-->启动)

provider写法:

一般写在applicationContext-service文件中,需要加入dubbo的约束

xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"

 在xsi:schemaLocation标签中加入

http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd

1)配置提供方的信息,用于计算依赖关系,名称可以随意,一般需要见名思意

<dubbo:application name="provider-name" />

2)配置注册中心的地址。并指定注册中心的协议格式

<!--此处使用的是zookeeper为注册中心,故protocol值为zookeeper
    address写的是对应的zookeeper注册中心的IP地址及zookeeper的端口号,默认为2181    -->
<dubbo:registry protocol="zookeeper" address="192.168.1.12:2181" />

3)配置提供服务的协议信息,如端口号等

<!--协议由提供方提供,消费方被动接受,端口指定可以为任意的,但要保证不冲突-->
<dubbo:protocol name="dubbo" port="20880">

4)声明需要暴露的服务接口

<!--interface写相应的服务的接口类全限定名   ref指的是具体的实现类,
    一般写实现类的类名,首字母小写-->
<dubbo:service interface="com.xxx.XxxService" ref="xxxServiceImpl" timeout="30000" />

consumer的写法:

一般写在springmvc.xml文件中,需要加入dubbo的约束

xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"

 在xsi:schemaLocation标签中加入

http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd

1)配置别名,不要和provider中的一致,做到见名知义

<dubbo:application name="consumer-name"/>

2)配置zookeeper注册中心协议格式和IP地址

<dubbo:registry protocol="zookeeper" address="192.168.1.12:2181"/>

3)引用相应的服务

<dubbo:reference interface="com.xxx.XxxService" id="xxxServiceImpl" />

 

二、使用dubbo直连的形式

consumer直接知道对应的provider的地址,不需要注册中心,常用在本地调试中。步骤与上面的差不多

provider写法:

一般写在applicationContext-service文件中,需要加入dubbo的约束

xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"

 在xsi:schemaLocation标签中加入

http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd

    <!-- 指定provider的名字 用于计算依赖关系 -->
	<dubbo:application name="provider-name" />
	<!-- 注册中心的地址 用于使用本地直连,指定地址为空-->
	<dubbo:registry address="N/A" />
	<!-- 配置协议信息,指定host为本地,指定对应的端口号 -->
	<dubbo:protocol host="127.0.0.1" port="20880" />
	<!-- 暴露相应的服务 -->
	<dubbo:service interface="com.xxx.XxxService" ref="xxxServiceImpl" />

consumer的写法:

一般写在springmvc.xml文件中,需要加入dubbo的约束

xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"

 在xsi:schemaLocation标签中加入

http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd

    <!--配置consumer的名字,不要和provider中的一致-->
    <dubbo:application name="consumer-name"/>
    <!--配置注册中心的配置,本处使用本地直连,address指定为空-->
	<dubbo:registry address="N/A"/>	
    <!--引用相应的服务,指定URL 直接告诉consumer provider的地址,
    注意端口号需要和provider配置的一致-->
	<dubbo:reference interface="com.xxx.XxxService" 
		id="xxxServiceImpl" url="127.0.0.1:20880" />
    <!--指定十分钟内不校验服务提供方,用来防止consumer比provider先先启动时报错-->
	<dubbo:consumer timeout="600000" check="false" />

注意:有时候没有网络或者网络不好时需要配置一下本地的dubbo.xsd文件

关于dubbo的源码及原理可以参考如下:http://dubbo.apache.org/zh-cn/docs/source_code_guide/service-invoking-process.html

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值