《灯灯》多租户快速开发平台 4.14.2 发布,专注于多租户解决方案


4.14.2 版本更新详情:

近期在基于 4.14.x 录制视频,新功能开发和版本发布速度会延后,4.14.x 系列主要以优化功能和修复 bug 为主。

build

  • tencentcloud-sdk-java.version>3.1.831

feat

  • (lamp-base): 消息发送 是否成功由实现类自行处理
  • (lamp-base): 保存和修改消息模板时,解析title和content字段中的${}占位符参数,并存入param参数
  • (lamp-web-pro): 消息模板页面,新增测试发送功能

refactor

  • (lamp-web-pro): vxe table 组件支持夜间模式
  • (lamp-web-pro): 消息模板的新增和修改页面 表单校验 交付优化

fix

  • (lamp-generator): 代码生成器批量操作导入表结构的时候报错
  • (lamp-base): 消息调用第三方接口发送后,各自的实现类判断调用是否成功,并根据返回code修改 消息和消息日志表的"执行状态"
  • (lamp-log-stater): 日志归档策略中有多个 %d 时,需要使用aux来标记
  • (lamp-system): 租户已经过了有效期,租户管理员还可以继续登录
  • (lamp-web-pro): 拖拽和取消勾选表格操作列时,若字段是数组格式,会导致字段隐藏

 

 

 

《灯灯》中后台快速开发平台

lamp 项目组成

1) 工具集 ( lamp-util 项目必备,其他 2 个可选)

项目 gitee github 备注
工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot 项目都依赖它
代码生成器 lamp-generator lamp-generator 给开发人员使用
定时调度器 lamp-job lamp-job 尚未开发

2) 后端 (下面 2 个项目功能一致,任选其一即可)

项目 gitee github 备注
微服务版 lamp-cloud lamp-cloud SpringCloud 版
单体版 lamp-boot lamp-boot SpringBoot 版 (和 lamp-cloud 功能基本一致)
示例项目 lamp-samples lamp-samples 微服务版的示例功能

3) 前端 (下面 3 个项目功能一致,任选其一即可)

项目 gitee github 备注
租户后台 lamp-web lamp-web 基于 vue-admin-element 开发 (vue2.x)
租户后台 (强烈推荐!👏👏👏) lamp-web-plus lamp-web-plus 基于 vue-vben-admin 开发 (vue3.x)

如果你非要说 lamp 是 Linux+Apache+MySQL+PHP,那就算是吧,毕竟 PHP 是世界上最好的语言,我也希望此项目成为世界上最好的后台框架!😈😈😈

lamp-cloud 简介

lamp-cloud 的前身是 zuihou-admin-cloud,从 3.0.0 版本开始,改名为 lamp-cloud,它是 lamp 项目的其中一员。

lamp-cloud 基于 jdk11/jdk8 + SpringCloud + SpringCloudAlibaba+ SpringBoot 的微服务快速开发平台,其中的可配置的 SaaS 功能尤其闪耀, 具备 RBAC 功能、网关统一鉴权、Xss 防跨站攻击、自动代码生成、多种存储系统、分布式事务、分布式定时任务等多个模块,支持多业务系统并行开发, 支持多服务并行开发,可以作为后端服务的开发脚手架。代码简洁,注释齐全,架构清晰,非常适合学习和企业作为基础框架使用。

核心技术采用 Spring Cloud Alibaba、SpringBoot、Mybatis、Seata、Sentinel、RabbitMQ、FastDFS/MinIO、SkyWalking 等主要框架和中间件。 希望能努力打造一套从 JavaWeb基础框架 - 分布式微服务架构 - 持续集成 - 系统监测 的解决方案。本项目旨在实现基础能力,不涉及具体业务。

lamp 租户模式介绍

本项目可以通过配置,轻松切换项目的 多租户实现方式

租户模式 描述 优点 缺点
NONE (非租户模式) 没有租户 简单、适合独立系统 缺少租户系统的优点
COLUMN (字段模式) 租户共用一个数据库,在业务表中增加字段来区分 简单、不复杂、开发无感知 数据隔离性差、安全性差、数据备份和恢复困难、
SCHEMA (独立数据库) 每个租户独立一个 数据库 (schema),执行 sql 时,动态在表名前增加 schema 简单、开发无感知、数据隔离性好 配置文件中必须配置数据库的 root 账号、不支持复杂 sql 和 sql 嵌套自定义函数
DATASOURCE (独立数据源) 每个租户独立一个数据源,执行代码时,动态切换数据源 可独立部署数据库,数据隔离性好、扩展性高、故障影响小 相对复杂、开发需要注意切换数据源时的事务问题、需要较多的数据库
DATASOURCE_COLUMN (独立数据源 + 字段模式) 每个租户独立一个 数据库 (数据源),执行代码时,动态切换数据源,在动态拼接 子租户 id 二次隔离 可独立部署数据库,数据隔离性好、扩展性高、故障影响小、支持大租户小门店形式 相对复杂、开发需要注意切换数据源时的事务问题、需要较多的数据库

