手把手带你实现Dubbo集成Nacos作为注册中心(超详细+全代码)

菜鸟学Dubbo和Nacos随记(更新中) Dubbo和Nacos是两个在微服务架构中常用的工具,它们各自扮演着不同的角色。Dubbo主要关注于RPC框架的实现,提供了高性能的远程方法调用和服务治理功能;而Nacos则更侧重于服务发现、配置管理和服务管理平台的建设。Dubbo是阿里巴巴公司开源的一个高性能、轻量级的Java RPC框架。它允许应用通过高性能的RPC实现服务的输出和输入功能,并可以与Spring框架无缝集成。 阅读详情
AI摘要

本文详细介绍了如何使用Nacos作为服务发现和配置管理平台,并结合SpringCloud和Dubbo实现微服务的注册、发现与远程调用。首先,介绍了Nacos的基本概念和关键特性,接着通过步骤展示了如何搭建SpringCloud父项目、服务接口模块、服务提供者模块以及服务消费者模块。最后,通过实际操作验证了Nacos作为注册中心和服务发现的功能,并进行了简单的服务调用测试。文章还预告了Nacos作为配置中心的后续内容。

Nacos简介

什么是Nacos?

  • Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

  • Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

  • Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

  • 服务(Service)是 Nacos 世界的一等公民。Nacos 支持几乎所有主流类型的“服务”的发现、配置和管理:

    • Kubernetes Service
    • gRPC & Dubbo RPC Service
    • Spring Cloud RESTful Service

Nacos的关键特性

  • 服务发现和服务健康监测
  • 动态配置服务
  • 动态 DNS 服务
  • 服务及其元数据管理

说明:因为Dubbo和Nacos的应用场景一般都是在微服务项目中,所以接下来以SpringCloud项目为基础,展示Dubbo集成Nacos作为注册中心

Nacos 安装及入门

看我的另外一篇文章:https://blog.youkuaiyun.com/java_cpp_/article/details/128052696

项目目录总览
说明:文末可以获取项目全部代码

在这里插入图片描述
以上均是Maven项目

Step01-搭建SpringCloud父项目

