SAAS平台中数据库配置及访问方法与流程

文档序号:31784785发布日期:2022-10-12 12:35阅读:452来源:国知局
SAAS平台中数据库配置及访问方法与流程
saas平台中数据库配置及访问方法
技术领域
1.本发明涉及数据库配置领域,特别是一种saas平台中数据库配置及访问方法。


背景技术:

2.saas平台数据库中存储海量数据,在日常访问和存储数据时,访问速度慢查询效率低下,单个数据库服务器,用户量在一直增长的过程中对数据库服务器造成的压力过大,存在宕机的可能性,同时因为用户量时刻在增长数据也一直增长,数据存储量可能会达到单个数据库存储的极限。
3.因为数据库存储的数据量大,平台在访问的过程中,对数据库进行的读写操作效率低下,同时因为saas平台使用用户量大并发量高,对服务器的硬件要求也比较严格。


技术实现要素:

4.本发明的目的在于提供一种saas平台中数据库配置及访问方法,解决现有saas平台中数据库因为用户量的持续增加,数据库服务器压力过大的问题。
5.为解决上述的技术问题,本发明采用以下技术方案:一种saas平台中数据库配置及访问方法,包括如下步骤:a、先将平台数据库根据业务进行拆分主要拆分为:配置中心库、配置库和业务库;b、拆分完成后用户根据域名访问平台,访问平台时,平台根据域名在缓存中查找用户需要访问的对应库,如缓存中没有记录则到配置中心库中进行查找,查找后把结果存放到缓存中,同时访问配置对应的数据库。
6.在平台中配置中心库只有一个,根据不同的租户会配置不同的配置库和不同的业务库,会跟进租户内预估使用用户量来进行评估配置,如50万以上用户量的租户使用单独一个业务库十个50万以上用户量的租户使用一个配置,在saas平台通过配置进行分库操作,可以解决数据库服务器的i/o能力限制,增加可扩展性。
7.作为本发明的进一步优选,所述步骤a中的配置中心库关联有主数据库和从数据库,所述主数据库和从数据库采用读写分离配置,平台中对数据库操作的脚本配置在数据配置中心库中的sql脚本表中,平台会跟进配置的操作脚本名称到缓存中查找具体才操作语句,如缓存中没有找到会到配置中心库中的sql脚本表中进行查询,并保存在缓存中并对数据库进行访问,操作的脚本类型为默认default则脚本读操作访问从数据库,写操作访问主数据库,操作的脚本类型为主master则访问主数据库,操作的脚本类型为从slave则访问从数据库。
8.采用读写分离配置,这样当主数据库发生宕机了时可启用从数据库,用于故障切换,有效解决数据库宕机对平台造成的影响,可以使用“热备份”,可以有效解决数据丢失的问题,避免影响平台业务和用户使用,可以采用读写分离主服务器可以只用于写操作,从服务器只用于读取,用于查询服务,读写分离可以减少数据库压力,提高性能,同时为解决主从同步引起的数据延迟问题,通过配置在数据时效性要求没有那么高的场景下采用读取从库数据,在写了之后立马就要保证可以查到的业务场景,采用强制读主库的方式,这样就可
以保证读到数据,针对时效不高的数据通过读写分离缓解数据库压力,最大限度的提高saas平台中读取数据的速度和并发量。
9.作为本发明的进一步优选,如管理员改变sql脚本配置内容,在改变后会清空缓存信息。
10.作为本发明的进一步优选,所述步骤a中的配置中心库主要存储分库配置信息、kv配置信息、服务配置信息、sql脚本及sql脚本访问配置信息。
11.作为本发明的进一步优选,所述步骤a中的配置库主要存储租户初始化脚本、元数据、租户自定义元数据信息、菜单、租户自定义菜单、常量、用户基本信息及相关授权。
12.作为本发明的进一步优选,所述步骤a中的业务库主要存储平台基础设置、学生信息、教师信息、学生学习产生的相关数据、学生考试流程相关数据、学生毕业流程相关数据。
13.作为本发明的进一步优选,所述步骤b中如管理员改变配置中心中配置信息,在改变后会清空缓存信息,方便用户再次进入时使用的是最新配置信息。
14.与现有技术相比,本发明至少能达到以下有益效果中的一项:1、在平台中配置中心库只有一个,根据不同的租户会配置不同的配置库和不同的业务库,会跟进租户内预估使用用户量来进行评估配置,如50万以上用户量的租户使用单独一个业务库十个50万以上用户量的租户使用一个配置,在saas平台通过配置进行分库操作,可以解决数据库服务器的i/o能力限制,增加可扩展性。。
15.2、采用读写分离配置,这样当主数据库发生宕机了时可启用从数据库,用于故障切换,有效解决数据库宕机对平台造成的影响,可以使用“热备份”,可以有效解决数据丢失的问题,避免影响平台业务和用户使用,可以采用读写分离主服务器可以只用于写操作,从服务器只用于读取,用于查询服务,读写分离可以减少数据库压力,提高性能,同时为解决主从同步引起的数据延迟问题,通过配置在数据时效性要求没有那么高的场景下采用读取从库数据,在写了之后立马就要保证可以查到的业务场景,采用强制读主库的方式,这样就可以保证读到数据,针对时效不高的数据通过读写分离缓解数据库压力,最大限度的提高saas平台中读取数据的速度和并发量。
16.附图说明
17.图1 为本发明saas平台中数据库分库示意图。
18.图2为本发明数据库主从读写配置示意图。
19.具体实施方式
20.为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。通常在此处附图中描述和示出的本发明实施方式的组件可以以各种不同的配置来布置和设计。
21.因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。基于本发明中的实施方式,本领
域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
22.需要说明的是,在不冲突的情况下,本发明中的实施方式及实施方式中的特征可以相互组合。
23.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
24.在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,或者是本领域技术人员惯常理解的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
25.在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
26.具体实施例1:一种saas平台中数据库配置及访问方法,包括如下步骤:a、先将平台数据库根据业务进行拆分主要拆分为:配置中心库、配置库和业务库;b、拆分完成后用户根据域名访问平台,访问平台时,平台根据域名在缓存中查找用户需要访问的对应库,如缓存中没有记录则到配置中心库中进行查找,查找后把结果存放到缓存中,同时访问配置对应的数据库。
27.在平台中配置中心库只有一个,根据不同的租户会配置不同的配置库和不同的业务库,会跟进租户内预估使用用户量来进行评估配置,如50万以上用户量的租户使用单独一个业务库十个50万以上用户量的租户使用一个配置,在saas平台通过配置进行分库操作,可以解决数据库服务器的i/o能力限制,增加可扩展性。
28.具体实施例2:本实施例是在具体实施例1的基础上对步骤a进行了进一步的说明,所述步骤a中的配置中心库关联有主数据库和从数据库,所述主数据库和从数据库采用读写分离配置,平台中对数据库操作的脚本配置在数据配置中心库中的sql脚本表中,平台会跟进配置的操作脚本名称到缓存中查找具体才操作语句,如缓存中没有找到会到配置中心库中的sql脚本表中进行查询,并保存在缓存中并对数据库进行访问,操作的脚本类型为默认default则脚本读操作访问从数据库,写操作访问主数据库,操作的脚本类型为主master则访问主数据库,操作的脚本类型为从slave则访问从数据库。
29.采用读写分离配置,这样当主数据库发生宕机了时可启用从数据库,用于故障切换,有效解决数据库宕机对平台造成的影响,可以使用“热备份”,可以有效解决数据丢失的问题,避免影响平台业务和用户使用,可以采用读写分离主服务器可以只用于写操作,从服务器只用于读取,用于查询服务,读写分离可以减少数据库压力,提高性能,同时为解决主从同步引起的数据延迟问题,通过配置在数据时效性要求没有那么高的场景下采用读取从
库数据,在写了之后立马就要保证可以查到的业务场景,采用强制读主库的方式,这样就可以保证读到数据,针对时效不高的数据通过读写分离缓解数据库压力,最大限度的提高saas平台中读取数据的速度和并发量具体实施例3:本实施例是在具体实施例2的基础上对管理员改变sql脚本配置内容进行了进一步的说明,如管理员改变sql脚本配置内容,在改变后会清空缓存信息。
30.具体实施例4:本实施例是在具体实施例1的基础上对步骤a进行了进一步的说明,所述步骤a中的配置中心库主要存储分库配置信息、kv配置信息、服务配置信息、sql脚本及sql脚本访问配置信息。
31.具体实施例5:本实施例是在具体实施例1的基础上对步骤a进行了进一步的说明,所述步骤a中的配置库主要存储租户初始化脚本、元数据、租户自定义元数据信息、菜单、租户自定义菜单、常量、用户基本信息及相关授权。
32.具体实施例6:本实施例是在具体实施例1的基础上对步骤a进行了进一步的说明,所述步骤a中的业务库主要存储平台基础设置、学生信息、教师信息、学生学习产生的相关数据、学生考试流程相关数据、学生毕业流程相关数据。
33.具体实施例7:本实施例是在具体实施例1的基础上对步骤b进行了进一步的说明,所述步骤b中如管理员改变配置中心中配置信息,在改变后会清空缓存信息,方便用户再次进入时使用的是最新配置信息。
34.尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1