可拆卸| |SAAS系统的底层架构设计

作者拆解了SaaS系统底层架构的设计,梳理了需求逻辑,供大家参考和研究。

企信宝

SaaS系统的构建过程中,由于目标用户群的业务灵活性发生了变化,许多同事在构建的初始阶段往往忽略了最重要的底层架构设计,在构建系统时,基于公司/市场等各种压力,投入更多的视角和精力来支持业务场景。

但是,当系统支持需求达到某个阶段时,产品视角将被审查到底层架构和公共业务模块。此时,底层重组基本上面临着两难的境地。(下面的句子正是我正在处理的:人们坐在家里,罐子从天上掉下来有多少同事在体验经典语录?)

在以往的SaaS系统架构设计中,我个人喜欢基于办公自动化协同办公的工具SaaS系统的架构模型。在咨询了市场上的许多产品后,我花了两个月的时间来设计底层架构。(在大多数产品同事的概念中,没有这样的东西开发和老板会杀了你的!但你必须用无耻的精神说服他们。经过两个系统的开发过程和运行,验证了该设计方法的通用性。我希望这种设计方法能够得到您的同事的认可,并在您的系统构建过程中起到一定的案例参考作用。

从个人开始时,整个底层功能结构的构建没有将用户权利、人员管理和组织结构放在第一位。但是要实现软件即服务的概念整个系统建设的前提是满足租户的需求,解决租户业务场景中的痛点。所以第一个角度是考虑当租户到来时系统需要做什么。租户如何考虑产品运营

为此将底层划分为下图所示的功能类型,并大致解释了需求逻辑

企信宝

1,注册链接

面向用户的注册和

SaaS系统的传统注册策略的区别在于字段的通用性和字段的多种变化。

例如,现在有一个企业操作工具的租户注册。要求用户输入用户名、手机号码、图形验证码、短信验证码、密码和二次确认密码等数据。那么这些字段信息在传统系统中的应用主要是查询注册用户的用户标识相关数据。数据维度大多被映射到具有外部键的多个数据表。其他数据表中没有任何变化会影响这部分数据的保留。

在基于租户模式的SaaS系统中,上述数据不仅用于传统的数据查询和采集更多的在于字段手册

中多个业务数据表之间的分离和耦合

2,低概率异常场景

租户注册手机号码的丢失/注销可能影响整个操作系统的应用。(对于这种低概率的业务事件,如果在系统的底层设计中不考虑输入,基于SaaS安全承诺,我们不能查询租户登录密码。)为了避免这种实现,从产品的角度来看,租户注册的手机号码是否可以被视为账号,并将账号嵌入到受秘密保护的手机的概念中

租户的手机号码不允许登录系统时,我们可以协助租户更换保密手机。其次,可以训练租户在系统中保持灵活和安全。

三、承租人登记功能要求详细说明

个人电脑端帐户注册被视为已注册的租户,即根机构,而被视为已注册企业租户的人则担任管理角色。只有一个人是管理员当移动终端注册时,它不会向根机构注册,而将被视为用户从C终端进入企业系统的流程。可以由根组织邀请加入租户,或者主动申请加入租户当

被注册时,字段描述和逻辑事项的细节如下:

1年。账号

必需,11位移动电话号码,号码段验证错误提示[请输入11个未注册的手机号码,]

(1)如果您点击[确认注册]来验证您的账户已经注册,请给[一个提醒请输入11个未注册的手机号码]到提醒定时器界面3s,并自动隐藏[注意:短信验证码将由* * *网]

承担

(2)企业注册的手机号码遵循两种逻辑:

手机号码视为账号; 将手机号码视为联系方式——以防出现手机丢失、注册企业租户手机号码注销等不可控因素。

(3)注册的账户允许以:账户+密码的形式登录并且注册的移动电话号码被允许被视为联系电话号码被改变(个人信息详情页面-联系电话号码)。更换时,提示是:手机号码是账号安全手机,请确认是自己操作的,并输入手机验证码

2年。企业名称

是必需的。输入企业名称后,检查企业名称是否已注册。相应的错误消息是:企业已注册。请更改企业名称并重新注册。该消息将在3s后自动隐藏

注意:输入企业名称后,该字段将自动存储在[企业信息-企业名称]中,注册时输入的名称将显示在系统的左上角。

此字段的逻辑是

注册

(1)时,企业标识下的企业信息详细信息表和该字段的数据字段是插入操作。在企业信息中,编辑完该字段的名称后,更新数据完成除非企业租户的管理员角色已注册,并且企业帐户已申请取消,否则此时将执行逻辑删除[防止企业人员误操作因此,在注册时,只有管理员角色下的成员有此权限,管理员只有一个人,以控制风险]

(2)企业注册时,不需要OCR营业执照证明。注册后,根据租户的付款明细,打开的功能模块强制邀请企业营业执照认证。此外,企业新报/眼检被要求进行认证评审,[企业认证评审接口费由金友网免费承担]

3年。验证码

的有效期为60秒,重复采集间隔为60秒。在输入框中输入错误验证码并提示:请输入正确的验证码,否则请重新获取验证码

短信发送的验证码模板的内容,例如:金友网欢迎您的加入,您的验证码是56554 [6位数]有效期为60秒,请注意保密。

4年。密码

6-20任何纯数字/纯英语/数字英语组合[错误提示:请输入6-20位数字密码]

密码确认:两个密码条目需要一致如果没有一致的提醒,[请保持2个密码一致]

5年。勾选[我同意服务条款],不勾选

请检查服务条款单击服务条款,您将进入“服务条款详细信息滚动”页面-注册条款详细信息页面。项目经理将首先提供自己创建的文档,然后由法律事务部提供服务条款注册的详细协议。

6年。点击确认注册后,前端给出加载界面。这个阶段是将数据传输到后端

的过程 在

加载过程中,由于[网络断开、接口异常、服务器崩溃等不可控因素,注册失败,]给出404错误报告界面——加载界面和404错误报告界面,请界面设计/前端提供

7年。服务协议条款显示

注册企业租户账户后,进入添加团队/申请加入团队业务功能模块

前提:考虑租户因业务原因申请加入其他根机构/创建根机构[,当前租户账户所属的根机构数量+独立创建的根机构数量不超过6个,即检查一个账户是否属于6个根机构范围]

如图:创建或添加根机制接口

点击:创建团队进入创建团队详细信息页面,如图

所示

联系号码是注册时使用的手机号码。前端可以自己拉动它,并将它填充到输入框中。

团队的名称被注册时,填写的企业名称就足够了。前端会自动拉出。回填至输入框

4。

用于场景考虑

如果租户不想使用注册所需的手机号码/租户不方便使用该号码

用户可以点击[*联系电话]输入框输入新的手机号码,用户可以点击团队名称输入新的团队名称单击创建团队时以下内容需要验证

1年。新输入的手机号码属于6个团队吗?

如果

不属于:可以使用,并且注册时使用的手机号码存储在个人信息-联系信息字段中,则uodata将成为新的手机号码触发节点是创建团队的最后一步,即在加载成功时触发。

如果

属于:在输入框中,提醒[该手机号码已添加到6个团队,请将手机号码]更改为3s,自动隐藏,并清空新输入的手机号码。输入框是

,需要检查输入的是否是11位数字的手机号码,如非手机号码:提示[请输入11位数字正确的手机号码,计时1.5s,自动隐藏]

2年。输入的团队名称是否已被使用?

如果使用

:在输入框中给出提醒[:团队名称已被使用,请尝试更改团队名称,]计时3s,自动隐藏,并清除新输入的手机号码。输入框为

如果不使用

:初始注册时输入的企业名称存储在企业信息中-企业名称用于更新数据操作,触发节点用于创建团队的最后一个操作,即加载loding成功时触发

3年。当输入完成时,联系信息和团队名称查询被触发,当输入框改变时,

被触发

如图所示:点击创建一个团队,loding的加载界面和流程。

点击[创建团队]进入创建和加载页面。在加载过程中,各种因素可能导致创建失败(例如,服务器此时崩溃,以及其他未知因素)。如果创建失败,您将跳转到创建失败提示页面和创建失败报告404错误报告界面。

404接口修复错误警告:柚君丢失,请重新创建此时,在数据中,个人信息-联系电话号码和企业信息-企业名称字段执行更新数据操作。并记录以前注册的电话号码和姓名

在创建

之后,[成功创建的当前页面的提示]被给予1.5秒的时间,该时间被自动隐藏。隐藏后,进入初始化团队账户页面,暂时不做浮动层指令。前端是保留的,数据库记录了此时对应账号的企业标识。团队名称

对应手机号码

注册企业租户账号后申请加入团队业务功能模块

如图:点击申请加入团队进入本页面。

输入框中输入用户需要加入的根机构的名称

场景:输入的团队名称已添加到场景中,给出错误提示

输入的团队名称在系统中没有名称,会给出一个错误提示和

在毫无结果的搜索场景下

的信息是“[没有团队”与您的搜索词相似,您可以尝试另一个名字]

单击搜索输入负载搜索的loding,最大值为5秒的负载,404超时错误报告界面,

搜索结果显示界面,如图:

所示

①结果以表格的形式呈现。该表单最多显示5行,排序不规则,翻页时显示5个结果/页。

表格字段:团队名称+团队联系人[即租户个人中心-昵称字段]

机构搜索范围:数据库全球搜索内容组合[包括字符串]

②点击其中一个团队申请加入,并交互跳转到页面。

注释输入框长度限制:50文本和注释输入。点击“确定”向根组织管理员发送消息进行添加:消息内容:[人力资源姓名]您好,[员工姓名]申请加入[申请加入时间团队],请处理

5密码检索功能要求

账号:11位手机号码验证[提示:请输入11位手机号码,定时器3s,自动隐藏,]

如果移动电话号码未注册,[移动电话号码未注册-计时器3s,自动隐藏]

验证码:有效期60秒,重复采集间隔60秒,输入错误验证码,输入框提示:请输入正确的验证码,否则请重新采集验证码

短信发送的验证码模板内容,如:jinyou.com提示您,当您检索到的验证码为565641[六位数]验证码模板配置时,有效期设置为5分钟,防止用户无聊随意申请验证码,这将增加我们企业验证码的成本。

密码:6-20位任意纯数字/纯英语/数字英语组合[错误提示:请输入6-20位密码]

密码确认:两个密码条目需要一致如果没有一致的提醒,[请保持2个密码一致]

6年。登录要求描述文档

账号输入:11位手机号码,输入错误提示[请输入11位注册手机号码]

密码输入错误提示:输入正确的密码

请记住,密码的有效期为7天,7天内无需再次输入密码

即可登录。 在

登录之前,请注意以下场景无法登录系统:

帐户未注册-提醒:您尚未注册帐户,请注册并再次登录[提醒计时1.5秒,自动隐藏] 账号被后台管理员黑了-提醒:您暂时无法登录系统账号,请联系客服人员客户服务号码是400-0000-000[:当这个号码系统被租户正式投入使用时,它将被真正的手动客服电话/机器人电话所取代,提醒将被固定在登录页面上不要隐藏时间】 帐号已经注册,但它的帐号不是admin并且该帐户未启用[您的帐户尚未激活,请联系企业管理员修改帐户状态–不显示企业租户管理员的联系信息出于隐私考虑] 租户/员工帐户已禁用[:您的帐户目前被禁用,请联系管理员修正了提示页面。] 租户/员工角色被禁用[您当前所属的角色已被管理员禁用,请与管理员联系] 租户/员工部门被禁用[登录进入系统后,只显示菜单页签,右侧提示:您当前部门处于停用状态,请联系系统管理员]

在进入系统之前需要跳转到选择团队页面。

第三方扫描码登录可以合理安排到未来的3/4周期当以第三方身份登录时,请架构师提前查询相应平台的开放API。

大家都在看

相关专题