当前位置: 首页 > news >正文

dubbo的一些问题思考

1.dubbo是啥

Dubbo 是一个高性能的 Java RPC(远程过程调用)框架,用于构建分布式服务架构。由阿里巴巴开发并开源,作为一个分布式服务框架,Dubbo 提供了丰富的功能,包括服务治理、远程调用、负载均衡、容错机制等,帮助构建高性能、可扩展的分布式系统。

具体来说,Dubbo 框架为分布式系统提供了以下功能和特性:

  1. 远程调用:Dubbo 提供了远程服务调用的能力,允许不同服务之间透明地进行通信。

  2. 服务治理:Dubbo 提供了一系列服务治理功能,包括服务注册与发现、路由、动态配置、负载均衡、容错等,用于更好地管理和监控分布式系统中的各个服务。

  3. 负载均衡:Dubbo 支持多种负载均衡策略,能够根据实际场景灵活选择负载均衡策略,以提高系统的稳定性和性能。

  4. 容错机制:Dubbo 提供了针对分布式调用的容错机制,包括快速失败、失败重试、失败自动切换等,以保障服务的可靠性。

2.使用dubbo

1.自己在Linux里安装docker

2.拉取dubbo-admin镜像

3.拉取zookeeper镜像

4.创建启动这两镜像的容器(创建dubbo-admin容器的时候连接zookeeper容器)

1.Dubbo-admin是啥?

        Dubbo-Admin 是 Dubbo 的管理控制台,Dubbo-Admin 是一个基于 Dubbo 协议的服务治理系统。通过 Dubbo-Admin,您可以查看 Dubbo 服务的各种统计数据、配置信息、动态调整参数以及监控 Dubbo 服务的运行状态。Dubbo-Admin 能够帮助您更好地管理和维护 Dubbo 服务。

具体来说,Dubbo-Admin 包含了以下一些功能:

  1. 服务治理:Dubbo-Admin 可以对 Dubbo 服务进行治理,包括对服务进行注册、下线、动态配置、路由规则配置等。

  2. 监控统计:Dubbo-Admin 可以展示 Dubbo 服务的运行状态、调用次数、响应时间等统计信息,帮助您更好地了解服务的运行情况。

  3. 动态配置:Dubbo-Admin 允许您动态地修改 Dubbo 服务的一些配置信息,如权重配置、路由规则、限流配置等。

  4. 简而言之:它就像Navicat一样是一个管理的控制台

2.Dubbo-admin连接Zookeeper干嘛?

        Dubbo-Admin 控制台可以连接到 ZooKeeper。Dubbo-Admin 通常作为 Dubbo 服务治理的控制台,通过连接到 ZooKeeper,它能够获取 Dubbo 服务注册中心中的服务提供者和消费者信息,监控这些服务的运行状态,并进行服务治理操作。

具体来说,Dubbo-Admin 连接到 ZooKeeper 的作用包括:

  1. 服务发现:Dubbo-Admin 通过连接到 ZooKeeper,能够发现注册在 ZooKeeper 上的 Dubbo 服务提供者和消费者,并把这些信息展示在管理控制台上。

  2. 监控统计:Dubbo-Admin 可以从 ZooKeeper 获取 Dubbo 服务的运行状态、调用次数、响应时间等统计信息,用于服务的监控和统计分析。

  3. 服务治理:Dubbo-Admin可以通过连接到 ZooKeeper,执行一些服务治理操作,如服务上下线、动态配置等,将这些操作同步到 ZooKeeper 上,从而影响 Dubbo 服务的运行状态。

  4. 总而言之:把zookeeper作为了注册中心

3. zookeeper起到的作用?

          ZooKeeper 经常被用作 Dubbo 的注册中心。在 Dubbo 中,服务提供者会将自己的地址注册到 ZooKeeper 上,而服务消费者则在 ZooKeeper 中获取服务提供者的地址。这使得 Dubbo 框架能够实现服务的注册与发现,从而协调服务提供者和消费者之间的通信

ZooKeeper 提供了分布式的协调服务,可用于服务的注册与发现、动态配置等。Dubbo 利用 ZooKeeper 作为注册中心,通过 ZooKeeper 可以实现对服务提供者和消费者的动态管理,以及对服务调用过程的协调。

通过将 ZooKeeper 作为 Dubbo 的注册中心,Dubbo 框架能够实现高效的服务注册与发现,帮助构建出更加强大和可靠的分布式系统

 如何注册?

在我们自己写的项目的配置文件application.properties 中,不是写在那个springboot那个自带那个application.yml配置中,xxx.properties文件优先级高于xxx.yml

####################### Dubbo 配置 ##############
# 服务名
dubbo.application.name=user
# 注册中心地址
dubbo.registry.address=zookeeper://192.168.184.140
# 注册中心端口
dubbo.registry.port=2181
# 连接注册中心超时事件
dubbo.registry.timeout=100000
# 采用的协议:dubbo协议
dubbo.protocol.name=dubbo
# dubbo协议端口号
dubbo.protocol.port=20881
# 扫描dubbo注解基础包
dubbo.scan.base-packages=top.psjj

业务层@service用的是dubbo依赖包中的service注解,目的是将服务暴露出去

 

相关文章:

dubbo的一些问题思考

1.dubbo是啥 Dubbo 是一个高性能的 Java RPC(远程过程调用)框架,用于构建分布式服务架构。由阿里巴巴开发并开源,作为一个分布式服务框架,Dubbo 提供了丰富的功能,包括服务治理、远程调用、负载均衡、容错机…...

盛最多水的容器(力扣11题)

