一,以上一篇为基础 微服务从nacos配置中心获得配置信息

  给service1, service2添加依赖

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

  给service1, service2添加配置项

nacos:
discovery:
server-addr: 127.0.0.1:8848
namespace: c22e5019-0bee-43b1-b80b-fc0b9d847501

二,实现service1, service2

  分别编写基础的controller,向外提供restapi

  启动service1,service2,就会自动的向nacos注册这两个服务,服务名为spring.application.name

三,测试,编写调用service1, service2的demo模块,

  1,new -> module -> Maven -> 填写xx -> finish

  2,添加依赖

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
</dependencies>

  3,添加配置bootstrap.yml

spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
namespace: c22e5019-0bee-43b1-b80b-fc0b9d847501

  4,编写启动程序,编写controller,编写接口调用service1, service2 

  启动类:

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

  接口调用:

@FeignClient(value = "service1")
public interface UserClient {
@GetMapping("/user/name")
public String getName(); @GetMapping("/user/address")
public String getAddress();
}
@FeignClient(value = "service2")
public interface OrderClient { @GetMapping("/order/id")
public String getId(); @GetMapping("/order/price")
public double getPrice();
}

  controller:

@RestController
@RequestMapping("/demo")
public class DemoController { @Autowired
private UserClient userClient; @Autowired
private OrderClient orderClient; @GetMapping("/test")
public String test(){
return "test, name:"
+ userClient.getName()
+ ", address:" + userClient.getAddress()
+ "order_id:" + orderClient.getId()
+ "order_price:" + orderClient.getPrice();
}
}

输出:test, name:天涯, address:中国order_id:10000111##order_price:100.5

调用完成!

微服务nacos服务注册与发现的更多相关文章

  1. SpringCloud 进阶之Eureka(服务注册和发现)

    1. Eureka 服务注册与发现 Eureka 是一个基于REST的服务,用于服务的的注册与发现; Eureka采用C-S的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册 ...

  2. springcloud(第三篇)springcloud eureka 服务注册与发现 *****

    http://blog.csdn.net/liaokailin/article/details/51314001 ******************************************* ...

  3. 用Nacos做微服务架构里的服务注册与发现中心

    转自:https://www.jianshu.com/p/61608ff86344 Nacos 另一个非常重要的特性就是服务注册与发现,说到服务的注册与发现相信大家应该都不陌生,在微服务盛行的今天,服 ...

  4. 2021升级版微服务教程4—Nacos 服务注册和发现

    2021升级版SpringCloud教程从入门到实战精通「H版&alibaba&链路追踪&日志&事务&锁」 默认文件1610014380163 教程全目录「含视 ...

  5. 微服务架构 | *3.5 Nacos 服务注册与发现的源码分析

    目录 前言 1. 客户端注册进 Nacos 注册中心(客户端视角) 1.1 Spring Cloud 提供的规范标准 1.2 Nacos 的自动配置类 1.3 监听服务初始化事件 AbstractAu ...

  6. Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

    自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注.虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭 ...

  7. Spring Cloud Alibaba(一) 如何使用nacos服务注册和发现

    Nacos介绍 Nacos 致力于帮助您发现.配置和管理微服务.Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现.服务配置.服务元数据及流量管理. Nacos 帮助您更敏捷和容易地构 ...

  8. Spring Cloud进阶之路 | 一:服务注册与发现(nacos)

    转载请注明作者及出处: 作者:银河架构师 原文链接:https://www.cnblogs.com/luas/p/12068846.html 1.版本 最新稳定版本为1.1.4,也可以从发版说明.博客 ...

  9. Spring Cloud Alibaba 实战 之 Nacos 服务注册和发现

    服务注册与发现,服务发现主要用于实现各个微服务实例的自动化注册与发现,是微服务治理的核心,学习 Spring Cloud Alibaba,首先要了解框架中的服务注册和发现组件——Nacos. 一.Sp ...

随机推荐

  1. Java Web学习(八)RESTful设计

    一.RESTful设计风格 REST :指的是一组架构约束条件和原则. RESTful :满足这些约束条件和原则的应用程序或设计就是 . REST 原则 客户端和服务器之间的交互在请求之间是无状态的. ...

  2. SpringBoot普通消息队列线程池配置

    1 package com.liuhuan.study.config; 2 3 import com.google.common.util.concurrent.ThreadFactoryBuilde ...

  3. 企业面试中关于MYSQL重点的28道面试题解答

      问题1:char.varchar的区别是什么? varchar是变长而char的长度是固定的.如果你的内容是固定大小的,你会得到更好的性能. 问题2: TRUNCATE和DELETE的区别是什么? ...

  4. 如何设置一个生产级别的高可用etcd集群

    在之前的文章中,我们详细介绍了K3s的架构以及部署场景,给尚未了解K3s的朋友提供了一个很好的入门方向.那么,在本文中我们将探索如何配置一个3节点的etcd集群,它将会被用于高可用.多节点的K3s集群 ...

  5. Spring 系列之jdbcTemplate的使用

    Spring系列之 jdbcTemplate 啥是jdncTemplate? t他是spring框架中提供的一个对象,是对原始的jdbcAPI对象的简单封装,spring框架为我们提供了很多操作,模板 ...

  6. mac电脑,charles,安卓手机如何配置代理,以及配置代理之后无法上网。已解决

    设备: 电脑:mac book pro 手机:小米10 charles:4.5.6 方法一: 步骤: 首先确保电脑,手机在同一局域网, 1. charles设置代理:proxy -> proxy ...

  7. 215。数组中第K个最大元素(堆实现)

    class Solution: def findKthLargest(self, nums: List[int], k: int) -> int: """堆排序思想 ...

  8. ucore操作系统学习笔记(一) ucore lab1系统启动流程分析

    一.ucore操作系统介绍 操作系统作为一个基础系统软件,对下控制硬件(cpu.内存.磁盘网卡等外设),屏蔽了底层复杂多样的硬件差异:对上则提供封装良好的应用程序接口,简化应用程序开发者的使用难度.站 ...

  9. Spring 集成 RabbitMQ

    pom.xml <dependency> <groupId>org.springframework.amqp</groupId> <artifactId> ...

  10. Go 分支流程

    if/else 基本使用 if/else应该是每个编程语言中都具备的基本分支结构. 需要注意的是if||else与{要放在同一行上,否则会抛出异常. 另外,当多个else if出现时,不同分支只会执行 ...