SpringCloud之Nacos服务发现(十六)

一 服务提供配置

  • pom.xml
 <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!--nacos 一定要注意版本问题-->
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        <version>0.9.0.RELEASE</version>
    </dependency>
</dependencies>
  • application.yml

    server:
      port: 8881
    spring:
      application:
        name: nacos-product
      cloud:
        nacos:
          discovery:
            server-addr: 192.168.180.113:8848
  • 启动类
    @SpringBootApplication
    @EnableDiscoveryClient
    public class NacosProductApplication {
    ?
        public static void main(String[] args) {
            SpringApplication.run(NacosProductApplication.class, args);
        }
    ?
    }
     
  • web层
     1 /**
     2  * @author WGR
     3  * @create 2019/10/25 -- 0:29
     4  */
     5 @RestController
     6 @RequestMapping("/user")
     7 public class UserController {
     8     @GetMapping
     9     public String getUser(){
    10         return "admin";
    11     }
    12 }

测试结果:

二 提供消费配置

  • pom.xml

    <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-openfeign</artifactId>
            </dependency>
            <!--web-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    ?
            <!--nacos 一定要注意版本问题-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>0.9.0.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.junit.vintage</groupId>
                        <artifactId>junit-vintage-engine</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
  • application.yml
    server:
      port: 8882
    spring:
      application:
        name: nacos-consumer
      cloud:
        nacos:
          discovery:
            server-addr: 192.168.180.113:8848
  • 启动类配置
    @SpringBootApplication
    @EnableFeignClients
    public class NacosConsumerApplication {
    ?
        public static void main(String[] args) {
            SpringApplication.run(NacosConsumerApplication.class, args);
        }
    ?
    }
    ?
  • web层
    /**
     * @author WGR
     * @create 2019/10/25 -- 0:46
     */
    @RestController
    @RequestMapping("/test")
    public class TestController {
    ?
        @Autowired(required = false)
        private TestService testService;
    ?
        @GetMapping("/user")
        public String getUser() {
            return testService.getUser();
        }
    }
  • service层
    /**
     * @author WGR
     * @create 2019/10/25 -- 0:47
     */
    @FeignClient("nacos-product")
    public interface TestService {
    ?
        @GetMapping("user")
        String getUser();
    ?
    }
    ?

    测试:http://localhost:8882/test/user

原文地址:https://www.cnblogs.com/dalianpai/p/11735937.html

时间: 2024-08-30 17:20:07

SpringCloud之Nacos服务发现(十六)的相关文章

SpringCloud使用Nacos服务发现实现远程调用

本文使用SpringCloud结合Nacos服务发现,Feign远程调用做一个简单的Demo. 1 Nacos 关于Nacos之前写了两篇文章关于SpringBoot对它的使用,感兴趣可以查看一下. <SpringBoot使用Nacos配置中心> <SpringBoot使用Nacos服务发现> 在SpringBoot使用的时候,需要自行去向Nacos服务注册自己的服务,Nacos也提供了SpringCloud服务发现的依赖,本文结合spring-cloud-starter-alib

SpringBoot使用Nacos服务发现

本文介绍SpringBoot应用使用Nacos服务发现. 上一篇文章介绍了SpringBoot使用Nacos做配置中心,本文介绍SpringBoot使用Nacos做服务发现. 1.Eureka闭源 相信到现在,Eureka 2.0 闭源已经不是什么新鲜事了.在2017-2018年,几乎在国内掀起了一阵SpringCloud的热潮,几乎很大一部分人群随着对SpringBoot的关注,都开始关注起来了SpringCloud.而由于Eureka注册中心的易整合等优点,更是大多数使用SpringClou

SpringCloud接入EDAS——服务发现篇

