Dubbo 分布式服务框架(入门)

Dubbo分布式服务框架入门(附工程) 本文介绍了dubbo的一些概念,并对zookeeper、dubbo-admin、提供者、消费者的搭建进行了详细的讲解,且附有工程源码 阅读详情

1.1 概念

Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,可以和spring框架无缝集成。
Dubbo 采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。
Dubbo 致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案;

①服务定义: 服务是围绕服务提供方和服务消费方的,服务提供方实现服务,而服务消费方调用服务。

②服务注册: 对于服务提供方,它需要发布服务,而且由于应用系统的复杂性,服务的数量、类型也不断膨胀;对于服务消费方,它最关心如何获取到它所需要的服务,而面对复杂的应用系统,需要管理大量的服务调用。而且,对于服务提供方和服务消费方来说,他们还有可能兼具这两种角色,即需要提供服务,又需要消费服务。
通过将服务统一管理起来,可以有效地优化内部应用对服务发布/使用的流程和管理。服务注册中心有如下几种类型可供选择:
Multicast注册中心(测试)、Zookeeper注册中心(官方推荐)、Redis注册中心、Simple注册中心

③服务监控
无论是服务提供方,还是服务消费方,他们都需要对服务调用的实际状态进行有效的监控,从而改进服务质量。

④远程通信与信息交换
远程通信需要指定通信双方所约定的协议,在保证通信双方理解协议语义的基础上,还要保证高效、稳定的消息传输。Dubbo继承了当前主流的网络通信框架,主要包括如下几个:
Mina、Netty、Grizzly
在这里插入图片描述

1.2案例解析

在这里插入图片描述

1.2.1注册中心
public interface service {
    public String sayHello(String msg);
}
1.2.2服务提供方

(一)实现类

/*
* 服务提供方
* */
public class UserServiceImpl implements service {
    /*
    *
    * 具体方法的实现
    *
    * */
    public String sayHello(String msg) {
        System.out.println("远程调用服务:"+msg);
        return "hello"+msg;
    }
}

(二)配置文件

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
      http://code.alibabatech.com/schema/dubbo
      http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!--应用名称-->
    <dubbo:application name="userService_provider"/>
    <!--指定注册中心的地址-->
    <dubbo:registry address="multicast://224.5.6.7:1234" />
    <!--使用协议和端口号-->
    <dubbo:protocol name="dubbo" port="20880"/>
    <!--发布服务接口  ref放实现类-->
    <dubbo:service interface="cn.tx.service.service" ref="userService"/>
    <!--使用bean管理实现类-->
    <bean id="userService" class="cn.tx.service.impl.UserServiceImpl"/>

</beans>

(三)测试方法

public class UserServletBoot {
    public static void main(String[] args) throws IOException {
        //加载spring的配置文件
        ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:dubbo_provider.xml");
        //阻塞
        System.in.read();
    }
}
1.2.3服务消费方

(一)配置文件

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
      http://code.alibabatech.com/schema/dubbo
      http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!--应用名称-->
    <dubbo:application name="userService_consumer"/>
    <!--注册中心的地址-->
    <dubbo:registry address="multicast://224.5.6.7:1234" />
    <!--可以使用服务-->
    <dubbo:reference interface="cn.tx.service.service" id="userService"/>
</beans>

(二)测试方法

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:dubbo_consumer.xml")
public class ConsumerTest {
    @Autowired
    private service service;
    @Test
    public void run1(){
        String msg = service.sayHello("亮哥爱玩");
        System.out.println(msg);
    }
}
dubbo监控中心(dubbo-admin)使用与安装 详细讲述了dubbo-admin的安装与使用,详细讲述了dubbo-admin的安装与使用,详细讲述了dubbo-admin的安装与使用 立即下载

相关推荐

什么是Claude 的 Agent Skills?

摘要: Claude的Agent Skills功能支持通过结构化技能包(含指令、脚本、工具)实现任务自动化,如数据分析、文档生成等。核心能力包括:1)技能包管理(如Python脚本+模板);2)工具调用(API/数据库交互);3)子代理协作(拆分复杂任务)。快速上手步骤:创建技能包(如Excel报表生成)、配置工具权限、触发执行;支持多代理并行处理(如SQL查询+可视化)。关键技巧:工具需明确定义参数、利用子代理共享上下文、注重权限管控。官方文档与社区资源提供进阶指导,使Claude成为可编程的数字助手。

jobleap.cn求职助手首页 1729

分布式框架 ---dubbo