使用IDEA创建一个普通的Maven项目,项目名自定义即可也可以跟我一样命名为SpringCloud-Dubbo-Nacos,删除src目录
重点是配置pom.xml
下面展示我的配置

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mxf</groupId>
    <artifactId>SpringCloud-Dubbo-Nacos</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    
    <modules>  <!-后续创建子项目才有以下配置-->
        <module>ShopService</module>
        <module>ShopService-Provider-8081</module>
        <module>ShopService-Provider-8082</module>
        <module>ShopService-Consumer-9091</module>
    </modules>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring.cloud.version>2021.0.5</spring.cloud.version>
        <spring.boot.version>2.6.13</spring.boot.version>
        <junit.version>4.12</junit.version>
        <log4j.version>1.2.17</log4j.version>
        <lombok.version>1.18.22</lombok.version>
        <mysql-connector-java.version>8.0.22</mysql-connector-java.version>
        <mybatis.plus.version>3.4.3.4</mybatis.plus.version>
        <spring.cloud.nacos.version>2021.0.4.0</spring.cloud.nacos.version><!--2.2.6.RELEASE-->
        <spring.cloud.dubbo.version>3.1.2</spring.cloud.dubbo.version>
        <nacos.version>2.1.1</nacos.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <!--spring-cloud依赖-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring.cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!--spring-boot依赖-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring.boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!--集成Nacos实现服务注册与发现-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>${spring.cloud.nacos.version}</version>
            </dependency>

            <!--集成Nacos实现动态配置管理-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>${spring.cloud.nacos.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.nacos</groupId>
                <artifactId>nacos-client</artifactId>
                <version>${nacos.version}</version>
            </dependency>

            <!--sentinel:服务限流、降级、熔断-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
                <version>${spring.cloud.nacos.version}</version>
            </dependency>

            <!--集成Dubbo实现服务的远程调用-->
            <!--<dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-dubbo</artifactId>
                <version>${spring.cloud.dubbo.version}</version>
            </dependency>-->
            <dependency>
                <groupId>org.apache.dubbo</groupId>
                <artifactId>dubbo-spring-boot-starter</artifactId>
                <version>${spring.cloud.dubbo.version}</version>
            </dependency>

            <!--数据库-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>${mysql-connector-java.version}</version>
            </dependency>
            
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </dependency>
            <!--mybatis 启动器-->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>${mybatis.plus.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

</project>

注意的是依赖版本尽量跟我一致,否则后续项目启动的时候会出现迷惑性bug(例如:启动时dubbo、nacos报出现循环依赖的问题),到此SpringCloud父项目就搭建完毕

Step02-服务接口模块

服务接口,我是一个购物服务为背景设计相关接口的,本模块可自定义,不一定要按照我的来
总览
在这里插入图片描述
重点是服务接口的定义

public interface ShopService {

    // 查询所有商品
    List<Goods> queryAll();

    // 根据名称模糊搜索
    List<Goods> queryByName(String name);

    // 添加商品
    int addGoods(Goods goods);

    // 根据ID删除商品
    int delGoods(int id);

    // 购买商品
    int shopping(int id);

    // 测试使用
    String hello(String name);
}

业务实体类(自由发挥):

@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class Goods implements Serializable {

    private Integer id;

    private String name;

    private Double price;

    private Integer nums; // 库存

    private String description;
}

服务接口主要是定义后续的服务功能,比较简单

Step03-服务提供者模块

该模块主要是去实现前面编写的服务接口,用来完成具体的业务逻辑
总览
在这里插入图片描述

首先在pom.xml中引入相关的依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>SpringCloud-Dubbo-Nacos</artifactId>
        <groupId>com.mxf</groupId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>ShopService-Provider-8081</artifactId>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.mxf</groupId>
            <artifactId>ShopService</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!--集成Nacos实现服务注册与发现-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <!--集成Nacos实现动态配置管理-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.nacos</groupId>
            <artifactId>nacos-client</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
        </dependency>

        <!--集成Dubbo实现服务的远程调用-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
        </dependency>

        <!--数据库-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

        <!--mybatis 启动器-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
        </dependency>
    </dependencies>

</project>

依赖成功引入后,就先编写配置文件application.yaml,上面截图中有个bootstrap.yml,该文件是后续使用Nacos作为配置中心时才需要的,我会更新后续教程,暂时把所有配置配置到本地项目即可
application.yaml

server:
  port: 8081
mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
spring:
  application:
    name: provider_application_8081
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.11.219:3306/test?useSSL=true&characterEncoding=utf-8&serverTimeZone=Asia/Shanghai&useUnicode=true
    username: root
    password: 123456
# dubbo的配置
dubbo:
  application:
    name: provider_application_8081	#配置应用名是为了加以区分不同的服务提供者
  protocol:
    name: dubbo
    port: -1 # 端口设置为-1 是让dubbo自动在[20880, 65535]之间找一个可用的端口
  registry:
    id: nacos-registry
    address: nacos://192.168.11.233:8848	# 在此配置nacos服务的IP地址及端口
  config-center:	# 可选
    address: nacos://192.168.11.233:8848
  metadata-report:	# 可选
    address: nacos://192.168.11.233:8848

下面重点介绍服务实现类ShopServiceImpl

/**
 * 用 @DubboService 注解标记,就可以实现 Dubbo 的服务暴露
 * 如果要设置服务参数,@DubboService 也提供了常用参数的设置方式。如果有更复杂的参数设置需求,则可以考虑使用其他设置方式
 * @DubboService(version = "1.0.0", group = "dev", timeout = 5000)
 */
@DubboService
@Service
public class ShopServiceImpl implements ShopService { // 实现前面定义的服务接口

    @Autowired
    private GoodsService goodsService; // 使用MyBaits-Plus做业务层持久框架实现的DAO层服务类,该服务自行实现,就不展示

    @Value("${spring.application.name}")
    private String applicationName; // 把服务名注入进来主要是用来识别不同服务提供者

    @Override
    public List<Goods> queryAll() {
        return goodsService.list();
    }

    @Override
    public List<Goods> queryByName(String name) {

        QueryWrapper<Goods> wrapper = new QueryWrapper<>();
        wrapper.like("name", name);

        return goodsService.list(wrapper); 
    }

    @Override
    public int addGoods(Goods goods) {
        return goodsService.save(goods) ? 1 : 0;
    }

    @Override
    public int delGoods(int id) {
        return goodsService.removeById(id) ? 1 : 0;
    }

    @Override
    public int shopping(int id) {
        return goodsService.shopping(id);
    }

    @Override
    public String hello(String name) {
        return "Hello: " + name + " From " + applicationName;
    }
}

启动类的编写

@SpringBootApplication
@EnableDubbo	// @EnableDubbo 注解必须配置,否则将无法加载 Dubbo 注解定义的服务,@EnableDubbo 可以定义在主类上
public class ProviderApplication_8081 {
    public static void main(String[] args) {
        SpringApplication.run(ProviderApplication_8081.class, args);
    }
}

OK,持久层代码就不展示了较为容易实现都是固定写法,一个端口为8081的服务提供者模块编写成完成,接下来在编写运行在8082端口的服务。

Step04-8082端口上的服务提供者

该模块跟8081服务全部一样,直接复制上面那个项目进行部分修改即可
总览:
在这里插入图片描述

  • 改下启动类的类名
  • 修改配置文件中的端口及应用名
server:
  port: 8082
mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
spring:
  application:
    name: provider_application_8082
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.11.219:3306/test?useSSL=true&characterEncoding=utf-8&serverTimeZone=Asia/Shanghai&useUnicode=true
    username: root
    password: mxf520
# dubbo的配置
dubbo:
  application:
    name: provider_application_8082
  protocol:
    name: dubbo
    port: -1
  registry:
    id: nacos-registry
    address: nacos://192.168.11.233:8848
  config-center:
    address: nacos://192.168.11.233:8848
  metadata-report:
    address: nacos://192.168.11.233:8848

到此服务提供者模块全部实现

Step05-服务消费者模块

该模块主要是调用8081、8082端口的服务
总览:
在这里插入图片描述
导入依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>SpringCloud-Dubbo-Nacos</artifactId>
        <groupId>com.mxf</groupId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>ShopService-Consumer-9091</artifactId>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.mxf</groupId>
            <artifactId>ShopService</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!--集成Nacos实现服务注册与发现-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <!--集成Nacos实现动态配置管理-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.nacos</groupId>
            <artifactId>nacos-client</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
        </dependency>

        <!--集成Dubbo实现服务的远程调用-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>

    </dependencies>

</project>

配置文件applicatin.yaml:

server:
  port: 9091
spring:
  application:
    name: consumer_application_9091

# dubbo的配置
dubbo:
  application:
    name: consumer_application_9091
  protocol:
    name: dubbo
    port: -1
  registry:
    id: nacos-registry
    address: nacos://192.168.11.233:8848
  config-center:
    address: nacos://192.168.11.233:8848
  metadata-report:
    address: nacos://192.168.11.233:8848

实现远程服务调用

@RestController
public class ShopController {

	 /**
     * @Reference 注解从 3.0 版本开始就已经废弃,改用 @DubboReference,以区别于 Spring 的 @Reference 注解
     * @DubboReference 注解将自动注入为 Dubbo 服务代理实例,使用 shopService 即可发起远程服务调用
     */
    @DubboReference
    private ShopService shopService;

    @GetMapping("/queryAll")
    public List<Goods> queryAllGoods() {
        return shopService.queryAll();
    }

    @GetMapping("/queryByName")
    public List<Goods> queryByName(String name) {
        return shopService.queryByName(name);
    }

    @GetMapping("/hi")
    public String hello(String name) {
        return shopService.hello(name);
    }
}

启动类:

@SpringBootApplication
@EnableDubbo
public class ConsumerApplication_9091 {
    public static void main(String[] args) {
        SpringApplication.run(ConsumerApplication_9091.class, args);
    }
}

OK,整个项目搭建到此已经完成,下面看项目运行展示

项目演示

首先启动Nacos(这里就以单机模式启动)
在这里插入图片描述
然后启动两个服务提供者:
ProviderApplication_8081和ProviderApplication_8082
在这里插入图片描述
最后启动服务消费者:
ConsumerApplication_9091
在这里插入图片描述
OK,现在服务全部启动完毕,下面看nacos中的注册信息
在这里插入图片描述
可以看到,两个服务提供者和一个服务消费者全部注册进来了,到此Nacos就作为一个注册中心实现了服务注册功能
下面进行消费者端的远程服务调用测试:

接口测试

先看下之前定义的服务接口:

public interface ShopService {

    // 查询所有商品
    List<Goods> queryAll();

    // 根据名称模糊搜索
    List<Goods> queryByName(String name);

    // 添加商品
    int addGoods(Goods goods);

    // 根据ID删除商品
    int delGoods(int id);

    // 购买商品
    int shopping(int id);

    // 测试使用
    String hello(String name);
}
  • 首先测试hello()方法
    在消费端9091调用:
    在这里插入图片描述
    可以看到是8081端口的提供者响应服务,多调用几次就能看到8082端口的提供者响应服务了:
    在这里插入图片描述
    该服务的实现是在8081、8082两个端口处实现的,消费端只是进行了一次RPC远程调用通过Dubbo实现的,同时也体现了Nacos注册中心的服务发现功能

  • 测试查询所有商品的接口:
    在这里插入图片描述
    成功与后端数据库连通,就可以在此基础上进行更为复杂的业务开发了。

获取以上项目的源码
微信搜索公众号:JavaWizardM
回复:dubbo

Nacos作为配置中心

待更新…

转载请标明出处:https://blog.youkuaiyun.com/Java_cpp_/article/details/128051413

Dubbo使用nacos作为注册中心原理剖析 Nacos是阿里自研的,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台 。作为微服务注册中心,它的目标是淘汰目前流行的eureka,zookeeper等组件。现在学习它真的很有必要。这里就还是从源码的角度出发,看一下Spring Boot是如何和它整合的。 详细教程官网已经写的非常明确,这里就不多说了。 Nacos中文官方文档 下载nacos 项目版本:(目前真对spring-cl... 阅读详情

相关推荐

SpringBoot整合dubbo以及nacos

注意,我们这边整合的时候分为消费者,生产者和中间服务接口层。

fly狮子座的博客 4491

dubbo整合nacos

文章目录前言一、搭建工程框架新建maven空工程作为父工程新建服务提供者provider模块新建消费者 consumer模块新建公共接口interface模块二、各模块代码2.1服务提供者 boot-user-service-provider代码构架pom文件依赖配置文件application.yamlmapperservice启动类2.2服务消费者 boot-user-service-consumer代码构架pom文件依赖配置文件beancontroler其他文件,包括启动类等,无变化,不需要调整。2.3

weixin_37558140的博客 2万+

Dubbo使用Nacos作为注册中心

本示例演示 Nacos 作为注册中心实现自动服务发现,示例基于 Spring Boot 应用展开,可在此查看 完整示例代码增加 dubbo、nacos-client 依赖: 对于 Spring Boot 应用,可以使用如下 spring-boot-starter: 1.2 Nacos 版本 Nacos 版本映射关系: 或 或 2 高级配置 2.1 认证 或 2.2 自定义命名空间 或者 2.3 自定义分组 2.4 注册接口级消费者 Dubbo 3

qq_36070104的博客 2374

Dubbo、Nacos服务框架的介绍

TCP/IP五层协议: 应用层:HTTP、FTP等 传输层: TCP:向应用程序提供面向连接的服务,提供流量控制和拥塞控制 UDP:无连接服务,不提供流量控制和拥塞控制 网络层 数据链路层 物理层 RPC: RPC(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务 调用服务一般过程: 1)客户端需要告诉服务器,需要调用的函数(与进程ID存在一个映射) 2)客户端把参数转换成字节流,传给服务端,然后服务端将字节流转换成自身能读取的格式,是一个序列化和

HS_huaishi的博客 7865

nacos+Spring boot+dubbo用nacos做为注册中心和配置中心

什么是nacos: acos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心)、 动态配置服务(可以做配置中心)、动态 DNS 服务。 官方介绍是这样的: Nacos 致力于帮助您发现、配置和管理微服务。 Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施 官方网址:

cai750415222的博客 7565

Dubbo 与 Nacos 注册中心集成实战:详细教程 + 代码案例

本文详细介绍了如何将Dubbo微服务框架与Nacos注册中心集成。内容涵盖Nacos的核心功能(服务注册发现、配置管理等)、Dubbo选择Nacos的优势(运维简单、功能集成、云原生支持等),并提供了完整的SpringBoot实战案例,包括环境搭建、依赖配置、服务提供者/消费者实现及测试验证。通过具体代码示例展示了Dubbo服务如何注册到Nacos并实现远程调用,同时总结了常见问题解决方案。这种组合特别适合电商、金融等复杂业务系统,文末还建议了进一步的进阶学习方向。

weixin_44519124的博客 778

Nacos与Dubbo的集成实战

本文介绍了Nacos与Dubbo集成的实现方法。Nacos作为服务注册中心,Dubbo作为RPC框架,二者集成可增强微服务治理能力。文章详细阐述了集成步骤:首先引入Dubbo和Nacos相关依赖,然后配置注册中心地址和应用信息,最后通过注解实现服务注册与调用。针对常见问题如Nacos未启动、版本不兼容等提供了解决方案。通过Nacos与Dubbo的集成,能够构建更强大的微服务架构,为后续学习其他技术集成奠定基础。

fykam的博客 2226

springcloud整合dubbo3使用nacos作为注册中心

springcloud整合dubbo3使用nacos作为注册中心

congge 7952

Dubbo引入Zookeeper等注册中心简介以及DubboAdmin简要介绍,为后续详解Dubbo各种注册中心做铺垫!

本文是Dubbo从入门到上天系列文章中第十八篇,在本篇文章中我详细介绍了Dubbo引入注册中心的意义、作用、好处为后续详细介绍Dubbo适配各类注册中心打下基础!并且对DubboAdmin进行了简要的介绍,后边我们会有更加详细的介绍!

七叔的博客 4142

【微服务】springcloud整合dubbo3使用nacos作为注册中心

springcloud整合dubbo3使用nacos作为注册中心

congge 3330

ANPC三电平拓扑:两种调制方式解析

ANPC结构是基于“I”型NPC结构(下面讲NPC如不特殊说明,均指的是“I”型结构NPC)发展出来的一种改进型。我们在讲NPC结构的时候会谈到他的一个缺点就是损耗分布不均匀,会导致温升不均衡,进而限制模块的功率输出能力。而ANPC结构由于多了两个开关管以及相应的两个中性点换流回路(如下图),可以更加灵活任意的配置开关管可以使损耗没有那么的不均衡,从而能一定程度上提高模块的输出功率。ANPC拓扑结构图以及增加的环流回路。

IOTBOT的博客 9476

DUBBO详解,Nacos注册中心实现服务注册与发现

Dubbo是阿里巴巴公司开源的一个高性能、轻量级的 Java RPC 框架致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。

weixin_43875870的博客 7443

人工智能训练师技能等级认定四级技能考核试卷-样题4

本文为人工智能训练师四级技能考核试卷,包含六个实操考核项目,总时长150分钟。考核内容涵盖:1)车牌数据集规范评估与格式处理;2)车牌数据集采集代码修改与数据处理;3)房价预测数据集加载、预处理与可视化分析;4)车牌标注数据集审核与修正;5)螺丝螺母检测数据集的平台创建与共享;6)螺丝螺母数据的去噪处理与标注优化。要求考生使用Python编程、数据处理平台和标注工具完成各项任务,重点考察数据加载、格式转换、缺失值处理、数据可视化、标注审核及平台操作等技能。所有操作需在配备Python3.7和深度学习平台的W