lamp 项目演示地址

  • https://tangyh.top

ps: 演示环境中内置租户没有写入权限,若要在演示环境测试增删改,请使用 lamp_pt 账号查询租户管理员账号后,登录新租户测试

lamp-cloud 技术栈 / 版本介绍:

  • 所涉及的相关的技术有:
    • JSON 序列化:Jackson
    • 消息队列:RabbitMQ
    • 缓存:Redis
    • 数据库: MySQL 5.7.9 或者 MySQL 8.0.19
    • 定时器:采用 xxl-jobs 项目进行二次改造
    • 前端:vue + element-ui
    • 持久层框架: Mybatis-plus
    • 代码生成器:基于 Mybatis-plus-generator 自定义
    • API 网关:Gateway/zuul
    • 服务注册 & 发现和配置中心: Nacos
    • 服务消费:OpenFeign
    • 负载均衡:Ribbon
    • 服务熔断:Hystrix
    • 项目构建:Maven
    • 分布式事务: seata
    • 分布式系统的流量防卫兵: Sentinel
    • 监控: spring-boot-admin
    • 链路调用跟踪:SkyWalking
    • 文件服务器:FastDFS 5.0.5 / 阿里云 OSS / 本地存储 / MinIO
    • Nginx
  • 部署方面:
    • 服务器:CentOS
    • Jenkins
    • Docker
    • Kubernetes

相關推薦

2024-06-06

 SpringCloud、 SpringBoot 开发的微服务中后台快速开发平台,支持 jdk17、jdk11和jdk8,专注于多租户 (SaaS 架构) 解决方案,亦可作为普通项目(非 SaaS 架构)的基础开发框架使用,目前已实现 数据库隔离、字段隔离&

2024-06-28

 SpringCloud、 SpringBoot 开发的微服务中后台快速开发平台,支持 jdk17、jdk11和jdk8,专注于多租户 (SaaS 架构) 解决方案,亦可作为普通项目(非 SaaS 架构)的基础开发框架使用,目前已实现 数据库隔离、字段隔离&

2024-10-17

 SpringCloud、 SpringBoot 开发的微服务中后台快速开发平台,支持 jdk17、jdk11和jdk8,专注于多租户 (SaaS 架构) 解决方案,亦可作为普通项目(非 SaaS 架构)的基础开发框架使用,目前已实现 数据库隔离、字段隔离&

2024-09-28

 SpringCloud、 SpringBoot 开发的微服务中后台快速开发平台,支持 jdk17、jdk11和jdk8,专注于多租户 (SaaS 架构) 解决方案,亦可作为普通项目(非 SaaS 架构)的基础开发框架使用,目前已实现 数据库隔离、字段隔离&

2022-08-16

2: https://boot.tangyh.top/lamp-web/ 《灯灯》中后台快速开发平台 如果你非要说 lamp 是 Linux+Apache+MySQL+PHP,那就算是吧,毕竟 PHP 是世界上最好的语言,我也希望此项目成为世界上最好的后台框架!😈😈😈 lamp-cloud 基

2024-01-17

,切换应用2级菜单没有清空问题 《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2024-03-05

r.config.js 减少ide警告     《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2024-04-04

据权限不控制应用id     《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2023-12-29

性标记的菜单,导致切换后报404 《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2023-09-09

,同时清理用户的所有缓存   《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2023-01-18

0 spring boot 3.0.1     《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2023-12-08

性字典,无法回显默认字典   《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2022-06-07

护页面可正常显示资源类型   《灯灯》中后台快速开发平台 lamp 项目组成 1) 工具集 ( lamp-util 项目必备,其他 2 个可选) 项目 gitee github 备注 工具集 lamp-util lamp-util 业务无关的工具集,cloud 和 boot

2023-11-05

设计 整体设计优化 bugfix 更多详情 MT-AUTH 是一款多租户权限管理系统,包含用户管理与 API 路由、共享、鉴权、缓存、跨域、安全防护等功能 应用场景 对于个人开发者,您可以: 无需从零构建用户相关功能,例如: