伙伴云客服论坛»论坛 S区 S产品资讯 查看内容

0 评论

0 收藏

分享

SaaS版仓储开发纪录

SaaS版仓储开发纪录

    概述技术选型实现思路难点处置方案


概述

最近公司需要开发一个SaaS版的仓库系统,因为之前没有SaaS系统的开发经历在网上找了大量的关于SaaS的资料,SaaS系统最关键点就是数据隔离,常见的数据隔离方法有同库同表通个租户ID来区分,分库隔离;同库同表优点是使用的资源较少,但出来的数据杂乱切难于修改维护;分库隔离使用资源比较多,但数据隔离上也是比较好的。因为公司有自己的云主机资源比较充足所以我们采用的分库隔离的方法。

技术选型

在技术上前端使用的是Vue+Element,后端使用SpingBoot+MyBatis;
框架使用若依 ruoyi.vip

实现思路

因为是采用分库形式,所以在登陆时采用填写公司名来识别租户的数据库;在租户注册并支付后执行sql的脚本实现建立租户的库与表。业务逻辑通过jwt+redis获取用户的Database Name定位数据库停止逻辑操作

难点

    登陆识别注册建库业务逻辑数据定位Database 迭代更新数据库备份购置续费

处置方案

    登陆识别有2种方式:一种是以公司为主体;一种是以用户为主体;
    1)公司为主体的需要在登陆时需要区识别对应的Database;
    2)用户为主体的则有2种方式识别:1、用户自己创建公司;2、用户参与已创建公司创建完公司执行sql脚本创建对应数据库数据定位主要是通过redis+token保管对应Database Name,当用户需要停止数据交互时则通过redis+token获取Database Name执行对应Database的数据;Database 迭代更新则需要通过写脚本获取全部创建的Database Name并执行更新语句数据库备份采用了crontab+mysqldump在每天11:40分停止备份购置续费是针对创建的公司的,通过选择购置天数停止记录在登陆时做验证

回复

举报 使用道具

相关帖子
全部回复
暂无回帖,快来参与回复吧
本版积分规则 高级模式
B Color Image Link Quote Code Smilies

萌哒哒
注册会员
主题 19
回复 13
粉丝 0
|网站地图
快速回复 返回顶部 返回列表