一种平台即服务实现方法及装置制造方法

文档序号:6517015阅读:180来源:国知局
一种平台即服务实现方法及装置制造方法
【专利摘要】本发明公开了一种平台即服务PaaS实现方法及装置,所述方法包括:数据库PaaS服务处理引擎的池服务处理器通过对外的数据库服务接口获取用户服务请求;所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块;所述资源池调度模块根据获取到的所述处理任务调度各数据库连接池,并产生处理结果;所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果。本发明把多个关系型数据库产品及其数据库实例等部署为一个数据库资源池,并将其作为平台使用,使得数据库资源池具备PaaS平台的各种特性,如多租户、资源共享、网络访问、资源弹性扩展等。
【专利说明】—种平台即服务实现方法及装置
【技术领域】
[0001]本发明涉及计算机信息【技术领域】,具体涉及PaaS平台服务领域,尤其涉及一种平台即服务(PaaS)实现方法及装置。
【背景技术】
[0002]随着计算机信息技术的飞速发展,云计算技术及理念的深入应用,云计算在实现服务的可用性、处理能力的可扩展性等方面的优势越来越大。云计算(CloudComputing)是分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。它提供了一个全新的互联网商业服务模型,即用户可以通过网络以按需、易扩展的方式租用所需的服务。
[0003]PaaS (Platform as a Service,平台即服务)是一种软件架构和商业模式,它将原本封闭、彼此独立、并分散部署的应用纳入到一个平台上,并通过这个平台为用户提供随需应变的租赁服务,让用户可以根据自己的需要自由组合、编排各种应用服务,并通过网络立即开通这些经过编排并且适合自己需求的应用服务。PaaS应用可以通过传统的桌面计算机访问,也可以通过其他终端访问,如手机。PaaS并不局限于互联网上的公共服务和应用,它同样可以部署在企业内部,形成企业内部的PaaS环境,让企业内部各个分支机构通过PaaS的方式编排并开通适合自己的应用,而无需在每个分支机构都进行独立部署。
[0004]在现有的PaaS平台中,一般是把软件的运行时环境作为服务对外提供,或者是把软件的开发环境作为服务对外提供,但还未涉及到把数据库构建为数据库资源池,并把该数据库资源池作为PaaS平台服务的技术。

【发明内容】

