62 Star 470 Fork 207

Melon / GitEgg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md
MIT

GitEgg

项目介绍

    GitEgg 是一款开源免费的企业级微服务应用开发框架,旨在整合目前主流稳定的开源技术框架,集成常用的最佳项目解决方案,实现可直接使用的微服务快速开发框架。

项目官网

https://cloud.gitegg.com

Demo演示

Vue2版本:

https://demo.gitegg.com

Vue3版本:

https://v3.gitegg.com

技术交流

技术交流

系统架构

GitEgg微服务系统架构图

功能说明

  • 微服务框架组件:Spring Boot2 + SpringCloud Hoxton.SR8 + SpringCloud Alibaba
  • Spring Boot Admin: 管理和监控SpringBoot应用程序的微服务健康状态
  • 数据持久化组件:MySql + Druid + MyBatis + MyBatis-Plus
  • Mycat: 中间件实现数据库读写分离
  • Seata: 分布式事务管理,跨服务的业务操作保持数据一致性
  • 高性能的key-value缓存数据库:Redis + RedissonClient + RedisTemplate
  • API接口文档: Swagger2 + knife4j
  • 接口参数校验:spring-boot-starter-validation
  • Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台
  • Sentinel:把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性
  • OpenFeign: 微服务架构下服务之间的调用的解决方案 + Ribbon实现负载均衡/高可用重试机制
  • Gateway: 微服务路由转发 + 聚合knife4j微服务文档 + 【Gateway+OAuth2+JWT微服务统一认证授权】
  • Oauth2:SpringSecurity单点登录功能支持多终端认证授权 + RBAC权限框架
  • 验证码:集成滑动验证码【AJ-Captcha】 + 图片验证码【EasyCaptcha】
  • 多租户: 基于Mybatis-Plus【TenantLineInnerInterceptor】插件实现多租户功能
  • 数据权限: 基于Mybatis-Plus【DataPermissionHandler】分页插件实现可配置的数据权限功能
  • 对象存储服务( OSS):MinIO + 阿里云 + 七牛云 + 腾讯云 + 百度云 + 华为云
  • 工作流:Flowable轻量级业务流程引擎
  • XXL-JOB:分布式任务调度平台,作业调度系统
  • Ant-design-vue + ElementUI (基础)优秀流行的前端开源框架整合
  • uni-app: 可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)、快应用等多个平台 (本框架中主要用于H5、小程序)
  • Flutter: 给开发者提供简单、高效的方式来构建和部署跨平台、高性能移动应用 (本框架中主要用于移动应用)
  • EKL: Elasticsearch + Logstash + Kibana分布式日志监控平台
  • 代码生成器: 基于Mybatis-Plus代码生成插件开发的,便捷可配置的代码生成器
  • Keepalived + Nginx: 高可用 + 高性能的HTTP和反向代理web服务器
  • DevOps : kubernetes + docker + jenkins 实现持续集成(CI)和持续交付(CD)
  • 数据报表:基于Ant-design-vue + Echarts实现的自定义数据可视化报表

目录结构

    基于对敏捷开发 L型代码结构 的理解,以及过往研发过程中的经验,项目分为GitEgg-Platform(基础平台)和GitEgg-Cloud(业务平台)两个工程。     L型代码结构详细内容请参考: 敏捷开发“松结对编程”系列之十一:L型代码结构(团队篇之一)

  • 公共平台结构 GitEgg-Platform
