一种基于CDN的PAAS平台服务包分发方法及系统与流程

文档序号:11292325阅读:952来源:国知局

本发明涉及云计算平台技术领域,具体地说是一种基于cdn的paas平台服务包分发方法及系统。



背景技术:

云计算是一种能够通过普适设备、方便、按需利用网络访问的共享、可配置的计算资源池,并可以较小的管理成本或与服务商的交互迅速提供和释放计算资源的模式。云计算技术拥有虚拟化技术、并行计算技术、网格计算、分布式计算技术以及透明计算技术的一系列优势。而paas(platformasaservice,平台即服务)平台作为云计算的一种服务类型,将软件部署、管理运维作为一种服务按需提供给软件开发用户,成为近年来非常热门的研究方向。paas平台的出现使得应用开发者无须购置硬件以及购置、安装和配置软件环境。可以大大简化应用开发者的开发工作量。因此paas平台对于服务的动态交付、管理以及维护变得异常重要。但是,现有的云平台主要将服务包托管到固定的存储设备中,虚拟化环境各自维护管理服务包,这对于云平台的扩展性、高效性、自动化管理运维十分不便且服务的构建性能较低。

专利号为cn105516334a专利文献公开了一种cdn文件分发系统,所述系统包括:源存储节点、至少一个二级存储节点、边缘节点、数据库服务器和任务触发服务器;所述源存储节点,适于接收用户传输的文件,生成对应的边缘节点的文件新增任务并写入所述数据库服务器;定时从所述数据库服务器中获取文件处理任务并处理,其中,当所述文件处理任务为文件新增任务时,且相应的文件不存在时,从源站获取对应的文件。但是该技术方案不能将cdn与paas平台相结合,提高云平台的服务构建性能以及云平台的扩展性、高效性。



技术实现要素:

本发明的技术任务是提供一种基于cdn的paas平台服务包分发方法及系统,来解决现有的云平台主要将服务包托管到固定的存储设备中,虚拟化环境各自维护管理服务包,这对于云平台的扩展性、高效性、自动化管理运维十分不便且服务的构建性能较低的问题。

本发明的技术任务是按以下方式实现的,一种基于cdn的paas平台服务包分发方法,该方法包括如下步骤:

(1)、将智能agent部署到cdn的边缘服务器中,智能agent启动之后发送心跳数据给paas平台,作为当前节点存活的状态标志;智能agent周期性的采集节点的运行状态信息,并将数据传输到paas平台;

(2)、pass平台将服务包通过智能agent发送到cdn的源服务器中,源服务器根据服务包的访问情况更新发送服务包,同时paas平台通过周期性监控边缘服务器的运行状态,动态的控制边缘服务器的数量;

(3)、客户端向负载均衡模块发送服务包下载请求,负载均衡模块通过综合的计算边缘服务器的负载情况,选取合适的边缘服务器作为服务节点,且相同控制域中的边缘服务器之间协作式的工作,共享缓存的服务包数据;

(4)、客户端通过负载均衡模块访问步骤(3)中选取的边缘服务器,获取服务包进行构建服务并反馈服务包的构建结果到paas平台。

作为优选,步骤(1)中智能agent周期性的采集节点的运行状态信息包括cpu、内存以及网络的使用情况。

作为优选,步骤(2)中边缘服务器是部署在一个虚拟化环境的控制域中,其数量number_of_relica由以下方式确定:

边缘服务器的初始数量为init_size,该参数由虚拟化环境的资源大小确定;

当cpu利用率大于threshold(cpu_util):

number_of_relica=min(number_of_relica*2,max_size),其中,max_size为虚拟化环境可以承受的最大边缘服务器的数量。

作为优选,所述步骤(2)中pass平台周期性的监控边缘服务器的资源利用率,关闭资源利用率低的边缘服务器,其计算模型如下:

其中,xi为边缘服务器的cpu利用率,当u<threshold(u)并且δ>threshold(δ)时,即cpu利用率较低且波动较大的节点,将其进行关闭。

作为优选,所述步骤(3)中负载均衡模块根据边缘服务器的负载进行动态的请求路由,其计算如下:选取路由节点得分host_score最高节点为目标服务节点;

其中,cpu_avgutil,storage_avgutil,network_avgutil分别表示主机的cpu、存储、网络在当前监控周期内的平均利用率。

作为优选,所述步骤(3)中同一个虚拟化环境中的边缘服务器协作运行,通过智能agent相互交换缓存服务包数据;当一个边缘服务器没有缓存客户端请求的内容时,可以从其它边缘服务器请求本地所没有的内容;如果相同域中没有服务包,则由边缘服务器向源服务器请求服务包。

作为优选,所述步骤(3)中边缘服务器的存储到达上限时,对缓存的内容进行淘汰更新处理,缓存更新策略采用最近最少使用策略,即通过智能agent记录缓存的服务包的最后访问时间以及访问次数,淘汰长时间没使用的以及使用次数最少的服务包。

一种基于cdn的paas平台服务包分发系统,该系统包括paas平台和cdn服务组件模块,paas平台与cdn服务组件模块之间进行数据传输;cdn服务组件模块包括源服务器、负载均衡模块、客户端和多个边缘服务器,paas平台传输服务包数据到源服务器,源服务器传输服务包数据到边缘服务器,客户端通过负载均衡模块接收服务包数据;