例题: 分析: 这道题给出了一个数组,数组里的元素可以看成每一个挡板,要找到哪两个挡板之间盛的水最多,返回盛水量的最大值。这其实是一个双指针问题。 我们可以先固定第一个挡板( i )和最后一个挡板( j )&#xff0c…...

.babky勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复

导言: 网络安全威胁不断进化,其中.babky勒索病毒引起了广泛关注。这篇文章91数据恢复将深入介绍.babky的狡猾特征,以及在遭受其袭击时如何高效地恢复被加密的数据,并提供实用的预防方法。当面对被勒索病毒攻击导致的数据文件加密…...

20240103-通过布局让自己的生活有有意义人生有价值

最近听到看到的一些词 心力、稀缺、卓有成效、知行合一、致良知、心即理、事上练 最近琢磨出这么一个道理,就是任何人做事情其实都有内心趋势和一套适合他自己的内心驱动的方法。我们经常意识不到,我时常也会去寻求做一件事,是不是有特定的…...

JDK17 - 开发者视角,从 JDK8 ~ JDK17 都增加了哪些新特性

目录 前言 一、站在开发视角,从 JDK8 升级到 JDK17 都有哪些新特性 1.1、JDK8 新特性 1.1.1、Optional 类 a)简介 b)使用方法 c)使用场景 1.2、JDK9 新特性 1.2.1、Optional - ifPresentOrElse 解决 if-else 1.2.2、Opt…...

八股文打卡day11——计算机网络(11)

面试题:HTTP多个TCP连接怎么实现? 我的回答: 1.HTTP1.0的时候,一个TCP连接只能进行一次请求响应。可以建立多个连接到服务器,这样就可以同时进行多个请求响应,提高传输效率。 2.HTTP1.1推出了持久连接&am…...

在Android设备上设置和使用隧道代理HTTP

随着互联网的深入发展,网络信息的传递已经成为人们日常生活中不可或缺的一部分。对于我们中国人来说,由于某些特殊的原因,访问国外网站时常常会遇到限制。为了解决这个问题,使用代理服务器成为了许多人的选择。而在Android设备上设…...

Paddle3D 2 雷达点云CenterPoint模型训练

2 Paddle3D 雷达点云CenterPoint模型训练–包含KITTI格式数据地址 2.0 数据集 百度DAIR-V2X开源路侧数据转kitti格式。 2.0.1 DAIR-V2X-I\velodyne中pcd格式的数据转为bin格式 参考源码:雷达点云数据.pcd格式转.bin格式 def pcd2bin():import numpy as npimport…...

RabbitMQ集群的简单说明

1.普通集群(副本集群) 当集群中某一时刻master主节点宕机,可以对master中Queue中的消息进行备份。而就算master宕机了,从节点不会对外提供服务,等到master节点恢复后,系统才会恢复正常。 主从架构的缺点是队列中的消息只是位于主节…...

支付宝沙箱支付-验签出错之编码集异常

异常信息 invalid-signature 错误 验签出错 错误代码 invalid-signature 错误原因: 验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配,网关生成的验签字符串为: alipay_sdkalipay-sdk-java-dynamicVersionNo&amp....官方通用…...

图像分割-漫水填充法 floodFill (C#)

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 本文的VB版本请访问:图像分割-漫水填充法 floodFill-CSDN博客 FloodFill方法是一种图像处理算法,它的目的是…...

在pycharm中jupyter连接上了以后显示无此库,但是确实已经安装好了某个库,使用python可以跑,但是使用ipython就跑不了

今天遇到一个事情,就是用pycharm的jupyter时,连接不上,后来手动连接上了以后,发现环境好像不对。 一般来说,这里会是python3,所以里面的环境也是普通python的环境,并没有我下载的库,…...

C++多态性——(3)动态联编的实现——虚函数

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 成功的秘诀就在于多努力一次&#xff…...

docker部署mysql

1.查找mysql镜像 [rootVM-4-5-centos ~]# docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a widely used, open-sourc…...

python代码大全(持续更新)

读写文件 # 读取文件 with open(file.txt, r) as file:content file.read()# 写入文件 with open(file.txt, w) as file:file.write(Hello, World!)HTTP请求 import requestsresponse requests.get(https://api.example.com/data) data response.json()JSON处理 import j…...

C#学习笔记 - C#基础知识 - C#从入门到放弃 - C# 处理程序异常相关技术

C# 入门基础知识 - C# 处理程序异常相关技术 第11节 处理程序异常相关技术11.1 捕获异常11.2 清除、处理所有异常11.3 引发异常11.4 预定义异常类11.5 自定义异常类11.6 异常的综合运用 更多C#基础知识点可查看:C#学习笔记 - C#基础知识 - C#从入门到放弃 第11节 处…...

[python]项目怎么使用第三方库

要在Python项目中使用第三方库,可以按照以下步骤进行: 安装第三方库:使用pip命令安装要使用的第三方库。例如,要安装requests库,可以运行以下命令: pip install requests导入库文件:在Python项…...

java每日一题——双色球系统(答案及编程思路)

前言: 打好基础,daydayup! 题目:要求如下(同时:红球每个号码不可以相同) 编程思路:1,创建一个可以录入数字的数组;2,生成一个可以随机生成数字的数组&#xf…...

java的mybatis

一.spring 整合单元测试 二.lombok 三.注解方式开发 四.xml 方式开发 五.动态sql...

Linux驱动开发简易流程

推荐视频: 正点原子【第四期】手把手教你学 Linux之驱动开发篇 小智-学长嵌入式Linux&Android底层开发入门教程 能力矩阵 基础能力矩阵 熟悉c/c、熟悉数据结构 熟悉linux系统,Shell脚本,Makefile/cmake/mk 文件IO、多线程、竞争、并发…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络&#xf…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...