旁白 很久没有写技术文章了,最近不是写水文就是写小说.说到底,还是最近很少研究技术的缘故,已经到了江郎才尽的地步了. 不过,LZ无意间看到自己团队的小伙伴写的一些文章,觉得还是不错的,于是便动了心思,准备把这些文章拿来,也算填补一下最近技术文章缺乏的空白. 而这些文章,不光涉及到一些技术干货,也算是变相的给自己团队的产品做了宣传,这也算是一石俩鸟了吧. 引言 好了,接下来咱们进入正题.可以看到,本篇文章的标题里有三个关键字,SpringCloud.EDAS以及服务发现.关于SpringCloud

Nacos服务发现控制台预览

Nacos是阿里巴巴中间件部门最近开源的一款用于服务发现和配置管理的产品.在既0.1版本发布基本功能和0.2版本发布与Spring生态结合的功能后,0.3版本将释放全新的控制台界面.配置管理功能相关的控制台,将会由阿里云商业产品ACM控制台改造而来,而服务发现的控制台界面,则将以首次露面的姿态,开放给开源社区.本文就将服务发现控制台相关的界面UI初版设计公布,欢迎大家参与讨论,希望通过大家的批评和建议,将服务发现控制台这块的功能和界面,设计的更加美观和易用. 加入阿里巴巴中间件开发者群,微信添加

企业分布式微服务云SpringCloud SpringBoot mybatis (二十六)集成apidoc

一.apidoc简介 apidoc通过在你代码的注释来生成api文档的.它对代码没有侵入性,只需要你写好相关的注释即可,并且它仅通过写简单的配置就可以生成高颜值的api接口页面.它基于node.js,所以你需要安装node.js环境.node.js安装,点击这里.这里就不介绍. 二.准备工作 安装完node.js安装api.doc,它的项目源码:https://github.com/apidoc/apidoc . 通过命令安装: npm install apidoc -g 三.注释怎么写 @ap

SpringCloud之Eureka服务发现

1.Eureka简介 文档:https://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html #####################接下来开始程序啦######################## SpringCloud的所有的组件开发步骤: 1.添加依赖 2.添加配置(.yml文件) 3.添加注解 1.pom.xml  <?xml version="1.0" encoding="UTF-8

物联网架构成长之路(51)-Nacos微服务配置中心、服务注册服务发现

0.前言 之前练习微服务是用Eureka,最近发现BladeX是用的Nacos,发现Nacos还比较简单实用.所以联系一下这个,为物联网V2版本积累经验. 1. 下载.安装.启动 下载Nacos 1 https://github.com/alibaba/nacos/releases 2 https://nacos.io/zh-cn/docs/quick-start.html 解压启动 访问http://127.0.0.1:8848/nacos/index.html 默认帐号密码 nacos/na

转: 六个问题带你了解服务发现

转自: http://dockone.io/article/509 六个问题带你了解服务发现 [编者的话]四位专家解答了有关服务发现的六个问题:(1)什么是服务发现?(2)服务发现包括哪些关键特性,为什么?(3)服务发现带来的主要好处是什么?(4)哪一种服务发现方案是最可靠的?(5)实施服务发现面临的最大挑战是什么?(6)已有的系统如何集成服务发现的功能? 「不可更改基础设施:六问六专家」很成功,这次我们套用这种形式,向四位专家提问有关服务发现的六个问题. 服务发现不是什么新问题(想想 DNS

Spring Cloud Alibaba之服务发现组件 - Nacos

服务发现 为了实现多个微服务之间的调用,我们除了需要Feign这种调用组件外还得依赖服务发现组件.主要的原因是每个微服务所在的机器ip并非总是固定的,并且每个微服务都可能部署多个实例在不同的机器上,所以我们不能把依赖的微服务ip地址写在代码或配置文件里,我们需要有个组件去动态的管理,这就是为什么微服务架构里服务发现功能是必须的. 那么服务发现组件是怎么实现服务发现的呢?我们以大家比较熟悉的MySQL来做类比,通过MySQL简单说明一下服务发现机制的实现.如下图: 简单说明一下什么是服务提供者与服