多用户计算和IO密集型SaaS系统及应用方法技术方案

技术编号:20362711 阅读:40 留言:0更新日期:2019-02-16 16:27
本发明专利技术实施例提供了一种多用户计算和IO密集型SaaS系统及应用方法,其中所述SaaS系统包括第一逻辑单元、控制器和第二逻辑单元,第二逻辑单元包括第一计算池单元,第一计算池单元上设置第一服务器和第一用户数据存储单元,第一逻辑单元用于接收第一用户的请求消息,根据所述请求消息获取所述第一用户的UUID以及所述第一用户请求的数据标识;所述控制器用于将第一逻辑单元接收到的请求消息路由给所述确定的第一容器计算单元;第一容器计算单元用于根据所述请求消息中包含的UUID和数据标识向所述第一用户数据存储单元获取所述第一用户的用户数据;所述用户数据存储单元用于将确定的用户数据发送给第一容器计算单元。

【技术实现步骤摘要】
多用户计算和IO密集型SaaS系统及应用方法
本专利技术涉及IO密集型SaaS云服务领域,尤其涉及一种多用户计算和IO密集型SaaS系统及应用方法。
技术介绍
软件即服务(Software-as-a-Service,SaaS)云服务,是用于使得能够对软件功能和数据做隔离以及服务器存储共享部署,为用户提供普遍、方便、按需的软件访问的模型。在数据存储和计算量比较大的人工智能计算和数据检索处理服务领域,当用户规模较大、存在无规律密集访问、单个用户数据容量不确定的应用场景中,一般需要集中在单个大计算量的服务器内完成计算,作为一个项目实施的成本较高。然而为多用户提供云服务的本质是需要弹性的计算降低成本、支持在线伸缩、规避不确定性大的服务请求、规避高可靠故障等需求。而采用传统方法改造应用为SaaS,例如通过统一共享式逻辑处理,数据库分区难以解决计算和IO密集型应用。例如,在目前已经改造的SaaS多用户图像检索业务中,通过在业务逻辑中区分不同用户U1和U2的域名(domain),服务请求依据U1和U2数据特征到数据(Data)对应的图像特征索引中查找给出结果。在这种架构模式下,逻辑能得到极大的计算,共享做到弹性,数据和逻辑分离,逻辑解耦和比较容易。但该种模式存在的问题是如果面向增强现实技术(AugmentedReality,AR)应用的云识别服务,每个用户数据的被检索目标数据都是百万级别,逻辑计算所需加载到内存的数据特征索引数据从数据到逻辑(logic)读取会到达200Mb/s,因此数据和逻辑通过网络传输的模式下无法支持大规模的用户访问。鉴于此,现有技术中对多用户大计算量的数据服务领域,无法有效的解决多用户计算和IO密集型服务。
技术实现思路
本专利技术实施例提供了一种多用户计算和IO密集型SaaS系统及应用方法,解决了在多用户计算和IO密集型应用场景下,多用户的SaaS应用问题。本专利技术实施例提供了一种多用户计算和IO密集型SaaS系统,所述SaaS系统包括第一逻辑单元、控制器和第二逻辑单元,所述第二逻辑单元包括第一计算池单元,所述第一计算池单元上设置第一服务器和第一用户数据存储单元,所述第一服务器上设置第一容器计算单元,其中:所述第一逻辑单元,用于接收第一用户的请求消息,根据所述请求消息获取所述第一用户的UUID以及所述第一用户请求的数据标识,并将所述第一用户的UUID发送给所述控制器;所述控制器,用于根据所述第一用户的UUID确定所述第一用户的第一容器计算单元,并将所述第一逻辑单元接收到的所述第一用户的请求消息路由给所述确定的第一容器计算单元;所述第一容器计算单元,用于接收所述第一逻辑单元发送的请求消息,根据所述请求消息中包含的所述第一用户的UUID和数据标识向所述第一用户数据存储单元获取所述第一用户的用户数据,并将所述第一用户的用户数据返回给所述第一逻辑单元;所述用户数据存储单元,用于存储所述第一用户的用户数据,根据所述第一用户的UUID以及数据标识确定所请求的用户数据,并将所述确定的用户数据发送给所述第一容器计算单元。本专利技术实施例还提供了一种多用户SaaS应用方法,使用前述任一所述的多用户计算和IO密集型SaaS系统,所述SaaS系统包括第一逻辑单元、控制器和第二逻辑单元,所述第二逻辑单元包括第一计算池单元,所述第一计算池单元上设置第一服务器和第一用户数据存储单元,所述第一服务器上设置第一容器计算单元,其中:所述第一逻辑单元接收第一用户的请求消息,根据所述请求消息获取所述第一用户的UUID以及所述第一用户请求的数据标识,并将所述第一用户的UUID发送给所述控制器;所述控制器根据所述第一用户的UUID确定与所述第一用户的第一容器计算单元,并将所述第一逻辑单元接收到的所述第一用户的请求消息路由给所述确定的第一容器计算单元;所述第一容器计算单元接收所述第一逻辑单元发送的请求消息,根据所述请求消息中包含的所述第一用户的UUID和数据标识向所述第一用户数据存储单元获取所述第一用户的用户数据,并将所述第一用户的用户数据返回给所述第一逻辑单元;所述第一用户数据存储单元根据所述第一用户的UUID以及数据标识确定所请求的用户数据,并将所述确定的用户数据发送给所述第一容器计算单元。本专利技术实施例还提供了一种多用户计算和IO密集型SaaS系统,所述SaaS系统包括存储器和处理器,其中:所述存储器,用于存储代码和相关数据;所述处理器,用于执行所述存储器中的代码用以实现前述任一所述的方法步骤本专利技术实所提供的多用户计算和IO密集型SaaS系统及应用方法,所能实现的有益效果如下:本专利技术所提供的SaaS应用系统,能够实现计算及IO密集型应用的SaaS服务。本专利技术所提供的SaaS系统,(1)引入数据分区思想,将不同用户分到不同计算资源池,一个计算池内拥有共享一套存储区域;(2)将用户进行业务服务中所涉及到的共性服务如授权认证、数据预处理、例如图像搜索业务中特征抽取等服务做成小的服务第一逻辑单元;(3)将SaaS服务改造成按需加载内存计算,不用的时候释放资源,计算资源与计算负载正比动态调整,存储与计算分离,更大程度的资源共享和为容器集群;(4)引入开源的Kubernetes帮助调度docker,帮助实现一个稳定调度器以及路由模块的开发。附图说明图1为本专利技术实施例所提供SaaS系统的第一结构示意图;图2为本专利技术实施例所提供的SaaS应用方法流程示意图;图3为本专利技术实施例所提供SaaS系统的第二结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中,第一计算池单元、第二计算池单元、……、第N计算池单元,单独或合称“计算池单元”或者“计算池”;第一服务器、第二服务器、第三服务器、……、第N服务器,单独或合称“服务器”;第一容器计算单元、第二容器计算单元、第三容器计算单元、……、第N容器计算单元,单独或合称“容器计算单元”;第一用户数据存储单元、第二用户数据存储单元、第三用户数据存储单元、……、第N用户数据存储单元,单独或合称“用户数据存储单元”;第一用户、第二用户、……、第N用户,单独或合称“用户”。实施例一:本专利技术实施例提供了一种多用户计算和IO密集型SaaS系统,如图1所示,包括第一逻辑单元1、第二逻辑单元2和控制器3,其中第二逻辑单元包括第一计算池单元21。在一个优选的方案中,第一计算池单元21还包括第一服务器211和第一用户数据存储单元212,第一服务器211上还设置第一容器计算单元2111。在本专利技术实施例中,第一逻辑单元1集成了逻辑(logic)数据特征的提取和排序等算法功能,该第一逻辑单元本文档来自技高网
...

