SaaS 系统架构设计经验
SaaS系统最近几年都很火。很多创业公司都在尝试创建企业级别的应用 cRM, HR,销售, Desk SaaS系统。很多SaaS创业公司也拿了大额风投。毕竟SaaS相对传统软件的优势非常明显。
最近一年,有幸架构一个Crm SaaS 系统,上线了几个月来,各方面都比满意。整个系统创建过程,踩了很多坑,收获也比较多。总结一下SaaS系统架构一些特点:
1.分层设计
SaaS 系统架构经验分享知识
SaaS系统分层大概是:
租户识别>应用层>数据访问层>缓存层>数据库
业务代码都是写在应用层。
租户识别可以用spring拦截器实现,然后使用ThreadLocal传递给后端
数据库和缓存层对应用层应该是透明的。程序员在写代码的时候,只关心业务逻辑,不应该担心多租户的问题。
2.数据隔离要透明
SaaS系统说起来很简单,任何系统似乎加个tenant_id(租户id)就变成SaaS系统了。比如原来的用户登录是:
SaaS培训机构管理系统
select username,password from users where email='abc@qq.com'
改成
select username,password from users where email='abc@qq.com' and tenant_id =1;
对于复杂业务的SaaS系统,这样做法非常危险,而且开发效率很低。你想想如果那个程序员写sql时候忘了加 “ and tenant_id =1” . 结果不堪设想。
比较好做法是在数据库访问层对SQL进行改写。
TenantContext.exec("select username,password from users where email='abc@qq.com' ");
在连接池根据TenatnContext改写Sql.
这样做好处是,一来程序猿最多把系统搞down了,也不至于信息串了互相泄露。二来将来做分表分库也很方便,上层应用不用修改。
3. 租户识别方案
比较好做法是通过url识别租户。系统是给租户生成一个随机的三级域名,比如 abc.crm.baidu.com. 如果客户想使用自己的域名,可以在cname到我们生成的三级域名,并在管理系统里面做绑定。
这样一个租户可以有两个域名,访问SaaS,一个随机生成的三级域名,另外一个租户自己的域名.代码里面可以根据过来的域名,判断是那个租户然后初始化TenantContext.
如果不想通过域名来做,也可以通过登录名来判断。这种方式要涉及到租户切换问题。
4. 智能DNS
(以后补充。)
5. 租户管理系统(计费,订购,定制,充值,催缴)
SaaS培训机构管理系统是必须考虑计费系统和租户控制系统。这个系统需要都是独立设计。比如那个租户购买了那些模块,一个月多少钱。租户可以创建最多的用户数。计费到期邮件提醒等功能。
计费方式一般有两种,周期性计费,类似月租方案,和使用量计费,用多少付多少。 周期性计费比较简单。也可以两者结合起来。
6. 定制化开发
SaaS的优势在于一套系统多人使用,似乎和定制化开发有冲突。比如A客户想要A功能,B客户不想要。但定制化开发是无法避免的,比如CRM系统这样复杂的系统,不可能一套系统满足所有公司的要求。定制化开发尽可能分系统,分模块去做。然后通过控制台中配置不同租户订购不同模块,那些模块可以在前端页面上显示。不同的子系统需要分开部署。前端可通过nginx根据url分发,比如 abc.crm.baidu.com/bi/xxx/xx这个地址,就分发到BI子系统。不要尝试OSGI去搞模块化,这个是个大坑。
还有开发和产品,现有需求一定要分析清楚,不要一上线发现后患无穷。新功能尽量做的独立可以配置。
本文标签: 街舞教学
上一篇:西安嘻哈舞的起源是什么?
下一篇:西安爵士舞培训:爵士舞的基本功指的是哪些呢?
街舞资讯热门
- 福清佾舞,入选福建省第五批国家级非遗代表性项目拟推荐名单
- 医护跳天鹅舞送治愈病人出院,中国人自娱自乐的天性藏不住了
- 韩国航班落地威海,167人全部被隔离14天,暂不提升中国入境限制
- 赵奕欢为了红太拼了,穿比基尼跳钢管舞,“马蜂臀”尽显火辣身材
- 《朋友请听好》谢娜独挑“易燃装置”和易烊千玺battle俏皮女团舞
- 你大妈还是你大妈,朝阳大妈的无接触广场舞火了!!
- 关于舞蹈基本功
- 集歌、舞、乐为一体的艺术表现形式——楚国崇巫之风
- 易烊千玺和谢娜PK舞技,大胆挑战女团舞萌坏何炅,谢娜输得好惨
- 农村女孩的追梦路:爱跳就大胆的舞起来吧!
- 平顶山叶县电视台《广场舞秀》方案解读
- 易烊千玺与谢娜pk女团舞,易烊千玺跳得更有女人味,表情亮了
- 大妈自创无接触广场舞“云跳舞”宣传防疫知识
- 五大民族舞蹈的区别,你知道多少
- 广场舞适合每个人
- 体育舞蹈理论基础知识--体育舞蹈发展概况
- 超模AA穿亮钻吊带配镂空喇叭裤,却像是复古夜店舞女,绝美性感
- 外观精致时尚的新一代奔驰GLA于日内瓦车展亮相
- 时尚到底是什么呢?
- 火爆时装周的香芋紫,又飒又仙又好搭,2020年时尚达人必Pick
- 甜美女孩总让人有好感!碎花短连衣裙优雅大气,土妞秒变时尚达人
- 白雪公主Lily Collins放开了,真空穿西装配短裤,时尚性感有魅力
- 占据时尚圈半壁江山的单品,显高又显瘦,短款上衣竟如此火爆?
- Dior春夏高定秀 | 女性的战歌,时尚的崛起
- 16套最值得get的新潮搭配,吸睛感十足,时尚更有范