[0005]有鉴于此,本发明实施例提供一种平台即服务实现方法及装置,来解决以上【背景技术】部分提到的技术问题。
[0006]第一方面,本发明实施例提供了一种平台即服务实现方法,所述方法包括:
[0007]数据库PaaS服务处理引擎的池服务处理器通过对外的数据库服务接口获取用户服务请求;
[0008]所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块;
[0009]所述资源池调度模块根据获取到的所述处理任务调度各数据库连接池,并产生处理结果,其中,数据库连接池为根据各数据库实例和/或数据库实例集群的实例信息构建,数据库实例为根据数据库产品配置,且数据库产品、数据库实例和/或数据库实例集群存储在数据库资源池中;
[0010]所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果。
[0011]进一步地,所述方法还包括:所述数据库PaaS处理器的数据库产品管理模块管理所述数据库产品的注册、更新和删除;所述数据库PaaS处理器的数据库实例管理模块对所述数据库实例进行注册、发布、停用和回收;所述数据库PaaS处理器的数据库实例集群管理模块对所述数据库实例集群进行注册、发布、停用和回收;所述数据库PaaS处理器的权限管理模块根据用户的等级对所述数据库连接池的调度进行权限管理。
[0012]进一步地,还包括:所述数据库PaaS处理器的数据库实例管理模块根据数据库资源池中数据库产品的设定特征,自动为所述数据库产品进行参数配置,形成数据库实例。
[0013]进一步地,所述方法还包括:所述数据库PaaS服务处理引擎的池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
[0014]进一步地,所述池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布,包括:池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供的服务进行定义,并将定义的服务进行封装,通过对外的数据库服务接口发布给用户。
[0015]进一步地,所述封装的服务包括web服务、Java API或Restful API。
[0016]进一步地,所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块具体包括:所述池服务处理器的服务器监听模块接收用户服务请求;所述池服务处理器的服务器模块根据服务类型对所述用户服务请求进行解析,并从所述池服务工厂中获取所述用户服务请求的服务定义;所述池服务处理器的请求分析模块根据所述服务定义产生处理任务,所述池服务处理器的服务器请求分析模块将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块。
[0017]进一步地,所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果具体包括:所述池服务处理器的结果集封装模块获取所述处理结果,将所述处理结果集合封装;所述池服务处理器的结果集封装模块通过所述数据库服务接口向用户返回处理结果。
[0018]第二方面,本发明实施例还提供了一种平台即服务实现装置,所述装置包括数据库资源池、数据库PaaS处理器和数据库PaaS服务处理弓I擎和池服务工厂,所述数据库PaaS服务处理引擎包括池服务处理器,所述数据库PaaS处理器包括资源池调度模块、数据库实例管理模块和数据库实例集群管理模块,其中:
[0019]所述数据库资源池,用于存储数据库产品、数据库实例和/或数据库实例集群,其中,数据库实例为根据数据库产品配置;
[0020]所述池服务处理器,用于通过对外的数据库服务接口获取用户服务请求,根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块,并获取处理结果,通过所述数据库服务接口向用户返回处理结果;
[0021]所述资源池调度模块,用于根据获取到的所述处理任务调度各数据库连接池,并产生处理结果;
[0022]所述数据库实例管理模块,用于根据各数据库实例的实例信息构建数据库实例的数据库连接池,并将所述数据库连接池提供给所述资源池调度模块进行调度管理;[0023]所述数据库实例集群管理模块,用于根据各数据库实例集群的实例信息构建数据库实例集群的数据库连接池,并将所述数据库连接池提供给所述资源池调度模块进行调度
管理;
[0024]所述池服务工厂,用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
[0025]进一步地,所述平台即服务实现装置的数据库PaaS处理器还包括数据库产品管理模块和权限管理模块;其中,所述数据库产品管理模块,用于管理所述数据库产品的注册、更新和删除;所述数据库PaaS处理器的数据库实例管理模块,还用于对所述数据库实例进行注册、发布、停用和回收;所述数据库PaaS处理器的数据库实例集群管理模块,还用于对所述数据库实例集群进行注册、发布、停用和回收;所述权限管理模块,用于根据用户的等级对数据库连接池的调度进行权限管理。
[0026]进一步地,所述数据库PaaS处理器的数据库实例管理模块,还用于根据数据库资源池中数据库产品的设定特征,自动为所述数据库产品进行参数配置,形成数据库实例。
[0027]进一步地,所述数据库PaaS服务处理引擎的池服务工厂,还用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
[0028]进一步地,池服务工厂具体用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供的服务进行定义,并将定义的服务进行封装,通过对外的数据库服务接口发布给用户。
[0029]进一步地,所述池服务处理器包括服务监听器模块、请求分析器模块、结果集封装模块和服务监控模块;其中,所述服务器监听模块,用于接收用户服务请求;所述请求分析器模块,用于根据服务类型对所述用户服务请求进行解析,并在池服务工厂中得到所述用户服务请求的服务定义;所述结果集封装模块,用于对资源池调度模块根据服务请求消息、服务定义处理返回的处理结果解析封装,并返回给用户;所述服务监控模块,用于监控服务请求的整个生命周期,包括请求到达时间、请求内容、请求者、请求服务名称、请求服务类型和响应时间的监控。
[0030]进一步地,所述数据库实例的注册信息包括以下至少一项:数据库产品所属厂商、数据库实例默认服务等级、数据库产品版本、Java数据库链接驱动程序包、数据库实例的默认端口和数据库实例的默认编码;所述数据库实例信息包括以下至少一项:数据库实例名称、数据库实例所对应的数据库产品、数据库实例服务等级、允许访问方式、访问用户名、访问密码、数据库链接方式、支持的最大并发数、数据库默认编码、是否支持动态伸缩和动态伸缩阀值。
[0031]进一步地,所述数据库实例管理模块中的数据库实例注册单元,通过用户申请界面接收注册信息、或通过管理员审批界面接收注册信息、或根据平台运维管理员的部署自动产生数据库实例的注册信息。
[0032]本发明通过把多个关系型数据库产品及其数据库实例等部署为一个数据库资源池,解决现有的数据库重复建设、分散建设的弊端,同时本发明还把数据库资源池作为平台服务使用,使得数据库资源池具备PaaS平台的各种特性,如多租户、资源共享、网络访问、资源弹性扩展等。【专利附图】