【技术保护点】
1.一种多用户计算和IO密集型SaaS系统,其特征在于:所述SaaS系统包括第一逻辑单元、控制器和第二逻辑单元,所述第二逻辑单元包括第一计算池单元,所述第一计算池单元上设置第一服务器和第一用户数据存储单元,所述第一服务器上设置第一容器计算单元,其中:所述第一逻辑单元,用于接收第一用户的请求消息,根据所述请求消息获取所述第一用户的UUID以及所述第一用户请求的数据标识,并将所述第一用户的UUID发送给所述控制器;所述控制器,用于根据所述第一用户的UUID确定所述第一用户的第一容器计算单元,并将所述第一逻辑单元接收到的所述第一用户的请求消息路由给所述确定的第一容器计算单元;所述第一容器计算单元,用于接收所述第一逻辑单元发送的请求消息,根据所述请求消息中包含的所述第一用户的UUID和数据标识向所述第一用户数据存储单元获取所述第一用户的用户数据,并将所述第一用户的用户数据返回给所述第一逻辑单元;所述用户数据存储单元,用于存储所述第一用户的用户数据,根据所述第一用户的UUID以及数据标识确定所请求的用户数据,并将所述确定的用户数据发送给所述第一容器计算单元。

【技术特征摘要】
1.一种多用户计算和IO密集型SaaS系统,其特征在于:所述SaaS系统包括第一逻辑单元、控制器和第二逻辑单元,所述第二逻辑单元包括第一计算池单元,所述第一计算池单元上设置第一服务器和第一用户数据存储单元,所述第一服务器上设置第一容器计算单元,其中:所述第一逻辑单元,用于接收第一用户的请求消息,根据所述请求消息获取所述第一用户的UUID以及所述第一用户请求的数据标识,并将所述第一用户的UUID发送给所述控制器;所述控制器,用于根据所述第一用户的UUID确定所述第一用户的第一容器计算单元,并将所述第一逻辑单元接收到的所述第一用户的请求消息路由给所述确定的第一容器计算单元;所述第一容器计算单元,用于接收所述第一逻辑单元发送的请求消息,根据所述请求消息中包含的所述第一用户的UUID和数据标识向所述第一用户数据存储单元获取所述第一用户的用户数据,并将所述第一用户的用户数据返回给所述第一逻辑单元;所述用户数据存储单元,用于存储所述第一用户的用户数据,根据所述第一用户的UUID以及数据标识确定所请求的用户数据,并将所述确定的用户数据发送给所述第一容器计算单元。2.根据权利要求1所述的SaaS系统,其特征在于:所述控制器预先在所述SaaS系统中为所述第一用户分配UUID,并为所述第一用户配置第一计算池单元、第一服务器及第一容器计算单元,设置所述第一用户的UUID、第一计算池单元、第一服务器以及第一容器计算单元之间的映射关系;所述SaaS系统为所述第一用户分配对应的第一用户数据存储单元,并将所述第一用户数据存储单元加载至所述第一容器计算单元。3.根据权利要求2所述的SaaS系统,其特征在于:所述控制器根据所述第一用户的UUID,以及预先设置的第一用户的UUID、第一计算池单元、第一服务器以及第一容器计算单元的映射关系,确定与所述第一用户UUID相对应的第一计算池单元、第一服务器和第一容器计算单元。4.根据权利要求2所述的SaaS系统,其特征在于:所述控制器为所述第一用户配置第一计算池单元、第一服务器及第一容器计算单元,具体包括:所述第一用户首次在所述SaaS系统注册时,所述控制器预先根据所述第一用户的UUID定位所述第一用户所在的所述第一计算池单元,在所述第一计算池单元里面查找有剩余计算资源的所述第一服务器,在所述第一服务器中查找有剩余计算资源的所述第一容器计算单元,并在所述第一计算池单元内为所述第一用户分配第一数据存储单元,将所述第一数据存储单元加载至所述第一容器计算单元。5.根据权利要求1所述的SaaS系统,其特征在于:为所述第一用户提供服务的容器计算单元设置在所述第一计算池单元内。6.根据权利要求5所述的SaaS系统,其特征在于:所述控制器检测到为所述第一用户提供服务的第一容器计算单元在策略时间内超过阈值时,所述控制器在所述第一服务器上为所述第一用户分配第二容器计算单元,将所述第二容器计算单元的域名添加至所述第一用户的映射列表上,并将所述第一用户数据存储单元加载到所述第二容器计算单元上。7.根据权利要求5所述的SaaS系统,其特征在于:所述控制器检测到为所述第一用户提供服务的第一服务器在策略时间内超过阈值时,所述控制器为所述第一用户在所述第一计算池单元内选择有剩余计算资源的第二服务器,并在所述第二服务器上为所述第一用户分配第三容器计算单元,将所述第二服务器的域名和所述第三容器计算单元的域名添加至所述第一用户的映射列表上,并将所述第一用户数据存储单元加载到所述第三容器计算单元上。8.根据权利要求5所述的SaaS系统,其特征在于:所述控制器检测到为所述第一用户提供服务的第一服务器的策略时间内低于阈值时,所述控制器删除所述第一用户映射列表中第一服务器的域名。9.根据权利要求5所述的SaaS系统,其特征在于:所述控制器检测到为所述第一用户提供服务的第一容器计算单元的策略时间内低于阈值时,所述控制器删除所述第一用户映射列表中第一容器计算单元的域名。10.根据权利要求8或9所述的SaaS系统,其特征在于:所述控制器通过所述第一用户的UUID无法为所述第一用户选择第一容器计算单元时,则所述控制器根据所述第一用户的UUID定位所述第一用户所在的所述第一计算池单元,在所述第一计算池单元内查找有剩余计算资源的第三服务器,并在所述第三服务器上创建为所述第一用户提供计算服务的第四容器计算单元,将所述第三服务器的域名和所述第四容器计算单元的域名添加至所述第一用户的映射列表上,并将所述第一用户数据存储单元加载到所述第四容器计算单元上。11.根据权利要求1所述的SaaS系统,其特征在于:所述控制器检测到所述第一逻辑单元在策略时间内低于阈值时,减少所述第一逻辑单元使用的计算容器单元数量,所述第一逻辑单元使用的计算容器单元不能为0;或者所述控制器检测到所述第一逻辑单元在策略时间内高于阈值时,增加所述第一逻辑单元使用的计算容器单元数量。12.一种多用户SaaS应用方法,其特征在于,使用如权利要求1至11任一所述的多用户计算和IO密集型SaaS系统,所述Sa...

【专利技术属性】
技术研发人员:尤峰华张小军
申请(专利权)人:视辰信息科技上海有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1