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

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用

Dubbo3注册中心的使用

zookeeper注册中心的使用

依赖引入

<dependency><groupId>org.apache.dubbo</groupId><artifactId>dubbo-dependencies-zookeeper-curator5</artifactId><version>${dubbo.version}</version><type>pom</type><exclusions><exclusion><artifactId>zookeeper</artifactId><groupId>org.apache.zookeeper</groupId></exclusion></exclusions>
</dependency><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>3.8.1</version>
</dependency>

版本配对如下:

版本选择

配置

注意︰注册中心的相关内容,Provider和Consumer都要配置。如果引入了DubboAdmin,DubboAdmin的配置也要与项目中的注册中心一致。

dubbo:registry:address: zookeeper://127.0.0.1:2181

从DubboAdmin可以看出,已经有了相应的服务。

DubboAdmin

nacos注册中心的使用

基本介绍

  1. nacos是阿里在SpringCloudAlibaba中开源的一个注册中心与配置中心组件。
  2. nacos作为注册中心,广泛的应用在微服务体系中。
  3. 开源网址: https://github.com/alibaba/nacos目前最新版本:2.2.34.

nacos的安装和使用——本文介绍本地安装

  1. 从官网 https://github.com/alibaba/nacos下载对应的nacos二进制安装包;

  2. 解压缩

  3. 启动服务

    命令如下

    startup.cmd -m standalone
    

    启动成功界面

    在地址栏输入http://localhost:8848/nacos进行访问

  4. 依赖引入

    <dependency><groupId>org.apache.dubbo</groupId><artifactId>dubbo-registry-nacos</artifactId>
    </dependency>
    
  5. 配置

    dubbo:registry:address: nacos://127.0.0.1:8848
    

consul注册中心的使用

基本介绍

  1. Consul是一种非常轻量级的服务发现框架,适用于构建大规模的微服务架构。
  2. Consul具有服务发现、健康检查、KV存储等功能。
  3. Consul使用Go语言编写,因此可以编译成单一二进制文件并运行于Linux、Windows和MacOS等平台上。
  4. 官方网址: https://www.consul.io/

consul的安装和使用——本文介绍本地安装

下载

下载

下载页面

解压缩

下载完成后进行解压缩;

启动服务

在exe所在目录输入

./consul agent -dev(如果shiwindows使用:consul agent -dev)

启动consul

在如下地址进行访问:
http://localhost:8500/ui/

引入依赖

错误方式
1.第一种错误的引入方式
<dependency><groupld>org.apache.dubbo</groupld><artifactld>dubbo-registry-consul</artifactld>
</dependency>
原因: dubbo父项目中没有管理这个依赖,所以必须要加入版本。
2.第二种错误的引入方式
https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-registry-consul
目前︰提供的版本2.7.23
<dependency><groupld>org.apache.dubbo</groupld><artifactld>dubbo-registry-consul</artifactld><version>2.7.23</version>
</ dependency>
运行报错:NoClassDefFoundError:org/apache/dubbo/event/EventListener
原因: dubbo-registry-consul:2.7.23默认调用dubbo2.7.23会有上述类型,但是目前我们使用的是dubbo3.2.0,已经把这个类移除了,所以会报类型未找到的异常。
正确方式

https://github.com/apache/dubbo/issues/9901

截图1

https://github.com/apache/dubbo-spi-extensions

截图2

https://cn.dubbo.apache.org/en/download/spi-extensions/

截图3

<dependency><groupId>org.apache.dubbo.extensions</groupId><artifactId>dubbo-registry-consul</artifactId><version>1.0.1</version>
</dependency>
注意:虽然官⽅⽂档上写明最新版本为1.0.3,但是⽬前maven中⼼仓
库的版本还是1.0.1。
https://mvnrepository.com/artifact/org.apache.dubbo.extensions/dubbo-registry-consul
如果想更好的解决,只能下载源码,本地安装或者私服安装。

配置

dubbo:registry:address: consul://127.0.0.1:8500