分布式框架-Dubbox 1 什么是SOA架构 SOA是Service-Oriented Architecture的首字母简称,它是一种支持面向服务的架构样式。从服务、基于服务开发和服务的结果来看,面向服务是一种思考方式。其实SOA架构更多应用于互联网项目开发。 为什么互联网项目会采用SOA架构呢?随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,迫切需一个治理系统确保架构有条不紊的演进。 战争论–《战争论》是普鲁士军事理论家卡尔·冯·克劳塞维

guoguo0717的博客 673

STM32驱动2.8寸TFTLCD屏幕实战:从看懂原理图到点亮第一个像素(基于ILI9341)

本文详细介绍了如何使用STM32驱动2.8寸TFTLCD屏幕(基于ILI9341驱动芯片),从硬件连接到软件配置,包括FSMC接口设置、ILI9341初始化序列、坐标设置及基础绘图函数实现。文章还提供了常见问题排查指南和性能优化技巧,帮助开发者快速解决屏幕不亮等问题,并提升显示性能。

weixin_42665255的博客 267

Dubbo入门

Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起。 单一应用框架(ORM)  当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本。  缺点:单一的系统架构,使得在开发过程中,占用的资源越来越多,而且随着流量的增加越来越难以维护  垂直应用框架(MVC)  垂直应用架构解决了单一应用架构所面

opera95的博客 802

新能源知识库(62)组串式、集中式和高压直挂式

因需多台PCS及独立监控设备,单位功率成本比集中式高15%–20%。高压直挂式因省去变压器,大容量项目成本更低(>5MW时优势显著)。组串式储能、集中式储能和高压直挂式储能是当前主流的三类技术路线,其核心差异源于系统架构和控制逻辑的设计差异。组串式交流侧需变压器升压至10kV/35kV,高压直挂式可直接输出6kV/35kV电压,减少转换损耗。多台小功率PCS并联(每簇独立管理)单台大功率PCS(多簇直流侧并联)环流导致容量衰减(损失5%–8%)无变压器损耗(效率>99%)高压直挂电站(≥10MW)

竹君子之家 1515

告别ROS1!在Ubuntu 22.04上为VINS-Fusion适配ROS2 Humble的完整踩坑记录

本文详细记录了在Ubuntu 22.04上将VINS-Fusion从ROS1迁移到ROS2 Humble的完整过程,包括环境搭建、依赖管理、核心代码适配及性能优化。通过实战案例和调试技巧,帮助开发者高效解决迁移过程中的常见问题,提升系统稳定性和性能。

weixin_42628688的博客 281

01-分布式框架-Dubbo

1 Dubbo 简介 Dubbo 是一个分布式服务框架, 是阿里巴巴开源项目 , 被国内电商及互联网项目中使 用。 Dubbo 致力于提供高性能和透明化的 RPC 远程服务调用方案, 以及 SOA 服务治理方 案。 简单的说, Dubbo 就是个服务框架, 如果没有分布式的需求, 其实是不需要用的, 只 有在分布式的时候, 才有 Dubbo 这样的分布式服务框架的需求, 并且本质上是个服务调用 的...

世界属于三体 347

保姆级教程:用Seurat 5.0.1搞定单细胞测序数据从质控到细胞注释的全流程

本文提供了一份详细的Seurat 5.0.1单细胞测序数据分析教程,涵盖从数据质控到细胞注释的全流程。通过R代码示例和可视化分析,帮助用户掌握单细胞RNA测序数据处理的核心技术,包括数据标准化、降维聚类和细胞类型注释,适用于生物信息学研究和临床数据分析。

weixin_29067143的博客 197

dubbo分布式服务框架入门

目录 1.dubbo简介 2.dubbo架构 3.dubbo搭建 3.1本地本地搭建service和web模块 3.2dubbo搭建 3.3优化dubbo搭建 本文参考b站黑马程序员dubbo入门课程 视频连接:https://www.bilibili.com/video/BV1VE411q7dX?p=1 1.dubbo简介 Dubbo是阿里巴巴公司开源的一个高性能、轻量级的JavaRPC框架,致力于提供高性能和透明化 的RPC远程服务调用方案,以及SOA服务治理方案 dubbo

雪月清的博客 5166

使用Google Earth Engine下载JRC全球水体数据

通过Google Earth Engine平台和提供的源代码,研究人员和水资源管理者可以方便地获取和利用这一重要的水资源监测数据集,从而开展相关的研究和决策支持工作。要使用Google Earth Engine下载JRC全球水体数据,首先需要在Google Earth Engine平台上进行注册和登录。JRC全球水体数据是由欧洲联合研究中心开发的高分辨率全球水体分类数据集,覆盖了整个地球的陆地和水域。下载完成后,你可以使用各种遥感数据处理软件来打开和分析这些数据,以满足不同的研究和应用需求。

