01-Dubbo的初体验

Dubbo2.X的初识

Dubbo背景

Dubbo是分布式远程服务通信框架,与传统单体框架相比,扩展了远程服务之间的通信、服务的治理,其中在单点服务之间的通信上采用RPC模式,而且在通信协议上支持Java的RMI、webservice、JAX-RS、http等协议。

从Dubbo的开发您可以了解到如果我们要去开发一款远程通信框架,需要思路的方向。

1、底层网络通信协议的处理。

2、序列号与反序列号的处理。

3、服务的治理。

Dubbo框架在服务的治理中实现了:服务链路的跟踪与监测、服务的发现与感知、点节点故障的容错机制、请求分发机制。

从这些可以体验到Dubbo不仅仅是个RCP框架,更多的将服务在生产环境中的一套服务治理平台。

Dubbo的基本使用

服务提供端

  • Dubbo依赖jar
<dependency>
  <groupId>org.apache.dubbo</groupId>
  <artifactId>dubbo</artifactId>
  <version>2.7.2</version>
</dependency>
  • 日志依赖的jar
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.26</version>
</dependency>
<dependency>
  <groupId>ch.qos.logback</groupId>
  <artifactId>logback-classic</artifactId>
  <version>1.2.3</version>
</dependency>
  • 添加接口和实现类

  • 创建Dubbo的配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd        http://dubbo.apache.org/schema/dubbo        http://dubbo.apache.org/schema/dubbo/dubbo.xsd">

    <dubbo:application name="提供方应用信息,用于计算依赖关系"/>
    <dubbo:registry address="使用multicast广播注册中心暴露服务地址" file="服务地址缓存存储的路径" group="服务组名称"/>
    <dubbo:protocol name="用dubbo协议" port="20880端口暴露服务" />
    
    <dubbo:service interface="需要暴露的服务接口" ref="payService"/>
    <bean id="payService" class="本地bean实现的服务"/>

</beans>
  • 启动服务

Main.main(args);

  • 添加日志文件

服务消费端

  • 配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd        http://dubbo.apache.org/schema/dubbo        http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
    <dubbo:application name="提供方应用信息,用于计算依赖关系"/>
    <dubbo:registry address="multicast广播注册中心暴露服务地址A"/>
    <dubbo:reference id="" interface="" url="dubbo://x.x.x.x:20880/xx.xx.xx.IXxxService"/>
</beans>
  • 远程访问

Dubbo的本质

简单理解就是SpringIOC容器启动一个Netty服务的发布。

使用zookeeper注册Dubbo的服务

  • jar的依赖
<dependency>
  <groupId>org.apache.curator</groupId>
  <artifactId>curator-framework</artifactId>
  <version>4.0.1</version>
</dependency>
<dependency>
  <groupId>org.apache.curator</groupId>
  <artifactId>curator-recipes</artifactId>
  <version>4.0.1</version>
</dependency>
  • Dubbo实现集成的原理

  • dubbo链接消费端的缓存

主要目的是减少访问的请求的次数。配置缓存

多注册中心的配置

  • 其他配置

1、是发开启重试机制,当失败的时候。

2、zookeeper的登录信息

3、zookeeper的根节点的设置

Dubbo多协议的配置

Dubbo的监控平台的安装与配置

Dubbo-Admin

Dubbo终端的操作

ls  显示服务列表

ps 显示显示服务端口的链接详细信息

count 统计

总结

Dubbo通过zookeeper动态感知服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值