Macula Boot Starter Cloud Alibaba
概述
基于Spring Cloud Alibaba的微服务开源套件Nacos、Sentinel等搭建微服务平台。
组件坐标
<!-- 微服务模块依赖 -->
<dependency>
<groupId>dev.macula.boot</groupId>
<artifactId>macula-boot-starter-cloud-alibaba</artifactId>
<version>${macula.version}</version>
</dependency>
<!-- 网关模块依赖 -->
<dependency>
<groupId>dev.macula.boot</groupId>
<artifactId>macula-boot-starter-cloud-alibaba-scg</artifactId>
<version>${macula.version}</version>
</dependency>
使用配置
在bootstrap.yml中如下配置,主要是配置中心的相关配置
server:
port: 8081
spring:
profiles:
# maven打包的时候指定profile,包括local,dev,test,staging,pet,prd,默认启用local
active: @profile.active@
application:
name: macula-cloud-system
cloud:
nacos:
username: ${nacos.username}
password: ${nacos.password}
config:
server-addr: ${nacos.config.server-addr}
namespace: ${nacos.config.namespace}
# group:
refresh-enabled: true
file-extension: yml
# 和环境有关的配置信息,不同环境覆盖此处的配置
nacos:
username: nacos
password: nacos
config:
server-addr: 127.0.0.1:8848
namespace: MACULA5
---
spring:
config:
activate:
on-profile: dev
nacos:
username: maculav5
#password: 请通过启动命令赋予密码
config:
server-addr: 10.94.108.55:8848
namespace: MACULA5
在nacos中以spring.application.name命名dataId,如果有profile则加上-xxx命名,后缀是yml,配置注册中心
spring:
cloud:
nacos:
discovery:
enabled: true
server-addr: 127.0.0.1:8848
namespace: MACULA5
# 延迟注册服务到 Nacos,实现容器优雅上线
register-enabled: false
register-delayed: true
# group:
sentinel:
enabled: false
核心功能
请参考官方文档
依赖引入
微服务模块
<dependencies>
<dependency>
<groupId>dev.macula.boot</groupId>
<artifactId>macula-boot-starter-feign</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-datasource-nacos</artifactId>
</dependency>
</dependencies>
网关模块
<dependencies>
<dependency>
<groupId>dev.macula.boot</groupId>
<artifactId>macula-boot-starter-cloud-gateway</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-sentinel-gateway</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-datasource-nacos</artifactId>
</dependency>
</dependencies>
版权说明
- spring-cloud-alibaba:https://github.com/alibaba/spring-cloud-alibaba/blob/2021.x/LICENSE