LrlDebug的博客 1158

【AUTOSAR-DEM】-2.4-APP SWC如何读取MIL灯状态以及配置MIL灯

该篇博文将告诉您: MIL(Malfunction Indicator Lamp/Light)灯的点灯和灭灯过程; DEM模块如何配置MIL灯; APP SWC如何获取MIL灯状态。

「汽车电子助手」的博客 1712

Dubbo分布式服务框架入门

Dubbo(开源分布式服务框架) 官网文档地址:https://dubbo.apache.org/zh/docs/ 一、概述 Dubbo(读音[ˈdʌbəʊ])是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。 Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 1.1、主要核心部件 Remoting: 网络通信框架,

雁迟的博客 482

AE 与 ISP 参数联动机制解析:自动曝光系统与图像信号处理模块协同设计实践

AE(自动曝光)并不是一个独立的图像控制模块,而是与 ISP(Image Signal Processor)深度耦合运作的系统协同体。其输出的曝光参数直接决定了图像处理链路中 Gamma 曲线选择、黑电平补偿、去噪级别、边缘增强等一系列关键参数的取值。本文基于主流平台(如高通、MTK、海思)的工程实战经验,详细剖析 AE 与 ISP 在曝光驱动、调节优先级、图像还原逻辑等环节的联动机制,并结合拍照与视频等不同场景,给出可落地的联调方法。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1528

Dubbo分布式服务框架基础入门

一、架构演变 1、单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本。 缺点:单一的系统架构,使得在开发过程中,占用的资源越来越多,而且随着流量的增加越来越难以维护 2、垂直应用框架(MVC) 垂直应用架构解决了单一应用架构所面临的扩容问题,流量能够分散到各个子系统当中,且系统的体积可控,一定程度上降低了开发人员之间协同以及维护的成本,提升了开发效率。 缺点:但是在垂直架构中相同逻辑代码需要不断的复制,不能复用。 3、分布式应用架构(RPC)

java编程学习_java基础教程_booyzhang的博客 350

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Dubbo分布式服务框架入门实战(附源码)

Dubbo分布式服务框架入门实战(附源码)

qq_43667968的博客 179

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Dubbo(开源分布式服务框架)入门

一:Dubbo简介 Dubbo是一个常用的分布式服务框架,它致力于提供高性能、透明化的RPC远程服务方案。底层是rpc协议,学习Dubbo有助于提高企业级应用的开发效率,以及可通过简单的配置就可以实现负载均衡,提高服务的效率,是SOA(分布式架构)的核心框架。 SOA架构与OA架构的区别: soa分布式架构, 是一种设计.也就是将以前传统的一个项目拆分, 一个模块就创建一个项目, 多个项目之间松...

kayla_wzp的博客 376

dubbo分布式服务框架入门实例

dubbo是一个分布式服务框架,支持rpc即远程服务调用,底层基于Netty实现,现在项目中使用,都是通过spring来集成,很容易和spring项目结合使用,配置使用dubbo服务,就和配置本地服务一样,传统基于http调用的服务,都可以通过dubbo来改造实现。dubbo支持负载均衡,是一个理想的服务治理框架。dubbo框架体现了soa的思想,将服务统一管理,便于维护,消费者与服务提供者实现弱...

feinifi的博客 355

硬核,Dubbo分布式服务框架入门教程

Dubbo是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。 Dubbo内部使用了 Netty、Zookeeper,保证了高性能高可用性,使用Dubbo可以将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,可用于提高业务复用和灵活扩展,使前端应用能更快速的响应多变的市场需求。 另外,分布式架构可以承受更大规模的并发流量。 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起。 1、单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一

DDDYSz的博客 1351

分布式服务框架Dubbo快速入门(一)快速搭建XML消费者服务者

分布式服务框架Dubbo快速入门(一)快速搭建XML消费者服务者官方文档:http://dubbo.apache.org/#/docs/user/quick-start.md?lang=zh-cn1、创建父项目spring-dubbo 1.1、父项目pom依赖&lt;?xml version="1.0" encoding="UTF-8"?&gt; ​ &lt;project xmlns="http...

yangliuhbhd的博客 358

分布式服务框架Dubbo入门实例

Dubbo的官网中是这样介绍Dubbo的。DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。 本文是对Dubbo的框架的一次学习步骤记录。 所需环境:Centos7 x64,Win7 x64,eclipse,ma

水中加点糖 5069
上一篇: Vue2渐进式框架(一)
下一篇: Swagger体验版
智汇风渔AI小白
博客等级 码龄7年 1万+粉丝 179原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智汇风渔AI小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值