Pig 微服务架构完全指南:从零构建企业级RBAC系统的终极教程
想要快速搭建一个功能完整的企业级微服务架构吗?Pig 微服务框架正是你需要的解决方案!这个基于 Spring Cloud 2023 和 Spring Boot 3.3 的开源项目,提供了生产级的RBAC权限管理系统,支持多种安全授权模式,让企业级应用开发变得前所未有的简单高效。
🚀 为什么选择Pig微服务框架?
Pig 是一个基于 Spring Cloud、Spring Boot、OAuth2 的 RBAC 企业快速开发平台,同时支持微服务架构和单体架构。它提供了对 Spring Authorization Server 的生产级实践,支持多种安全授权模式,让你能够快速构建稳定可靠的企业应用。
核心优势亮点
- 双架构支持:既支持微服务架构,也支持单体架构,满足不同规模项目的需求
- 安全认证:集成 Spring Authorization Server,支持多种安全授权模式
- 容器化部署:提供对 Kubernetes、Rancher2、Kubesphere 等常见容器化方案的支持
- 模块化设计:清晰的模块划分,便于扩展和维护
🏗️ Pig 微服务架构深度解析
核心模块架构
Pig 采用了清晰的分层架构设计,主要包含以下几个核心模块:
认证授权中心 - pig-auth/src/main/java/com/pig4cloud/pig/auth/
AuthorizationServerConfiguration- OAuth2授权服务器配置WebSecurityConfiguration- Web安全配置- 多种认证方式支持:密码模式、短信验证码等
通用权限管理 - pig-upms/pig-upms-biz/src/main/java/com/pig4cloud/pig/admin/
- 用户管理、角色管理、菜单管理
- 部门管理、岗位管理、字典管理
- 完整的RBAC权限控制体系
网关服务 - pig-gateway/src/main/java/com/pig4cloud/pig/gateway/
- 统一的API网关入口
- 请求过滤和限流配置
注册中心架构
Pig 使用 Nacos 作为服务注册中心,支持服务发现、配置管理等功能。注册中心运行在8848端口,为整个微服务体系提供基础支撑。
📦 快速开始:5分钟搭建Pig微服务
环境准备
确保你的开发环境满足以下要求:
- JDK 17 或更高版本
- Maven 3.6+
- Docker(可选,用于容器化部署)
一键部署步骤
-
克隆项目代码
git clone https://gitcode.com/gh_mirrors/pig/pig.git -b jdk17 -
构建并启动服务
cd pig && mvn clean install && docker-compose up -d -
启动前端界面
git clone https://gitee.com/log4j/pig-ui.git cd pig-ui && npm install -g cnpm --registry=https://registry.npm.taobao.org cnpm install && cnpm run build:docker && cd docker && docker-compose up -d
核心服务端口说明
- 网关服务:9999端口
- 认证服务:3000端口
- 用户权限服务:4000端口
- 注册中心:8848端口
- 监控服务:5001端口
🔐 安全认证机制详解
OAuth2 认证流程
Pig 实现了完整的 OAuth2 认证体系,支持以下认证方式:
密码模式 - pig-auth/src/main/java/com/pig4cloud/pig/auth/support/password/
OAuth2ResourceOwnerPasswordAuthenticationConverterOAuth2ResourceOwnerPasswordAuthenticationProvider
短信验证码模式 - pig-auth/src/main/java/com/pig4cloud/pig/auth/support/sms/
- 支持手机号+验证码登录
- 可自定义验证码生成和校验逻辑
RBAC 权限控制
基于角色的访问控制(RBAC)是 Pig 的核心特性之一:
用户角色管理 - pig-upms/pig-upms-biz/src/main/java/com/pig4cloud/pig/admin/service/impl/SysUserServiceImpl.java
- 多角色支持
- 权限继承机制
- 细粒度权限控制
🛠️ 高级功能与扩展
动态数据源支持
pig-common/pig-common-datasource/src/main/java/com/pig4cloud/pig/common/datasource/
- 支持多数据源动态切换
- 基于注解的数据源配置
分布式事务
pig-common/pig-common-seata/src/main/java/com/pig4cloud/pig/common/seata/
- 集成 Seata 分布式事务解决方案
- 保证跨服务数据一致性
代码生成器
pig-visual/pig-codegen/src/main/java/com/pig4cloud/pig/codegen/
- 图形化代码生成界面
- 支持自定义模板
- 快速生成CRUD代码
📈 监控与运维
服务监控
pig-visual/pig-monitor/src/main/java/com/pig4cloud/pig/monitor/
- 实时服务状态监控
- 性能指标采集
- 异常告警机制
日志管理
pig-common/pig-common-log/src/main/java/com/pig4cloud/pig/common/log/
- 统一的日志收集
- 操作日志记录
- 审计功能支持
💡 最佳实践建议
开发规范
- 代码格式化:项目使用 spring-javaformat 进行代码格式化
- 分支管理:遵循 Git Flow 工作流
- API 设计:RESTful 风格接口设计
部署策略
- 开发环境使用 Docker Compose
- 生产环境建议使用 Kubernetes
- 配置中心统一管理应用配置
🎯 总结
Pig 微服务框架为企业级应用开发提供了一套完整、稳定、易扩展的解决方案。无论是初创公司还是大型企业,都能从中受益。其清晰的架构设计、完善的权限管理体系、丰富的功能模块,让开发者能够专注于业务逻辑的实现,而不必过多关注底层技术细节。
通过本指南,你已经了解了 Pig 微服务框架的核心架构、部署方法和最佳实践。现在就开始使用 Pig,构建属于你的企业级微服务应用吧!🚀
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
