欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringCoud 核心 整合SpringCoud alibaba Nacos

程序员文章站 2022-06-14 21:08:58
...

SpringCoud 核心 整合SpringCoud alibaba Nacos

一、快速构建一个SpringBoot项目

SpringCoud 核心 整合SpringCoud alibaba Nacos
SpringCoud 核心 整合SpringCoud alibaba Nacos
SpringCoud 核心 整合SpringCoud alibaba Nacos
SpringCoud 核心 整合SpringCoud alibaba Nacos

二、添加依赖

2.1 SpringMVC

2.2 nacos客户端

2.3 lombok(可以省略)

2.4 actuator监控(图形化)

2.5 SpringCloud和spring-cloud-alibaba

 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--Lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.8</version>
            <scope>provided</scope>
        </dependency>
        <!--actuator监控-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <!--整合SpringCloud-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Greenwich.SR1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--整合SpringCloud alibaba-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>0.9.0.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

三、添加注解(无)

四、写配置信息

#actuator监控
#暴露原则
#  never :不暴露
#  always :暴露
management:
  endpoints:
    web:
      exposure:
        include: "*"
  endpoint:
    health:
      show-details: always
#指定nacos服务地址
#应用名称
#应用端口
spring:
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
  application:
    name: provider-center
server:
  port: 8081

五、下载和运行nacos

5.1 下载nacos的server端

Github链接:
https://github.com/alibaba/nacos/releases
根据自己的环境,选择即可
SpringCoud 核心 整合SpringCoud alibaba Nacos

5.2 解压

5.3 运行

windows双击运行
SpringCoud 核心 整合SpringCoud alibaba Nacos

5.4 效果图

SpringCoud 核心 整合SpringCoud alibaba Nacos

5.5 浏览器控制台

nacos的server端登录地址:
http://192.168.43.122:8848/nacos/index.html#/login

账号:nacos
密码:nacos
SpringCoud 核心 整合SpringCoud alibaba Nacos

六、运行项目

6.1 运行项目前,先执行

mvn clean install

保证项目构建成功,在启动。

6.2 在nacos控制台,查看服务

SpringCoud 核心 整合SpringCoud alibaba Nacos
从图中可以看出:
应用:provider-center已经成功注册到nacos的server端

6.3 actuator的监控

有一个actuator的监控的页面,/actuator是导航页面的端点,在这个页面下面可以清楚看到其他所有的端点信息

监控链接地址:
http://localhost:8081/actuator
SpringCoud 核心 整合SpringCoud alibaba Nacos

七、创建另一个应用来调用这个应用到的服务

7.1 我直接复制上面的项目,把项目名+2

7.2 artifactId:springcloudalibaba-actuator-nacos2

7.3 端口改为8081

7.4 应用名称为provider-center2

7.5 创建一个test端点,获取provider-center的信息

启动类添加:

@Bean
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }
@RestController
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class TestController {


    private final DiscoveryClient discoveryClient;

    /**
     * ,
     * 测试服务发现,证明内容中心总能找到用户中心
     *
     * @return 用户中心的所有市里的地址信息
     */
    @GetMapping("/test2")
    public List<ServiceInstance> getInstances() {
//        查询指定服务的所有实例信息
        return this.discoveryClient.getInstances("provider-center");
    }
}

八、在控制台查看服务列表

SpringCoud 核心 整合SpringCoud alibaba Nacos

九、浏览器调用服务

调用服务地址:
http://localhost:8082/test2
SpringCoud 核心 整合SpringCoud alibaba Nacos

本文项目地址:
第1个项目:
Github地址:https://github.com/gb-heima/springcloudalibaba-actuator-nacos
zip包链接:
https://github.com/gb-heima/springcloudalibaba-actuator-nacos/archive/master.zip

第2个项目:
Github地址:https://github.com/gb-heima/springcloudalibaba-actuator-nacos2
zip包链接:
https://github.com/gb-heima/springcloudalibaba-actuator-nacos2/archive/master.zip

相关标签: SpringCoud