相关文章:

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用

Dubbo3注册中心的使用 zookeeper注册中心的使用 依赖引入 <dependency><groupId>org.apache.dubbo</groupId><artifactId>dubbo-dependencies-zookeeper-curator5</artifactId><version>${dubbo.version}</version><type>p…...

Chrome自动播放限制策略

原文链接&#xff1a;Chrome 自动播放限制策略 Web浏览器正在朝着更严格的自动播放策略发展&#xff0c;以便改善用户体验&#xff0c;最大限度地降低安装广告拦截器的积极性并减少昂贵和/或受限网络上的数据消耗。这些更改旨在为用户提供更大的播放控制权&#xff0c;并使开发…...

k8s安全机制

安全机制 一、机制说明二、认证&#xff08;Authentication&#xff09;HTTP Token 认证HTTP Base 认证HTTPS 证书认证&#xff08;最严格&#xff09; 三、鉴权&#xff08;Authorization&#xff09;角色角色绑定主体&#xff08;subject&#xff09;Role and ClusterRoleRol…...

Java多线程:Runnable与Callable的区别和原理

Java多线程&#xff1a;Runnable与Callable的区别和原理 在Java多线程编程中&#xff0c;我们经常使用Runnable和Callable接口来创建并执行线程。这两个接口都是Java.lang包中的部分&#xff0c;并且都用于实现多线程。虽然它们有些相似之处&#xff0c;但它们之间也存在明显的…...

解决yolo无法指定显卡的问题,实测v5、v7、v8有效

方法1 基本上这个就能解决了&#xff01;&#xff01;&#xff01; 在train.py的最上方加上下面这两行&#xff0c;注意是最上面&#xff0c;其次指定的就是你要使用的显卡 import os os.environ[CUDA_VISIBLE_DEVICES]6方法2&#xff1a; **问题&#xff1a;**命令行参数指…...

arc 166 a

#include<bits/stdc.h> using namespace std; using VI vector<int>; using ll long long; const int mod 998244353; //当只有ab的时候&#xff0c;看作把a可以向右移动 //1 - x 是a 1 - y a //x中的 a 的 下标 < y 中 a 的下标 //这样就可以通过位移得到 …...

Lua05——Lua基本数据类型

lua 是动态类型语言&#xff0c;变量使用前不需要定义类型&#xff0c;在使用时直接赋值即可。 1 基本数据类型 值可以存储在变量中&#xff0c;作为参数传递或作为结果返回。 lua中有八个基本数据类型&#xff1a; nil 只有值nil属于该类&#xff0c;表示一个无效值&#…...

一文3000字从0到1使用pytest-xdist实现分布式APP自动化测试

目录 01、分布式测试的原理 02、测试项目 03、环境准备 04、搭建步骤 05、分布式执行 06、测试报告 不知道大家有没有遇到这样一种情况&#xff0c;实际工作中&#xff0c;app自动化测试的用例可能是成百上千条的&#xff0c;如果放在一台机器上跑&#xff0c;消耗的时间…...

pyqt5:pandas 读取 Excel文件或 .etx 电子表格文件,并显示

pip install pandas ; pip install pyqt5; pip install pyqt5-tools; 编写 pyqt5_read_etx.py 如下 # -*- coding: utf-8 -*- """ pandas 读取 Excel文件或 .etx 电子表格文件&#xff0c;显示在 QTableWidget 中 """ import os import sys…...

【QT】Windows 编译并使用 QT 5.12.7源码

1、下载 QT 源码 QT5.12.7源码下载地址: download | QT 5.12.7 选择任意一种下载即可&#xff0c;适用于 Windows 和 Linux 环境 ​ 这里选择下载 .zip 文件。 2、安装依赖 (1) 安装 perl perl 安装包下载地址: download | perl for windows 根据当前系统选择对应版本。…...

php实战案例记录(15)获取GET和POST请求参数

在PHP中&#xff0c;可以使用$_GET和$_POST超全局变量来获取GET和POST请求参数。 获取GET请求参数&#xff1a; 要获取GET请求参数&#xff0c;可以使用$_GET超全局变量。它是一个关联数组&#xff0c;其中键是参数的名称&#xff0c;值是参数的值。例如&#xff0c;如果URL是…...

k8s-9 ingress-nginx 特性

TLS加密 创建证书 测试 auth认证 创建认证文件 rewrite重定向 进入域名 会自动重定向hostname.html 示例二&#xff1a; 测试 后面必须跟westos 这个关键字 canary金丝雀发布 基于header灰度 场景&#xff1a;版本的升级迭代&#xff0c;比如一个service 升级到另…...

java案例24:模拟百度翻译

思路&#xff1a; 编写一个程序模拟百度翻译 用户输入英文之后&#xff0c;搜索程序中对应的中文&#xff0c; 如果搜索到1对应的中文&#xff0c;就输出搜索结果&#xff0c;反之给出提示 要求使用Map集合实现英文与中文的存储。1.百度翻译主要用于翻译对应的意思&#xff0c…...

汽车烟雾测漏仪(EP120)

【汽车烟雾测漏仪&#xff08;EP120&#xff09;】 此烟雾测漏仪专为车辆管道&#xff08;油道、气道、冷却管道&#xff09; 的泄露检测而设计。适用于所有轻型 汽车、摩托车、轻卡、游艇等。 【特点】 具有空气模式和烟雾模式。空气模式&#xff0c;无需烟雾&#xff0c;检测…...

【轻松玩转MacOS】安全隐私篇

引言 这一篇将介绍如何保护MacOS的安全&#xff0c;包括如何设置密码&#xff0c;使用防火墙&#xff0c;备份数据等重要环节&#xff0c;避免因不慎操作或恶意攻击带来的安全风险&#xff0c;让你的MacOS之旅更安心、更放心。 一、设置密码&#xff1a;保护你的MacOS的第一道…...

4.02 用户中心-上传头像功能开发

详细内容请看下面地址&#xff1a; 地址&#xff1a;http://www.gxcode.top/code...

在Ubuntu 18.04安装Docker

安装需要的包 $ sudo apt-get update 安装 apt 依赖包&#xff0c;用于通过HTTPS来获取仓库 $ sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-common添加 Docker 的官方 GPG 密钥 $ curl -fsSL https://download.do…...

Vue-2.1scoped样式冲突

默认情况&#xff1a;写在组件中的样式会全局生效->因此很容易造成多个组件之间的样式冲突问题 1.全局样式&#xff1a;默认组件中的样式会作用到全局 2.局部样式&#xff1a;可以给组件加上scoped属性&#xff0c;可以让样式只作用于当前组件 <style scoped> <…...

Matlab之查询子字符串在字符串中的起始位置函数strfind

一、功能 strfind函数用于在一个字符串中查找指定的子字符串&#xff0c;并返回子字符串在字符串中的起始位置。 二、语法 indices strfind(str, pattern) 其中&#xff0c;str是要进行查找的字符串&#xff0c;pattern是要查找的子字符串。 函数会返回一个由子字符串在字…...

[游戏开发][Unity]安卓出包报错记录

打包报错日志有以下几种类型&#xff1a; 报错&#xff1a; CommandInvokationFailure: Android Asset Packaging Tool failed. E:\Android-SDK-Tool\build-tools\33.0.2\aapt.exe package -v -f -F raw.ap_ -A raw -0 "" --ignore-assets "!.svn:!.git:!.ds_st…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

ServerTrust 并非唯一

NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

Rust 开发环境搭建

环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行&#xff1a; rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu ​ 2、Hello World fn main() { println…...

离线语音识别方案分析

随着人工智能技术的不断发展&#xff0c;语音识别技术也得到了广泛的应用&#xff0c;从智能家居到车载系统&#xff0c;语音识别正在改变我们与设备的交互方式。尤其是离线语音识别&#xff0c;由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力&#xff0c;广…...