源服务器用于接收paas平台发送的服务包;

边缘服务器用于向源服务器请求服务包;

负载均衡模块用于接收客户端发送的服务包现在请求以及综合的计算边缘服务器的负载情况,选取合适的边缘服务器作为服务节点;

客户端用于服务包构建服务并反馈服务包的构建结果到paas平台。

作为优选,还包括多个iaas平台,iaas平台与paas平台之间进行数据传输,iaas平台包括资源虚拟化池,资源虚拟化池中包括计算资源、网络资源和存储资源;paas平台包括数据库服务、中间件服务和大数据服务。

本发明的基于cdn的paas平台服务包分发方法及系统具有以下优点:

(一)、本发明采用cdn分发服务包,能够减少paas平台构建服务的时间,更好的管理paas平台,降低网络传输的冗余,提高网络服务质量,同时根据服务包的访问热度控制缓存数据的大小以及更新策略,更好的解决了资源访问拥堵以及瓶颈的问题;

(二)、本发明通过cdn控制服务包的存储、更新以及分发。通过监控边缘节点的工作负载情况,动态的控制节点以及服务包数据的存储,减少服务包数据访问时间,自适应控制服务包的访问、存储以及更新策略,减少了冗余数据的存储,同时通过负载均衡路由策略,减轻了系统的压力。

故本发明具有设计合理、结构简单、使用方便、一物多用等特点,因而,具有很好的推广使用价值。

附图说明

下面结合附图对本发明进一步说明。

附图1为基于cdn的paas平台服务包分发系统的结构框图。

具体实施方式

参照说明书附图和具体实施例对本发明的基于cdn的paas平台服务包分发方法及系统作以下详细地说明。

实施例1:

本发明的基于cdn的paas平台服务包分发方法,该方法包括如下步骤:

(1)、将智能agent部署到cdn的边缘服务器中,智能agent启动之后发送心跳数据给paas平台,作为当前节点存活的状态标志;智能agent周期性的采集节点的运行状态信息,包括cpu、内存以及网络的使用情况,并将数据传输到paas平台;

(2)、pass平台将服务包通过智能agent发送到cdn的源服务器中,源服务器根据服务包的访问情况更新发送服务包,同时paas平台通过周期性监控边缘服务器的运行状态,动态的控制边缘服务器的数量;

边缘服务器是部署在一个虚拟化环境的控制域中,其数量number_of_relica由以下方式确定:

边缘服务器的初始数量为init_size,该参数由虚拟化环境的资源大小确定;

当cpu利用率大于threshold(cpu_util):

number_of_relica=min(number_of_relica*2,max_size),其中,max_size为虚拟化环境可以承受的最大边缘服务器的数量。

pass平台周期性的监控边缘服务器的资源利用率,关闭资源利用率低的边缘服务器,其计算模型如下:

其中,xi为边缘服务器的cpu利用率,当u<threshold(u)并且δ>threshold(δ)时,即cpu利用率较低且波动较大的节点,将其进行关闭。

(3)、客户端向负载均衡模块发送服务包下载请求,负载均衡模块通过综合的计算边缘服务器的负载情况,选取合适的边缘服务器作为服务节点,且相同控制域中的边缘服务器之间协作式的工作,共享缓存的服务包数据;同一个虚拟化环境中的边缘服务器协作运行,通过智能agent相互交换缓存服务包数据;当一个边缘服务器没有缓存客户端请求的内容时,可以从其它边缘服务器请求本地所没有的内容;如果相同域中没有服务包,则由边缘服务器向源服务器请求服务包。

其中,负载均衡模块根据边缘服务器的负载进行动态的请求路由,其计算如下:选取路由节点得分host_score最高节点为目标服务节点;

其中,cpu_avgutil,storage_avgutil,network_avgutil分别表示主机的cpu、存储、网络在当前监控周期内的平均利用率。

边缘服务器的存储到达上限时,对缓存的内容进行淘汰更新处理,缓存更新策略采用最近最少使用策略,即通过智能agent记录缓存的服务包的最后访问时间以及访问次数,淘汰长时间没使用的以及使用次数最少的服务包。

(4)、客户端通过负载均衡模块访问步骤(3)中选取的边缘服务器,获取服务包进行构建服务并反馈服务包的构建结果到paas平台。

实施例2:

如附图1所示,采用实施例1中基于cdn的paas平台服务包分发方法的系统,该系统包括paas平台、cdn服务组件模块和多个iaas平台,iaas平台与paas平台之间进行数据传输,iaas平台包括资源虚拟化池,资源虚拟化池中包括计算资源、网络资源和存储资源;paas平台包括数据库服务、中间件服务和大数据服务。paas平台与cdn服务组件模块之间进行数据传输;cdn服务组件模块包括源服务器、负载均衡模块、客户端和多个边缘服务器,paas平台传输服务包数据到源服务器,源服务器传输服务包数据到边缘服务器,客户端通过负载均衡模块接收服务包数据;源服务器用于接收paas平台发送的服务包;边缘服务器用于向源服务器请求服务包;负载均衡模块用于接收客户端发送的服务包现在请求以及综合的计算边缘服务器的负载情况,选取合适的边缘服务器作为服务节点;客户端用于服务包构建服务并反馈服务包的构建结果到paas平台。

通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的两种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。

除说明书所述的技术特征外,均为本专业技术人员的已知技术。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1