SpringCoud 核心 整合SpringCoud alibaba Nacos
程序员文章站
2022-06-14 21:08:58
...
SpringCoud 核心 整合SpringCoud alibaba Nacos
文章目录
- 一、快速构建一个SpringBoot项目
- 二、添加依赖
- 2.1 SpringMVC
- 2.2 nacos客户端
- 2.3 lombok(可以省略)
- 2.4 actuator监控(图形化)
- 2.5 SpringCloud和spring-cloud-alibaba
- 三、添加注解(无)
- 四、写配置信息
- 五、下载和运行nacos
- 六、运行项目
- 七、创建另一个应用来调用这个应用到的服务
- 7.1 我直接复制上面的项目,把项目名+2
- 7.2 `artifactId:springcloudalibaba-actuator-nacos2`
- 7.3 端口改为8081
- 7.4 应用名称为provider-center2
- 7.5 创建一个test端点,获取provider-center的信息
- 八、在控制台查看服务列表
- 九、浏览器调用服务
一、快速构建一个SpringBoot项目
二、添加依赖
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
根据自己的环境,选择即可
5.2 解压
5.3 运行
windows双击运行
5.4 效果图
5.5 浏览器控制台
nacos的server端登录地址:
http://192.168.43.122:8848/nacos/index.html#/login
账号:nacos
密码:nacos
六、运行项目
6.1 运行项目前,先执行
mvn clean install
保证项目构建成功,在启动。
6.2 在nacos控制台,查看服务
从图中可以看出:
应用:provider-center已经成功注册到nacos的server端
6.3 actuator的监控
有一个actuator的监控的页面,/actuator是导航页面的端点,在这个页面下面可以清楚看到其他所有的端点信息
监控链接地址:
http://localhost:8081/actuator
七、创建另一个应用来调用这个应用到的服务
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");
}
}
八、在控制台查看服务列表
九、浏览器调用服务
调用服务地址:
http://localhost:8082/test2
本文项目地址:
第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