weixin_42221934的博客 348

Dubbo Admin修改注册中心为Nacos 以及Nacos整合Dubbo

Dubbo Admin修改注册中心为Nacos 以及Nacos整合Dubbo

hayhead的博客 1711

NC65实现Restful接口开发及调试

NC65实现Restful接口开发及调试

linzhongshu的专栏 2144

dify离线部署

以bge-m3为例,本地部署bge-m3首先在一台能连网的linux服务器上(部署有ollama)创建想要保存模型的文件夹编辑ollama.service,配置ollama模型的保存路径添加模型存储地址将models目录设置属主,必须做,否则ollama无法启动重新加载配置文件并重启ollama测试ollama 运行是否正常最后拉取 bge-m3可在/opt/LLMModels/bge_m3/models目录下看到拉取得模型使用tar命令压缩文件夹。

weixin_42538734的博客 3065

微服务:构建Spring Boot与Dubbo集成:以Nacos为注册中心

构建Spring Boot与Dubbo集成:以Nacos为注册中心

永远保持随时离开的技术能力! 3007

inferCNVpy分析流程学习

inferCNV的用途大家都已经很清楚了,接下来就走一下流程,试一试Python版的inferCNV。使用的数据集为:GSE188711,既往推文可见:Scanpy分析全流程(含harmonypy整合/细胞周期矫正/双细胞检测及去除)(

zfyyzhys的博客 1293

Dubbo 融合 Nacos 成为注册中心

Nacos 作为 Dubbo 生态系统中重要的注册中心实现,其中dubbo-registry-nacos则是 Dubbo 融合 Nacos 注册中心的实现。 预备工作 当您将dubbo-registry-nacos整合到您的 Dubbo 工程之前,请确保后台已经启动 Nacos 服务。如果您尚且不熟悉 Nacos 的基本使用的话,可先行参考Nacos 快速入门:https://nac...

学亮编程手记 3330

Ceres Solver:从入门到使用

Ceres Solver是谷歌开源的C++非线性优化库,能够解决有约束或无约束条件下的非线性最小二乘问题。2010年之后大量的运用在谷歌的产品开发中,尤其在谷歌开源的cartographer中被大量的使用。 ceres可以在Linux,Windows,macOS,Andrioid,IOS系统进行安装使用,详情可查看下方的官网链接。 Ceres Solver 官网:http://ceres-solver.org/

非晚非晚的博客 1万+

Unity之ASE+ShaderGraph+VFX入门到精通 目录

这里是ASE+ShaderGraph+VFX从入门到精通专栏的目录,不停更新中,有问题随时留言或者私信。

TxNet 2840

Dubbo集成Nacos

一、Nacos配置安装 可查看:SpringCloud 集成 Nacos 使用小结 二、Provider工程 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ma

小熙的博客 2万+

鸿蒙开发实战项目(九十二):HUAWEI Health血压测量

是华为开发的用于运动健康领域的一个开放平台, 三方APP可以借助HUAWEI Health开放平台提供的。

斌擎科技 1131

Dubbo使用Nacos注册中心

概述 在最新Dubbo中我们可以将Dubbo的注册到Nacos中进行服务的治理 依赖的准备 注意:以下所有依赖的组都是`org.apache.dubbo` dubbo-spring-boot-starter提供了dubbo基本的全部所需依赖以及springboot的自动配置的依赖 dubbo-registry-nacos提供了dubbo所使用的的nacos注册中心所需的依赖 如果不使用springboot则需要添加以下依赖 <dependency> <groupId>

u011618818的博客 4603

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

dubbo之使用nacos作为注册中心

写在前面 通过本文一起来看下如何使用nacos作为注册中心来注册dubbo服务提供者和服务消费者的信息。 在这篇文章 基础上进行改造。nacos的简单安装参考这篇文章 。源码 。 1:rpc-service-provider-03 修改服务提供者模块。 1.1:修改依赖 修改zk依赖为nacos依赖: <!-- 使用 Zookeeper 作为注册中心 --> <!--<dependency> <groupId>org.apache.curator<

wang0907的博客 4113

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

上一篇: Nacos安装及入门
下一篇: Nacos作为配置中心详解
JavaWizard-M
博客等级 码龄6年 3159粉丝 148原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值