# mz-cloud
**Repository Path**: itzong/mz-cloud
## Basic Information
- **Project Name**: mz-cloud
- **Description**: MZ的微服务架构
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 0
- **Created**: 2023-03-06
- **Last Updated**: 2024-09-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 工程简介
### 项目介绍:
> 快速开发实现微服务系统的基础功能,现在没有前端对接,仅仅为微服务架子
### 项目架构:
* 后端:Spring Boot、Spring Cloud & Alibaba、Spring Security、Nacos、Sentinel、Mybatis-Plus、MySQL
* 前端:Vue、Element UI、Vuex、Js-Cookie、Axios
* 文件存储:Minio
### 主要实现功能:
* 实现Spring Cloud Gateway网关集成Swagger、拓展Spring Cloud Gateway实现路由信息保存至Redis
* Spring Security OAuth2认证登录,用户信息存入Redis中,自定义权限注解
* 自定义注解 Ignore ,实现安全接口暴露
* 文件管理,管理上传至Minio中的文件
* ELK框架进行日志收集
* 拉取 sentinel-dashboard 源码,将原有的流量规则存入内存中,改为存放至Redis,以每个微服务的服务名作为Key
* 公共sentinel模块,以每个微服务的服务名作为Key,服务启动时通过Key拉取每个服务的流量规则
* 可视化路由规则,动态CURD路由规则
* 基于Jackson扩展实现字典翻译序列化给前端
* 通用后台管理所具备的功能 (待完成)
### 部分主要功能Api (密码:1911298402)
```http
https://apifox.com/apidoc/shared-0a1cd98b-52cd-4a5d-baf6-efb4ed1f4fbc?pwd=1911298402
```
## 公共yml (Nacos)
> Data Id: application-dev.yml
>
> Group: DEFAULT_GROUP
>
> 归属应用: 所有应用
```yml
# 应用名称
spring:
# redis 配置
redis:
host: ${REDIS_HOST:192.168.56.2}
port: 6379
password: 123456
jedis:
pool:
max-active: 20 # 连接池最大连接数(使用负值表示没有限制)
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
max-idle: 10 # 连接池中的最大空闲连接
min-idle: 3 # 连接池中的最小空闲连接
time-between-eviction-runs: 100 # 连接超时时间(毫秒)
swagger:
author:
name: 小政同学i丷
email: xiaozheng666888@qq.com
api-info:
title: mz-cloud接口文档
version: v1.0
# 可控点Api开启
management:
endpoints:
web:
exposure:
include: gateway
# 网关可控点
endpoint:
health:
show-details: always
```
# 延伸阅读
## 新模块遵守约束
```xml
4.0.0
com.mz.modules
mz-modules
0.0.1-SNAPSHOT
mz-modules
pom
mz-cloud
com.mz.cloud
0.0.1-SNAPSHOT
MZ系统业务模块
```
### 新模块下的子模块
```ini
mz-modules
├── mz-system -- system 模块
├── ├── mz-system-api -- system feign api 暴露
├── ├── mz-system-model -- 实体对象抽离
├── ├── mz-system-provider -- 服务能力提供
```
## 提交指南
Commit message 包括三个部分:Header,Body 和 Footer。可以用下方的格式表示它的结构。
```
(): // 空一行// 空一行