02-Dubbo特性及工作原理

02-Dubbo特性及工作原理

Dubbo 的特性

这里说一下 Dubbo 最主要的特性,从这些特性中,就可以看出来我们为什么要选用 Dubbo,也可以将 Dubbo 和 Spring Cloud 进行对比,比如我们搭建一套微服务系统,出于什么考虑选用 Dubbo,又是出于什么考虑而选用 Spring Cloud 呢?

Dubbo 主要的特性

  • 负载均衡
  • 服务注册、服务发现
  • 高性能 RPC 调用

接下来针对 Dubbo 的讲解主要从这 3 个特性出发

Dubbo、SpringCloud 技术选型

不过在说 Dubbo 特性之前,要先说一下面试相关的东西,因为我们在面试中,Dubbo 毕竟是分布式相关的东西,那么面试官可能问我们公司是如何进行技术选型的呢?为什么选择使用了 Dubbo 而不是 Spring Cloud 呢?

其实技术选型的东西,就是比较考察你对这两个框架特性的了解,那么像你如果选用了 Dubbo,那么就说一下 Spring Cloud 存在的缺点即可:

  • 落地成本以及后期维护成本大
  • 欠缺服务治理功能,尤其负载均衡、流量路由方面较弱
  • 基于 HTTP 进行通信,性能不如 RPC 框架

而这些缺点,也正是 Dubbo 的优势所在,Dubbo 使用 RPC 进行通信,追求极致的性能,并且可以进行服务治理、负载均衡!

答出来他们各自的优势,那么再说一下由于公司开发人员对于 Dubbo 比较熟悉,因此最终选用 Dubbo 作为分布式框架

Dubbo 工作原理

首先,在讲解 Dubbo 特性之前,先把 Dubbo 的工作原理给梳理一下,了解 Dubbo 底层是如何进行工作的

从整体上先把握,之后再深入到具体特性进行学习

Dubbo 主要分为 3 个部分:注册中心、服务消费者、服务提供者,Dubbo 工作的流程如下

1、每个服务提供者都会去注册中心注册自己,包括自己的地址(ip+port)

2、服务消费者去消费时,从注册中心(Dubbo 使用 ZooKeeper 作为注册中心)中拉取服务列表

3、消费者会去为远程代理对象创建一个动态代理对象,通过动态代理来拦截方法的执行

4、在代理对象的拦截中,会去执行一系列的操作

​ 4.1、负载均衡,选择一台机器进行通信

​ 4.2、选择一种通信协议:Dubbo 提供了自定义的高性能 rpc 通信协议

​ 4.3、将请求进行封装,并且序列化

​ 4.4、通过网络通信框架,将远程调用请求传给 Dubbo 服务提供者

5、Dubbo 服务提供者收到后,也会进行一系列操作解析请求,最后调用本地服务,将执行结果返回给服务消费者

1704897771000
1704897771000

获取更多干货内容,记得关注我哦。

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/3888.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

20241102在荣品PRO-RK3566开发板的预置Android13下适配宸芯的数传模块CX6603N

20241102在荣品PRO-RK3566开发板的预置Android13下适配宸芯的数传模块CX6603N 2024/11/2 18:04 在WIN10使用程序:ViewLink-4.0.7_0708-windows-x64.exe 在荣品PRO-RK3566开发板的预置Android13下使用:ViewLink-2023_12_21-release-0.2.6.apk adb install…

Oracle OCP认证考试考点详解082系列12

题记: 本系列主要讲解Oracle OCP认证考试考点(题目),适用于19C/21C,跟着学OCP考试必过。 56. 第56题: 题目 解析及答案: 关于企业管理器(EM)Express,以下哪两个陈述是…

AutoCAD2020

链接: https://pan.baidu.com/s/1Gvp3lQtMJxP0e_Fs5E_kIg提取码: jvuf 简介:一键安装,已经破解。支持W7-w10-w11系统64位

源鲁杯 2024 web(部分)

