renren-cloud 3.1 发布:人人微服务
项目背景
[hr]
在传统的 IT 行业,软件大多都是各种独立系统的堆砌,如 OA、CRM、ERP 等大型应用,随着新需求的不断增加,所有模块耦合在一块,代码量大,扩展性差,企业维护大型整体式应用变得越来越困难。 微服务是一个新兴的软件架构,把一个大型的应用程序和服务拆分为数十个微小的应用,每个可以由单独的研发团队负责,相当于一个独立的项目,开发模式更灵活,可以使用不同的开发技术、不同的存储方式(比如 Oracle、MySQL、Mongo 等)。
项目特点
[hr]
• 基于Spring Cloud Alibaba、Nacos、Sentinel、Skywalking、Spring Cloud Gateway、Seata、Redis、Spring Boot 、Mybatis、Element开发
• 采用Spring Security OAuth2.0安全框架进行权限管理,可实现服务间权限鉴权
• 代码风格优雅简洁、通俗易懂,且符合《阿里巴巴Java开发手册》规范要求,可作为企业代码规范
• 优秀的菜单功能权限,前端可灵活控制页面及按钮的展示,后端可对未授权的请求进行拦截
• 优秀的数据权限管理,只需增加相应注解,无需其他任何代码,即可实现数据过滤,达到数据权限目的
• 灵活的角色权限管理,新增角色时,角色权限只能是创建者权限的子集,可有效防止权限越权
• 灵活的日志管理,可查看登录日志、操作日志、异常日志,方便审计及BUG定位
• 灵活的国际化配置,目前已支持简体中文、繁体中文、English,新增语言,只需新增[i18n]文件即可
• 灵活的前端动态路由,新增页面无需修改路由文件,也可在页面动态新增tab标签
• 灵活运用Redis缓存,不仅仅是简单的set、get操作,还包含了一系列使用技巧,可作为Redis开发规范
• 提供CrudService接口,对增删改查进行封装,代码更简洁
• 提供短信服务,可同时支持多个短信平台、短信模板,现已支持阿里云、腾讯云、七牛云短信平台接口,及查看短信发送记录
• 提供文件上传服务,可支持阿里云、腾讯云、七牛云、FastDFS、MinIO、本地上传
• 提供动态网关路由功能,基于Nacos配置中心实现,可灵活动态修改网关配置
• 提供分布式事务解决方案,现已集成阿里Seata,并提供详细参考示例
• 提供主题切换,现已支持13种主题,且可根据自行需求,自定义主题
• 提供MySQL、Oracle、SQL Server、PostgreSQL主流数据库的支持
• 提供分布式锁,基于Redis实现
• 集成Skywalking,可查看链路追踪及应用程序性能等
• 集成Sentinel,可有效实现流量控制、熔断降级、系统负载等
• 集成xxl-job定时任务功能,并提供使用示例
更新日志
[hr]
1.重构代码生成器模块,支持灵活配置,动态生成代码,大幅提高开发效率
2.新增菜单导航打开方式,支持浏览器标签页打开
3.新增标签页iframe路由
4.新增报表功能,集成UReport2.0报表
5.新增主子表例子,可参考实现主子表相关业务
6.使用EasyExcel处理Excel,替换之前的EasyPoi
7.修复activiti权限问题
8.修复日期选择,不能清空问题
9.修复工作流令牌错误
10.退出时删除菜单缓存
11.修复renren-api发送post请求异常
12.替换nacos过期的api
13.升级SpringBoot到2.3.4
14.升级SpringCloud到Hoxton.SR8
15.升级Sentinel到1.8.0
16.升级seata到1.3.0
17.升级nacos到1.3.2
授权及演示
[hr]
微服务授权地址: a(https://www.renren.io/cloud)[https://www.renren.io/cloud]
微服务演示地址: a(https://demo.cloud.renren.io/renren-cloud)[https://demo.cloud.renren.io/renren-cloud]
接口文档地址: a(https://demo.cloud.renren.io/renren-cloud-server/doc.html)[https://demo.cloud.renren.io/renren-cloud-server/doc.html]
演示账号:admin 密码:admin
演示效果图
[hr]
img[//cdn.renren.io/4d144202009282314059764.png]
img[//cdn.renren.io/b86ae202009271400389218.png]
img[//cdn.renren.io/3aad3202009271357458529.png]
img[//cdn.renren.io/cfc45201909250958365294.jpg]
img[//cdn.renren.io/1d9d8201909250958489323.jpg]
img[//cdn.renren.io/0bb28201811061300128695.jpg]
配置中心
[hr]
img[//cdn.renren.io/190a4202002271031524688.jpg]
Sentinel
[hr]
img[//cdn.renren.io/1be3720200227103242980.jpg]
SkyWalking
[hr]
img[//cdn.renren.io/be559202002271033019273.jpg]
接口文档
[hr]
img[//cdn.renren.io/c315020200227103357763.jpg]
整体架构图
[hr]
img[//cdn.renren.io/2d2b1202006031510113611.png]
授权及鉴权架构图
[hr]
img[//cdn.renren.io/37f8f201810082318113060.png]