# ch-admin-wiki **Repository Path**: ch-cloud/ch-admin-wiki ## Basic Information - **Project Name**: ch-admin-wiki - **Description**: 基于Spring微服务架构的管理平台(用户权限体系、多租户体系、敏捷开发管理)可管理多环境的,中间件服务:Kafka、Nacos、RocketMQ - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-12 - **Last Updated**: 2025-09-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CH-Cloud-Admin 企业级微服务架构平台 [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![Java](https://img.shields.io/badge/Java-1.8+-orange.svg)](https://www.oracle.com/java/) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-2.6.x-green.svg)](https://spring.io/projects/spring-boot) [![Spring Cloud](https://img.shields.io/badge/Spring%20Cloud-2021.0.1+-green.svg)](https://spring.io/projects/spring-cloud) ## 📖 项目简介 CH-Cloud-Admin是一个基于Spring Boot + Spring Cloud Alibaba构建的企业级微服务架构平台,采用前后端分离模式,为企业提供完整的微服务解决方案。平台集成了用户权限管理、单点登录、API网关、中间件管理等核心功能,支持高并发、高可用的分布式系统架构。 ### ✨ 核心特性 - 🏗️ **微服务架构** - 基于Spring Cloud Alibaba生态,服务灵活扩展 - 🔐 **统一认证** - 基于JWT的单点登录系统,支持多因子认证 - 🛡️ **权限管理** - 完整的RBAC权限体系,支持多租户架构 - 🚪 **智能网关** - 基于Spring Cloud Gateway的API网关,支持动态路由 - 🔧 **中间件管理** - 统一的Kafka、RocketMQ、Nacos、Redis管理平台 - 📊 **监控运维** - 集成Prometheus、Grafana监控体系 - 🐳 **容器化部署** - 支持Docker、Kubernetes部署 - 📚 **API文档** - 集成Swagger/OpenAPI文档 ### 🛠️ 技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Spring Boot | 2.6.x | 基础框架 | | Spring Cloud | 2021.0.1+ | 微服务框架 | | Spring Cloud Alibaba | 2021.0.1.0 | 阿里云组件 | | Nacos | 2.0+ | 注册中心/配置中心 | | Redis | 6.0+ | 缓存中间件 | | MySQL | 8.0+ | 主数据库 | | RocketMQ | 4.9+ | 消息队列 | | Kafka | 2.8+ | 消息队列 | | Sentinel | 1.8+ | 流量控制 | | MyBatis Plus | 3.5.x | ORM框架 | ### 软件架构 软件架构 >服务注册与调用 基于Nacos来实现的服务注册与调用,在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。 >服务鉴权 通过JWT的方式来加强服务之间调度的权限验证,保证内部服务的安全性。 >负载均衡 将服务保留的rest进行代理和网关控制,除了平常经常使用的node.js、nginx外,Spring Cloud系列的gateway和ribbon,可以帮我们进行正常的网关管控和负载均衡。 其中扩展和借鉴国内Alibaba Sentinel组件,方面进行限流。 >熔断机制 因为采取了服务的分布,为了避免服务之间的调用“雪崩”,采用了Hystrix的作为熔断器,避免了服务之间的“雪崩”。 ## 🏛️ 系统架构 ### 整体架构图 ``` ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 前端层 (Frontend Layer) │ ├─────────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ │ │ CH-Admin │ │ 移动端应用 │ │ 第三方应用 │ │ │ │ (管理后台) │ │ (Mobile) │ │ (Third Party) │ │ │ │ Vue.js 3.x │ │ React Native │ │ API Client │ │ │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 网关层 (Gateway Layer) │ ├─────────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────────────────────────────────────────────────────────────────────┐ │ │ │ CH-Gateway (API网关) │ │ │ │ • 动态路由管理 • 权限验证 • 流量控制 • 请求日志 │ │ │ │ • 负载均衡 • 熔断降级 • 监控告警 • 安全防护 │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 微服务层 (Microservices Layer) │ ├─────────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ CH-SSO │ │ CH-UPMS │ │ CH-DevOps │ │ 其他服务 │ │ │ │ (认证服务) │ │ (权限管理) │ │ (中间件管理) │ │ (可扩展) │ │ │ │ 端口:7001 │ │ 端口:7002 │ │ 端口:7003 │ │ 端口:7xxx │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 基础设施层 (Infrastructure Layer) │ ├─────────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ Nacos │ │ Redis │ │ MySQL │ │ RocketMQ │ │ │ │ (注册中心) │ │ (缓存) │ │ (数据库) │ │ (消息队列) │ │ │ │ 端口:8848 │ │ 端口:6379 │ │ 端口:3306 │ │ 端口:9876 │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────┘ ``` ### 部署架构图 ``` ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 基础服务层 (Base Services) │ ├─────────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ MySQL │ │ Redis │ │ Nacos │ │ │ │ 8.0+ │ │ 6.0+ │ │ 2.0+ │ │ │ │ 数据存储 │ │ 缓存中间件 │ │ 注册/配置中心│ │ │ └─────────────┘ └─────────────┘ └─────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 微服务层 (Microservices) │ ├─────────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ CH-SSO │ │ CH-UPMS │ │ CH-Gateway │ │ CH-DevOps │ │ │ │ 认证服务 │ │ 权限管理 │ │ API网关 │ │ 中间件管理 │ │ │ │ 2.1.0-SNAPSHOT│ 20250906032302│ 20250906035834│ 20250906034927│ │ │ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ │ │ ┌─────────────┐ │ │ │ CH-Admin │ │ │ │ 前端管理 │ │ │ │ 20250809021803│ │ │ └─────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────┘ ``` ### 核心服务说明 #### 1. CH-Admin 前端管理界面 - **技术栈**: Vue.js 3.x + Element Plus - **功能**: 系统管理、日志管理、中间件管理 - **特色**: 响应式设计、组件化开发 源码仓库[ch-admin](https://github.com/zhimin711/ch-admin) #### 2. CH-SSO 单点登录服务 - **技术栈**: Spring Boot + Spring Security + JWT - **功能**: 用户认证、令牌管理、多因子认证 - **特色**: 支持图形验证码、滑动拼图、点选文字验证码 源码仓库[ch-sso](https://github.com/zhimin711/ch-sso) #### 3. CH-UPMS 用户权限管理服务 - **技术栈**: Spring Boot + MyBatis Plus + ShardingSphere - **功能**: 用户管理、角色管理、权限管理、组织架构 - **特色**: 多租户支持、项目权限管理、数据字典 源码仓库[ch-upms](https://github.com/zhimin711/ch-upms) #### 4. CH-Gateway API网关服务 - **技术栈**: Spring Cloud Gateway + Sentinel - **功能**: 路由转发、权限验证、流量控制、请求日志 - **特色**: 动态路由、Cookie自动刷新、多层权限过滤 源码仓库[ch-gateway](https://github.com/zhimin711/ch-gateway) #### 5. CH-DevOps 中间件管理平台 - **技术栈**: Spring Boot + Spring Cloud - **功能**: Kafka管理、RocketMQ管理、Nacos管理、Redis管理 - **特色**: 统一管理、实时监控、配置管理 源码仓库[ch-devops](https://github.com/zhimin711/ch-devops) ## 🚀 快速开始 ### 在线预览 - **访问地址**: http://admin.chaohua.cc - **管理员账号**: admin - **默认密码**: admin123 ### 依赖服务 - **MySQL**: 8.0+ - **Redis**: 6.0+ - **Nacos**: 2.0+ - **RocketMQ**: 4.9+ ### 环境要求 - **JDK**: 1.8+ - **Maven**: 3.6+ - **Docker**: 20.10+ (内存5G以上) ### 安装部署 #### 克隆或下载项目 ```shell git clone https://github.com/zhimin711/ch-admin-wiki.git cd ch-admin-wiki ``` #### 初始化数据库 **1. 数据库初始化** ```sql -- 创建数据库 CREATE DATABASE ch_sso CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE DATABASE ch_upms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE DATABASE ch_devops CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 执行各服务的SQL脚本 -- UPMS服务脚本 source ./db/ch-upms.sql -- Devops服务脚本 source ./db/ch-devops.sql ``` #### 添加动态配置 **2. 添加Nacos动态配置文件** ***数据库、Redis、rocketMQ*** - 修改各服务的数据库连接配置 - 修改Redis连接配置 - 修改Nacos配置中心地址 > SSO配置 Data ID: ch-sso.yml Group: ch-sso 复制文件内容[nacos/ch-sso/ch-sso.yml](nacos/ch-sso/ch-sso.yml) > UPMS配置 Data ID: ch-upms.yml Group: ch-upms 复制文件内容[nacos/ch-upms/ch-upms.yml](nacos/ch-upms/ch-upms.yml) > gateway配置 Data ID: ch-gateway.yml Group: ch-gateway 复制文件内容[nacos/ch-gateway/ch-gateway.yml](nacos/ch-gateway/ch-gateway.yml) > devops配置 Data ID: ch-gateway.yml Group: ch-gateway 复制文件内容[nacos/ch-gateway/ch-gateway.yml](nacos/ch-gateway/ch-gateway.yml) #### Docker最小化部署 ##### 3.2 启动微服务 ```bash # 启动微服务 docker-compose -f docker-compose-microservices.yml up -d # 查看微服务状态 docker-compose -f docker-compose-microservices.yml ps ``` ##### 3.3 查看服务日志 ```bash # 查看SSO服务日志 docker-compose -f docker-compose-microservices.yml logs -f ch-sso # 查看UPMS服务日志 docker-compose -f docker-compose-microservices.yml logs -f ch-upms # 查看Gateway服务日志 docker-compose -f docker-compose-microservices.yml logs -f ch-gateway ``` ## 第四步:验证部署 ### 4.1 检查服务状态 | 服务 | 地址 | 状态检查 | |------|------|----------| | 前端管理界面 | http://localhost:8081 | 浏览器访问 | | SSO认证服务 | http://localhost:7001 | http://localhost:7001/actuator/health | | UPMS权限服务 | http://localhost:7002 | http://localhost:7002/actuator/health | | Gateway网关 | http://localhost:7000 | http://localhost:7000/actuator/health | | DevOps中间件 | http://localhost:7003 | http://localhost:7003/actuator/health | ### 4.2 测试登录 - **访问地址**: http://localhost:8081 - **管理员账号**: admin - **默认密码**: admin123 ## 📋 功能特性 ### 🔐 认证授权 - **单点登录**: 基于JWT的统一身份认证 - **多因子认证**: 支持用户名密码+验证码双重认证 - **令牌管理**: 自动刷新、过期处理、安全注销 - **权限控制**: 基于RBAC的精细化权限管理 ### 🏢 组织管理 - **用户管理**: 用户增删改查、角色分配、状态管理 - **角色管理**: 角色权限分配、角色类型管理 - **组织架构**: 部门层级管理、职位管理 - **多租户**: 支持多租户架构,数据隔离 ### 🚪 网关服务 - **动态路由**: 基于Nacos的动态路由管理 - **权限验证**: 多层权限过滤器链 - **流量控制**: 基于Sentinel的限流熔断 - **请求日志**: 完整的请求响应日志记录 ### 🔧 中间件管理 - **Kafka管理**: 集群管理、主题管理、消息监控 - **RocketMQ管理**: 集群管理、主题管理、消息发送 - **Nacos管理**: 配置管理、服务发现、命名空间管理 - **Redis管理**: 数据库管理、键值操作、集群监控 ## 📚 API文档 各服务均提供完整的API文档: | 服务 | API文档地址 | 说明 | |------|-------------|------| | SSO认证服务 | http://localhost:7000/swagger-ui/index.html | 认证相关接口 | | UPMS权限服务 | http://localhost:7002/swagger-ui/index.html | 权限管理接口 | | Gateway网关 | http://localhost:7001/swagger-ui.html | 网关管理接口 | | DevOps中间件 | http://localhost:7003/swagger-ui.html | 中间件管理接口 | ## 🔍 监控运维 ### 健康检查 各服务均提供健康检查端点: - **SSO服务**: http://localhost:7000/actuator/health - **UPMS服务**: http://localhost:7002/actuator/health - **Gateway服务**: http://localhost:7001/actuator/health - **DevOps服务**: http://localhost:7003/actuator/health ### 监控指标 - **JVM指标**: 内存使用、GC情况、线程状态 - **业务指标**: API调用次数、错误率、响应时间 - **中间件指标**: 连接数、消息积压、响应时间 ## 🤝 贡献指南 我们欢迎所有形式的贡献! ### 贡献步骤 1. **Fork 本仓库** 2. **创建特性分支** (`git checkout -b feature/AmazingFeature`) 3. **提交更改** (`git commit -m 'Add some AmazingFeature'`) 4. **推送分支** (`git push origin feature/AmazingFeature`) 5. **创建 Pull Request** ### 代码规范 - 遵循阿里巴巴Java开发手册 - 使用统一的代码格式化配置 - 添加必要的注释和文档 - 编写单元测试 ## 📄 许可证 本项目采用 [Apache License 2.0](LICENSE) 开源协议。 ## 📞 联系我们 - **项目地址**: https://gitee.com/ch-cloud/ch-cloud - **问题反馈**: https://gitee.com/ch-cloud/ch-cloud/issues - **QQ群**: 27754177 ## 🙏 致谢 感谢以下开源项目的支持: - [Spring Boot](https://spring.io/projects/spring-boot) - [Spring Cloud Alibaba](https://github.com/alibaba/spring-cloud-alibaba) - [Nacos](https://nacos.io/) - [Redis](https://redis.io/) - [MyBatis Plus](https://baomidou.com/) --- ## 📱 使用说明
登录 首页
用户管理 角色管理
权限管理 组织管理
职位管理 数据字典
登录日志 操作日志
Nacos集群管理 Nacos应用配置管理
Nacos应用配置权限申请 Kafka集群管理
RocketMQ集群管理
---
**如果这个项目对您有帮助,请给我们一个 ⭐️ Star** Made with ❤️ by CH-Cloud Team