[Round 1] Disal F12查看: f1ag_is_here.php 又F12可以发现图片提到了robots 访问robots.txt 得到flag.php<?php show_source(__FILE__); include("flag_is_so_beautiful.php"); $a$_POST[a]; $keypreg_match(/[a-zA-Z]{6}/,$a); $b$_REQUEST[b];if($a>99999…

《高频电子线路》—— 调频方法

文章内容来源于【中国大学MOOC 华中科技大学通信&#xff08;高频&#xff09;电子线路精品公开课】&#xff0c;此篇文章仅作为笔记分享。 目录 调频方法 分类 调频技术指标 小结 直接调频方法与电路 直接调频方法 变容二极管直接调频电路 优缺点以及提升稳定性的方法…

使用onnxruntime-web 运行yolov8-nano推理

ONNX&#xff08;Open Neural Network Exchange&#xff09;模型具有以下两个特点促成了我们可以使用onnxruntime-web 直接在web端上运行推理模型&#xff0c;为了让这个推理更直观&#xff0c;我选择了试验下yolov8 识别预览图片&#xff1a; 1. 跨平台兼容性 ONNX 是一种开…

软件测试学习笔记丨测试平台的价值与体系

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/23405 测试平台的价值与体系 开发测试平台的前提&#xff1a; 已有的开源测试平台不能满足需要&#xff0c;不要轻易造轮子公司的测试体系健全当体系、测试技术等游刃有余&#xff0c;构建平台…

练习LabVIEW第四十题

学习目标&#xff1a; 用labvIEW做一个循环闪烁指示灯&#xff0c;要能够在前面板调节周期和占空比。 开始编写&#xff1a; 前面板 一个布尔指示灯一维数组&#xff0c;两个数值输入控件&#xff1b; 程序框图 添加一个while循环&#xff0c;循环内添加初始化数组&…

基于TRIZ理论的便携式光伏手机充电装置创新

随着智能手机功能的日益强大&#xff0c;电量消耗问题也日益凸显&#xff0c;尤其是在户外活动时&#xff0c;电量告急常常让人措手不及。面对这一挑战&#xff0c;基于TRIZ&#xff08;发明问题解决理论&#xff09;的创新思维&#xff0c;一款全新的便携式光伏手机充电装置应…

OpenOCD之flash write_image和program命令的区别

OpenOCD&#xff1a;Open On-Chip Debugger&#xff0c;自由开源的片上调试和编程工具。 OpenOCD所有的命令索引链接&#xff1a;请点击这里 OpenOCD官方使用手册&#xff1a;https://openocd.org/doc-release/pdf/openocd.pdf [flash write_image]命令 Command: flash write…

无需懂代码!用AI工具Bolt一键生成网站的入门指南!

​ ​ 随着AI技术的不断发展&#xff0c;许多原本需要技术门槛的操作正在被大大简化&#xff0c;甚至零基础的用户也可以轻松实现。 例如&#xff0c;AI生成网站工具Bolt就是这样一个可以帮助我们快速创建、实时预览并自动部署网站的平台。接下来&#xff0c;本文将带你深入了…

作为一名测试人,快来恶补F12的用法!

浏览器都内嵌了一个神奇的开发助手&#xff0c;只需轻敲 F12&#xff0c;它就能即刻现身&#xff0c;这就是我们常说的F12调试工具。 无论你是前端开发还是测试工程师&#xff0c;F12工具都是不可或缺的伙伴。 F12调试工具&#xff0c;简单、轻量&#xff0c;却功能强大。 一…

开源AI智能语音转写系统,提升法庭效率与透明度:精准记录庭审,助力智能司法

一、系统概述 在司法领域&#xff0c;庭审记录的精准度和完整性直接影响案件处理的公平公正。法庭实时语音转写系统通过思通数科AI多模态平台&#xff0c;结合尖端的语音识别技术和自然语言处理&#xff08;NLP&#xff09;&#xff0c;实现实时记录和精准转写&#xff0c;为司…

Linux上部署DNS服务器

1.搭建dns服务器能够对自定义的正向或者反向域完成数据解析查询。 2.配置从DNS服务器&#xff0c;对主dns服务器进行数据备份。 一&#xff0c;正反向解析&#xff1a; 关闭防火墙和selinux [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 在…

代码随想录算法训练营第三十三天 | 62.不同路径 63.不同路径

LeetCode 62.不同路径&#xff1a; 文章链接 题目链接&#xff1a;62.不同路径 思路&#xff1a; 动态规划 使用二维数组保存递推结果 ① dp数组及下标含义 dp[i][j]&#xff1a;表明从(0, 0)到下标为(i, j)的点有多少条不同的路径 ② 递推式&#xff1a; 机器人只能向下或向…

模板

1.非类型模板参数 模板参数分为类型形参与非类型形参&#xff08;都可以用缺省值&#xff09; 类型形参&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称 非类型形参&#xff1a;就是用一个常量作为类&#xff08;函数&#xff09;模板…

diffusion model 学习笔记

条件引导的 diffusion 对于无条件的DDPM 而言 p ( x t ∣ x 0 ) ∼ N ( α t ˉ x 0 , 1 − α t ˉ ⋅ I ) p(x_t | x_0) \sim \mathcal{N}( \sqrt{\bar{\alpha_t}} x_0, 1-\bar{\alpha_t} \cdot \mathrm{I} ) p(xt​∣x0​)∼N(αt​ˉ​ ​x0​,1−αt​ˉ​⋅I) 可以得到…

阿里云高并发测试-Redis缓存机制

创建接口 这里使用的是阿里云提供的接口服务直接做的测试&#xff0c;接口地址 curl http://localhost:8080/initData?tokenAppWithRedis 这里主要通过参数cacheFirstfalse和true来区分是否走缓存&#xff0c;正常的业务机制可能是通过后台代码逻辑自行控制的&#xff0c;这…

设计卷积神经网络CNN为什么不是编程?

上一篇&#xff1a;《搞清楚这个老六的真面目&#xff01;逐层‘剥开’人工智能中的卷积神经网络&#xff08;CNN&#xff09;》 序言&#xff1a;现在让我们开始走进卷积神经网络&#xff08;CNN&#xff09;的世界里。和传统编程完全不同&#xff0c;在人工智能的程序代码里…

气象仿真数据在光伏行业里面的作用

选址与规划 确定资源潜力区域&#xff1a;不同地区的太阳能资源、气候条件差异很大。通过对大量的气象仿真数据进行分析&#xff0c;可以准确评估不同地区的太阳辐射强度、日照时长、温度、湿度、风速风向以及降水情况等气象要素。规避潜在风险&#xff1a;一些地区可能存在极…