GitEgg-Platform
├── gitegg-platform-base -- GitEgg平台公共基础
├── gitegg-platform-bom -- GitEgg平台包统一管理
├── gitegg-platform-boot -- GitEgg平台SpringBoot定制模块
├── gitegg-platform-cache -- GitEgg平台缓存配置模块
├── gitegg-platform-captcha -- GitEgg平台验证码模块
├── gitegg-platform-cloud -- GitEgg平台SpringCloud定制模块
├── gitegg-platform-db -- GitEgg平台数据库链接定制模块
├── gitegg-platform-dev -- GitEgg平台代码生成基础模块
├── gitegg-platform-dfs -- GitEgg分布式文件存储接口定义
├── gitegg-platform-dfs-aliyun -- GitEgg分布式文件存储-阿里云
├── gitegg-platform-dfs-minio -- GitEgg分布式文件存储-minio
├── gitegg-platform-dfs-qiniu -- GitEgg分布式文件存储-七牛云
├── gitegg-platform-dfs-starter -- GitEgg分布式文件存储-starter(方便统一引入dfs服务)
├── gitegg-platform-dfs-tencent -- GitEgg分布式文件存储-腾讯云
├── gitegg-platform-mybatis -- GitEgg平台Mybatis自定义扩展模块
├── gitegg-platform-oauth2 -- GitEgg平台Oauth2自定义扩展模块
├── gitegg-platform-pay -- GitEgg平台统一支付模块
├── gitegg-platform-redis -- GitEgg平台Redis自定义配置模块
├── gitegg-platform-sms -- GitEgg平台短信模块接口定义
├── gitegg-platform-sms-aliyun -- GitEgg平台短信模块-阿里云
├── gitegg-platform-sms-qiniu -- GitEgg平台短信模块-七牛云
├── gitegg-platform-sms-starter -- GitEgg平台短信模块-starter(方便统一引入短信服务)
├── gitegg-platform-sms-tencent -- GitEgg平台短信模块-腾讯云
├── gitegg-platform-swagger -- GitEgg平台Swagger文档
├── gitegg-platform-push -- GitEgg平台消息推送模块
└── gitegg-platform-wechat -- GitEgg平台微信对接模块
  • 业务平台结构 GitEgg-Cloud
GitEgg-Cloud
├── gitegg-common -- 公共模块工程
├── gitegg-gateway -- 网关
├── gitegg-oauth -- oauth2鉴权
└── gitegg-plugin -- 系统插件工程
     ├── gitegg-code-generator -- 代码生成模块
     ├── gitegg-flowable -- 工作流模块
     └── gitegg-xxl-job -- 定时任务模块
└── gitegg-service -- 微服务功能模块
     ├── gitegg-service-base -- 系统基础服务
     ├── gitegg-service-bigdata -- 大数据处理服务
     ├── gitegg-service-extension -- 系统服务扩展(短信、微信、分布式存储)
     └── gitegg-service-system -- 系统配置服务(权限、资源)
└── gitegg-service-client -- 微服务功能统一定义的Feign Cilent
     ├── gitegg-service-base-client -- 系统基础服务Feign Cilent
     ├── gitegg-service-bigdata-client -- 大数据处理服务Feign Cilent
     ├── gitegg-service-extension-client -- 系统服务扩展(短信、微信、分布式存储)Feign Cilent
     └── gitegg-service-system-client -- 系统配置服务(权限、资源)Feign Cilent
  • 前端代码 GitEgg-Portal
  1. gitegg-portal-ant-design 以ant-design-vue-pro为框架的后台管理界面 (推荐使用,所有功能优先开发此版本再同步到element-ui版本)

  2. gitegg-portal-element-ui 以vue-element-admin为框架的后台管理界面 (目前只实现了登录和权限管理,不再维护)

  3. gitegg-portal-vben-admin 以vben admin为框架的后台管理界面 (推荐使用)

快速开始

环境准备

  • 安装JDK
  • 安装Maven
  • 安装Mysql
  • 安装Redis
  • 安装Nacos
  • 安装Sentinel
  • 安装IntelliJ IDEA
  • 安装Node.js
  • 安装VSCode
  • 导入后端代码
  • 导入前端代码
  • 导入数据库脚本
  • 导入Nacos配置

本地运行

打包发布

项目界面

登录界面 用户管理 角色管理 资源管理 组织管理 数据权限 组织权限 数据字典 租户管理 存储配置 上传记录 短信模板 短信渠道 操作日志

项目交流

项目经验、行业解决方案、创业经验交流

项目交流

版权许可

MIT License

MIT License Copyright (c) 2023 Melon Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

GitEgg 是一款开源免费的企业级微服务应用开发框架,旨在整合目前主流稳定的开源技术框架,集成常用的最佳项目解决方案,实现可直接使用的微服务快速开发框架。 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/wmz1930/GitEgg.git
git@gitee.com:wmz1930/GitEgg.git
wmz1930
GitEgg
GitEgg
main

搜索帮助