【附图说明】
[0033]图1是本发明第一实施例中的平台即服务PaaS实现方法的流程图。
[0034]图2是本发明第二实施例中的平台即服务PaaS实现方法的流程图。
[0035]图3A是本发明第三实施例中的平台即服务PaaS实现装置的结构图。
[0036]图3B是本发明第三实施例中的所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块的具体步骤的流程图。
[0037]图3C是本发明第三实施例中的所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果的具体步骤的流程图。
[0038]图4A是本发明第四实施例中的平台即服务PaaS实现装置的结构图。
[0039]图4B是本发明第四实施例的系统架构示意图。
【具体实施方式】
[0040]下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0041]在图1中示出了本发明的第一实施例。本发明实施例适用于一种平台服务,即PaaS平台,该平台将数据库构建成为数据库资源池,并将其作为PaaS平台服务,使数据库资源池具备PaaS的特性,例如多租户、资源共享、网络访问和资源弹性扩展等。
[0042]图1是本发明第一实施例中的平台即服务PaaS实现方法的流程图,该实现流程100可以由平台即服务(PaaS)实现装置来执行,该装置可以由软件和/或硬件实现,控制平台即服务PaaS的实现过程。该方法详述如下:
[0043]在步骤101中,数据库PaaS服务处理引擎的池服务处理器通过对外的数据库服务接口获取用户服务请求。
[0044]在本实施例中,外部的用户服务请求PaaS平台时,数据库PaaS服务处理引擎的池服务处理器的服务监听器将接收到请求,该请求可以是web服务、API调用等。数据库PaaS服务处理引擎包括池服务工厂、池处理器,其中池服务工厂为PaaS平台数据库服务的创建中心,包括数据库维护的各种操作、数据库表的数据操作、数据库或库表操作定制操作等发布为服务,服务的形式可以为web service、API接口、各种其他协议的服务接口 ;池处理器为运行时平台对外提供数据服务的处理中心,包括服务监听模块、请求解析模块、数据结果集封装模块以及服务监控模块。
[0045]在步骤102中,所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块。
[0046]在本实施例中,所述池服务处理器的服务器监听模块监听用户,当监听到用户的服务请求时,接收用户服务请求,并根据该用户服务请求产生处理任务,并将产生的处理任务发送至数据库PaaS处理器的资源池调度模块。其中,所述处理任务是所述池服务处理器的请求分析模块根据服务类型对所述用户服务请求进行解析而产生的。所述池服务处理器的请求分析模块还从所送池服务工厂中获取所述用户服务请求的服务定义。该所述服务定义也随处理任务一并发送至数据库PaaS处理器。[0047]在步骤103中,所述资源池调度模块根据获取到的所述处理任务调度各数据库连接池,并产生处理结果,其中,数据库连接池为根据各数据库实例和/或数据库实例集群的实例信息构建,数据库实例为根据数据库产品配置,且数据库产品、数据库实例和/或数据库实例集群存储在数据库资源池中。
[0048]在本实施例中,资源池调度模块将根据获取到的处理任务调度各数据库连接池,做负载均衡,提供数据处理响应速度。资源池调度模块根据请求数据库实例名称、数据库实例的服务等级以及资源池中数据库实例的运行状态数据,计算出最优的数据库实例进行数据操作处理。数据库连接池中的某个数据库实例或数据库集群实例将执行数据库SQL处理,并将结果反馈给数据库PaaS处理器。其中数据库连接池是根据各数据库实例和/或数据库实例集群的实例信息构建的,包括对各数据库实例和/或数据库实例集群进行注册、发布、停用和回收。
[0049]资源池运行状态监控数据库资源池中所有数据库实例的运行状态扫描,如CPU使用情况、内存使用情况、请求响应速度、磁盘IO等性能指标,是资源池进行数据库实例调度的基础。
[0050]在步骤104中,所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果。
[0051]在本实施例中,所述数据库PaaS处理器接收数据库资源池的处理结果,并将该处理结果反馈给数据库PaaS服务引擎,所述数据库PaaS服务引擎中池服务处理器的结果集封装模块根据服务类型将该处理结果进行封装转换,并将转换结果通过数据库服务接口反馈给用户。其中,数据库服务接口包括web service、API接口、各种其他协议的服务接口。
[0052]本发明第一实施例将数据资源池作为平台使用,使数据库资源池具备PaaS平台的各种特性,如多租户、资源共享、网络访问、资源弹性扩展等。
[0053]在图2中示出了本发明的第二实施例。
[0054]图2是本发明第二实施例中的平台即服务PaaS实现方法的流程图。本实施例在上述各实施例的基础上,本发明实施例还包括以下步骤:
[0055]在步骤201中,所述数据库PaaS处理器的数据库产品管理模块管理所述数据库产品的注册、更新和删除。
[0056]在本实施例中,数据库PaaS处理器的数据库产品管理模块对数据库资源池中可以池化的数据库产品进行注册,注册信息包括数据库厂商、数据库实例默认服务等级(各个数据库厂商,根据其市场反馈情况为其构造的数据库实例预设一个服务等级)、数据库产品版本、数据库JDBC驱动程序包、数据库实例的默认端口、数据库实例的默认编码等配置信息维护,同时提供对数据库产品更新、删除等操作。
[0057]在步骤202中,所述数据库PaaS处理器的数据库实例管理模块对所述数据库实例进行注册、发布、停用和回收。
[0058]在本实施例中,所述数据库PaaS处理器的数据库实例管理模块对数据库实现的管理包括注册、发布、停用和回收,数据库实例是数据库产品的安装实例,是数据库资源池的组成元素。数据库实例可以手动进行部署,然后经过数据库实例管理模块注册到数据库PaaS平台,数据库实例信息包括实例名称、数据库实例所对应的数据库产品、实例服务等级、访问方式(账号方式、证书)、访问用户名、访问密码、数据库链接方式(是否SSL)、支持的最大并发数、数据库默认编码、是否支持动态伸缩、动态伸缩阀值等信息。当发布该实例后,实例管理模块将根据实例配置信息构建该数据库实例的数据库连接池,同时将交由资源池调度模块进行调度管理。
[0059]在步骤203中,所述数据库PaaS处理器的数据库实例集群管理模块对所述数据库实例进行注册、发布、停用和回收。
[0060]在本实施例中,与上述步骤202中一样。
[0061 ] 在步骤204中,所述数据库PaaS处理器的资源池调度模块调度所述各数据库连接池。
[0062]在本实施例中,资源池调度模块将根据获取到的处理任务调度各数据库连接池,做负载均衡,提供数据处理响应速度。资源池调度模块根据请求数据库实例名称、数据库实例的服务等级以及资源池中数据库实例的运行状态数据,计算出最优的数据库实例进行数据操作处理。
[0063]在步骤205中,所述数据库PaaS处理器的权限管理模块根据用户的等级对所述数据库连接池的调度进行权限管理。
[0064]在本实施例中,资源池数据库实例的服务权限管理,是角色、用户管理、授权管理、用户等级等,用户等级的作用是当各种业务对同一个数据库实例名称的大规模数据库请求到达时,可以按照用户等级进行排队处理,这样就能优先保证关键客户或核心业务应用的数据响应。
[0065]本发明第二实施例与上述实施例中的步骤无必须的时序性限定。与上述实施例相t匕,本发明实施例将多个关系型数据库产品及其数据库实例等部署为一个数据库资源池,解决现有的数据库重复建设、分散建设的弊端。
[0066]在上述实施例的基础上,所述数据库PaaS处理器的数据库实例管理模块根据数据库资源池中数据库产品的设定特征,自动为所述数据库产品进行参数配置,形成数据库实例。
[0067]在图3中示出了本发明的第三实施例。
[0068]图3A是本发明第三实施例中的平台即服务PaaS实现方法的流程图。图3B是本发明第三实施例中的所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块的具体步骤的流程图,图3C是本发明第三实施例中的所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果的具体步骤的流程图。本实施例在上述各实施例的基础上,本发明实施例还包括以下步骤:
[0069]在步骤301中,所述数据库PaaS服务处理引擎的池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
[0070]在本实施例中,池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供的服务进行定义,并将定义的服务进行封装,通过对外的数据库服务接口发布给用户。其中定义的服务的形式可以为web service、API接口、各种其他协议的服务接口。其中所述封装的服务包括web服务、Java API或Restful API。
[0071]池服务工厂将数据库维护的各种操作、数据库表的数据操作、数据库或库表操作定制操作等发布为服务,对数据库表的增删改及按主键查询等操作自动支持为服务对外提供,而对于数据库的复杂SQL查询,则需要使用者提供该SQL查询、需要的服务封装类型列表,有服务定义模块去解析该SQL,如果合法,则交由服务封装模块根据所选择的的服务封装类型列表将SQL封装为可以直接使用的服务。
[0072]本发明第三实施例与上述实施例中的步骤无必须的时序性限定。与上述实施例相t匕,本发明实施例将对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作封装定义为服务对外提供,可以使用户直接通过数据库服务接口发送服务请求给数据库PaaS服务处理引擎,快速便捷地读取用户服务请求。
[0073]在上述方案的基础上,如图3B所示,所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块具体包括:
[0074]所述池服务处理器的服务器监听模块接收用户服务请求。
[0075]在本实施例中,所述池服务处理器的服务器监听模块监听用户的请求,当监听到用户有服务请求时,接收用户服务请求。
[0076]所述池服务处理器的服务器模块根据服务类型对所述用户服务请求进行解析,并从所述池服务工厂中获取所述用户服务请求的服务定义。
[0077]在本实施例中,池服务处理器的请求解析模块解析用户服务请求,并根据请求结果中的服务名称等信息到池服务工厂中查询服务所对应的服务定义。
[0078]所述池服务处理器的请求分析模块根据所述服务定义产生处理任务,所述池服务处理器的服务器请求分析模块将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块。
[0079]在本实施例中,池服务处理器的请求解析模块解析用户服务请求,并根据请求结果中的服务名称等信息到池服务工厂中查询服务所对应的服务定义,池服务处理器将服务定义、服务请求消息一起发送给数据库PaaS处理器。数据库PaaS处理器接收到请求后,交由资源池调度模块进行调度处理。
[0080]在上述方案的基础上,如图3C所示,所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果具体包括:
[0081]所述池服务处理器的结果集封装模块获取所述处理结果,将所述处理结果集合封装。
[0082]在本实施例中,数据库PaaS处理器接收到数据库资源池处理结果后,其结果集封装模块将所述处理结果集合封装。
[0083]所述池服务处理器的结果集封装模块通过所述数据库服务接口向用户返回处理结果。
[0084]在本实施例中,数据库PaaS处理器将封装后的处理结果集反馈给PaaS池服务引擎。PaaS池服务引擎接收到数据库PaaS处理器的数据集合后,交给数据集封装进行数据集合按照服务类型进行封装转换,并将转换结果反馈给服务请求。
[0085]在图4中示出了本发明的第四实施例。
[0086]图4A是本发明第四实施例中的平台即服务PaaS实现装置的结构图。图4B是本发明第四实施例的系统架构示意图。本实施例的装置均适用于上述实施例。如图4A所示,该装置包括数据库资源池401、数据库PaaS处理器402和数据库PaaS服务处理引擎403,所述数据库PaaS服务处理引擎403包括池服务处理器4031和池服务工厂4032,所述数据库PaaS处理器402包括资源池调度模块4021、数据库实例管理模块4022和数据库实例集群管理模块4023。
[0087]其中,所述数据库资源池401,用于存储数据库产品、数据库实例和/或数据库实例集群,其中,数据库实例为根据数据库产品配置。
[0088]所述资源池调度模块4021,用于根据获取到的所述处理任务调度各数据库连接池,并产生处理结果。
[0089]所述数据库实例管理模块4022,用于根据各数据库实例的实例信息构建数据库实例的数据库连接池,并将所述数据库连接池提供给所述资源池调度模块进行调度管理。
[0090]所述数据库实例集群管理模块4023,用于根据各数据库实例集群的实例信息构建数据库实例集群的数据库连接池,并将所述数据库连接池提供给所述资源池调度模块进行
调度管理。
[0091 ] 所述池服务处理器4031,用于通过对外的数据库服务接口获取用户服务请求,根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块,并获取处理结果,通过所述数据库服务接口向用户返回处理结果。
[0092]所述池服务工厂4032,用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
[0093]本发明第四实施例将数据资源池作为平台使用,使数据库资源池具备PaaS平台的各种特性,如多租户、资源共享、网络访问、资源弹性扩展等。
[0094]在本实施例中,所述数据库PaaS处理器还包括数据库产品管理模块4024和权限管理模块4025。其中,所述数据库产品管理模块4024,用于管理所述数据库产品的注册、更新和删除。所述权限管理模块4025,用于根据用户的等级对数据库连接池的调度进行权限管理。
[0095]在上述方案中,所述数据库PaaS处理器的数据库实例管理模块,还用于根据数据库资源池中数据库产品的设定特征,自动为所述数据库产品进行参数配置,形成数据库实例。
[0096]在上述方案中,池服务工厂具体用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供的服务进行定义,并将定义的服务进行封装,通过对外的数据库服务接口发布给用户。
[0097]在本实施例中,所述池服务处理器包括服务监听器模块、请求分析器模块、结果集封装模块和服务监控模块;其中,所述服务器监听模块,用于接收用户服务请求;所述请求分析器模块,用于根据服务类型对所述用户服务请求进行解析,并在池服务工厂中得到所述用户服务请求的服务定义;所述结果集封装模块,用于对资源池调度模块根据服务请求消息、服务定义处理返回的处理结果解析封装,并返回给用户;所述服务监控模块,用于监控服务请求的整个生命周期,包括请求到达时间、请求内容、请求者、请求服务名称、请求服务类型和响应时间的监控。
[0098]在上述方案的基础上,所述数据库实例的注册信息包括以下至少一项:数据库产品所属厂商、数据库实例默认服务等级、数据库产品版本、Java数据库链接驱动程序包、数据库实例的默认端口和数据库实例的默认编码;
[0099]所述数据库实例信息包括以下至少一项:数据库实例名称、数据库实例所对应的数据库产品、数据库实例服务等级、允许访问方式、访问用户名、访问密码、数据库链接方式、支持的最大并发数、数据库默认编码、是否支持动态伸缩和动态伸缩阀值。
[0100]在上述方案的基础上,所述数据库实例管理模块中的数据库实例注册单元,通过用户申请界面接收注册信息、或通过管理员审批界面接收注册信息、或根据平台运维管理员的部署自动产生数据库实例的注册信息。
[0101]注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
【权利要求】
1.一种平台即服务PaaS实现方法,其特征在于,所述方法包括: 数据库PaaS服务处理引擎的池服务处理器通过对外的数据库服务接口获取用户服务请求; 所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块; 所述资源池调度模块根据获取到的所述处理任务调度各数据库连接池,并产生处理结果,其中,数据库连接池为根据各数据库实例和/或数据库实例集群的实例信息构建,数据库实例为根据数据库产品配置,且数据库产品、数据库实例和/或数据库实例集群存储在数据库资源池中; 所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果O
2.根据权利要求1所述的实现方法,其特征在于,所述方法还包括: 所述数据库PaaS处理器的数据库产品管理模块管理所述数据库产品的注册、更新和删除; 所述数据库PaaS处理器的数据库实例管理模块对所述数据库实例进行注册、发布、停用和回收; 所述数据库PaaS处理器的数据库实例集群管理模块对所述数据库实例进行注册、发布、停用和回收; 所述数据库PaaS处理 器的资源池调度模块调度所述各数据库连接池; 所述数据库PaaS处理器的权限管理模块根据用户的等级对所述数据库连接池的调度进行权限管理。
3.根据权利要求2所述的实现方法,其特征在于,还包括: 所述数据库PaaS处理器的数据库实例管理模块根据数据库资源池中数据库产品的设定特征,自动为所述数据库产品进行参数配置,形成数据库实例。
4.根据权利要求1所述的实现方法,其特征在于,所述方法还包括: 所述数据库PaaS服务处理引擎的池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
5.根据权利要求4所述的实现方法,其特征在于,所述池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布,包括: 池服务工厂对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供的服务进行定义,并将定义的服务进行封装,通过对外的数据库服务接口发布给用户。
6.根据权利要求5所述的实现方法,其特征在于,所述封装的服务包括web服务、JavaAPI 或 Restful API。
7.根据权利要求4所述的实现方法,其特征在于,所述池服务处理器根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块具体包括: 所述池服务处理器的服务器监听模块接收用户服务请求; 所述池服务处理器的服务器模块根据服务类型对所述用户服务请求进行解析,并从所述池服务工厂中获取所述用户服务请求的服务定义;所述池服务处理器的请求分析模块根据所述服务定义产生处理任务,所述池服务处理器的服务器请求分析模块将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块。
8.根据权利要求7所述的实现方法,其特征在于,所述池服务处理器获取所述处理结果,并通过所述数据库服务接口向用户返回处理结果具体包括: 所述池服务处理器的结果集封装模块获取所述处理结果,将所述处理结果集合封装; 所述池服务处理器的结果集封装模块通过所述数据库服务接口向用户返回处理结果。
9.一种平台即服务PaaS实现装置,其特征在于,所述装置包括数据库资源池、数据库PaaS处理器和数据库PaaS服务处理引擎,所述数据库PaaS服务处理引擎包括池服务处理器和池服务工厂,所述数据库PaaS处理器包括资源池调度模块、数据库实例管理模块和数据库实例集群管理模块,其中: 所述数据库资源池,用于存储数据库产品、数据库实例和/或数据库实例集群,其中,数据库实例为根据数据库产品配置; 所述池服务处理器,用于通过对外的数据库服务接口获取用户服务请求,根据所述用户服务请求产生处理任务,将所述处理任务分配给所述数据库PaaS处理器的资源池调度模块,并获取处理结果,通过所述数据库服务接口向用户返回处理结果; 所述资源池调度模块, 用于根据获取到的所述处理任务调度各数据库连接池,并产生处理结果; 所述数据库实例管理模块,用于根据各数据库实例的实例信息构建数据库实例的数据库连接池,并将所述数据库连接池提供给所述资源池调度模块进行调度管理; 所述数据库实例集群管理模块,用于根据各数据库实例集群的实例信息构建数据库实例集群的数据库连接池,并将所述数据库连接池提供给所述资源池调度模块进行调度管理; 所述池服务工厂,用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
10.根据权利要求9所述的实现装置,其特征在于: 所述数据库PaaS处理器还包括数据库产品管理模块和权限管理模块;其中, 所述数据库产品管理模块,用于管理所述数据库产品的注册、更新和删除; 所述权限管理模块,用于根据用户的等级对数据库连接池的调度进行权限管理。
11.根据权利要求10所述的实现装置,其特征在于: 所述数据库PaaS处理器的数据库实例管理模块,还用于根据数据库资源池中数据库产品的设定特征,自动为所述数据库产品进行参数配置,形成数据库实例。
12.根据权利要求9所述的实现装置,其特征在于, 所述数据库PaaS服务处理引擎的池服务工厂,还用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供发布、创建、修改和删除操作。
13.根据权利要求12所述的实现装置,其特征在于,池服务工厂具体用于对数据库产品、数据库实例和/或数据库实例集群中的数据库表提供的服务进行定义,并将定义的服务进行封装,通过对外的数据库服务接口发布给用户。
14.根据权利要求13所述的实现装置,其特征在于,所述池服务处理器包括服务监听器模块、请求分析器模块、结果集封装模块和服务监控模块; 其中,所述服务器监听模块,用于接收用户服务请求; 所述请求分析器模块,用于根据服务类型对所述用户服务请求进行解析,并在池服务工厂中得到所述用户服务请求的服务定义; 所述结果集封装模块,用于对资源池调度模块根据服务请求消息、服务定义处理返回的处理结果解析封装,并返回给用户; 所述服务监控模块,用于监控服务请求的整个生命周期,包括请求到达时间、请求内容、请求者、请求服务名称、请求服务类型和响应时间的监控。
15.根据权利要求9所述的实现装置,其特征在于: 所述数据库实例的注册信息包括以下至少一项:数据库产品所属厂商、数据库实例默认服务等级、数据库产品版本、Java数据库链接驱动程序包、数据库实例的默认端口和数据库实例的默认编码; 所述数据库实例信息包括以下至少一项:数据库实例名称、数据库实例所对应的数据库产品、数据库实例服务等级、允许访问方式、访问用户名、访问密码、数据库链接方式、支持的最大并发数、数据库默认编码、是否支持动态伸缩和动态伸缩阀值。
16.根据权利要求10所述的实现装置,其特征在于,所述数据库实例管理模块中的数据库实例注册单元,通过用户申请界面接收注册信息、或通过管理员审批界面接收注册信息、或根据平台运维管理员的部署自动产生数据库实例的注册信息。
【文档编号】G06F17/30GK103546571SQ201310522856
【公开日】2014年1月29日 申请日期:2013年10月29日 优先权日:2013年10月29日
【发明者】张志武, 郑驰 申请人:北京华胜天成科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1