[发明专利]基于PAAS平台的应用部署方法和装置有效
申请号: | 201410150666.5 | 申请日: | 2014-04-15 |
公开(公告)号: | CN103942051B | 公开(公告)日: | 2017-04-05 |
发明(设计)人: | 王阳 | 申请(专利权)人: | 新浪网技术(中国)有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京市京大律师事务所11321 | 代理人: | 张璐,方晓明 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 paas 平台 应用 部署 方法 装置 | ||
技术领域
本发明涉及互联网领域,尤其涉及一种基于PAAS平台的应用部署方法和装置。
背景技术
随着云计算平台技术的发展,将服务器平台或者开发环境作为服务提供给用户的PAAS(Platform as a Service,平台即服务)服务模式得到广泛应用。用户在将应用成功部署至PAAS平台中之后,即可以使用PAAS平台中的云计算应用引擎服务,比如,SAE(Sina App Engine,新浪应用引擎)服务。
具体地,用户可以将待部署的应用的java二进制文件的压缩包上传至PAAS平台中的服务器;该服务器则将上传的压缩包解压到指定目录下,并将解压后得到的二进制文件装载至内存中。这样,该待部署的应用就可以在PAAS平台中使用其提供的云计算应用引擎服务。
目前,许多现有的应用主要是依赖JDK(Java Development’s Kit,Java开发工具包)来完成的。如果将现有的应用迁移到PAAS平台中进行部署运行,需要通过PAAS平台所提供专有的专用类(本文中也可以称为云计算应用引擎提供的类),才可以使用PAAS平台中的云计算应用引擎服务。然而,现有的应用主要是通过通用类来调用现有服务。因此,为了使现有的应用在部署至PAAS平台之后能够使用PAAS平台中的云计算应用引擎服务,往往需要修改该待部署的应用的底层的JDK代码,以使得该应用能够使用PAAS平台所提供的专用类。
而现有的应用的JDK代码一般是已经完成测试的应用代码。若将现有的应用的JDK代码针对PAAS平台所提供的专用类的引用进行通用类的引用代码修改,则可能会出现修改后的JDK代码在使用PAAS平台中的服务后无法实现的情况,甚至由于修改的代码出现一些未知的漏洞BUG。而要保证修改后的JDK代码能够在PAAS平台中通过专用类来使用云计算应用引擎服务,则需要针对JDK代码进行大量的人工代码改动及新的测试,这不仅会耗费大量的人力和物力,还可能会进一步引起其他新的问题,存在较大的BUG风险。
因此,有必要提供一种改动量少、且BUG风险低的应用迁移方法,使得现有应用在被部署至PAAS平台中后可以调用云计算应用引擎服务。
发明内容
本发明实施例提供了一种基于PAAS平台的应用部署方法和装置,用以减少底层代码的改动量、并降低BUG出现风险。
根据本发明的一个方面,提供了一种基于PAAS平台的应用部署方法,包括:
对待部署的应用的二进制文件的常量池进行扫描,从所述常量池中确定出该二进制文件所引用的通用类的名称;
对于每个确定出的通用类的名称,在替换列表中查找与该通用类的名称相对应的代理类的名称,并使用查找到的代理类的名称替换所述常量池中该通用类的名称;其中,代理类中封装有调用与其对应的通用类相对应的平台即服务PAAS平台中专用类的语句;所述替换列表中相对应的通用类和代理类的名称的二进制长度相等;
根据替换了所述常量池中类的名称的二进制文件,部署所述应用在所述PAAS平台中运行。
较佳地,所述根据替换了所述常量池中类的名称的二进制文件,部署所述应用在所述PAAS平台中运行,具体包括:
所述PAAS平台对所述应用,根据其替换了所述常量池中类的名称的二进制文件所引用的代理类的名称,调用相应的代理类,该代理类进而调用与其对应的通用类相对应的PAAS平台中的专用类。
较佳地,所述替换列表中的代理类的名称的第一字节段为特定长度的特定字符,其余字节段均与其对应的通用类的名称的相应字节段内容相同。
较佳地,所述特定长度为4位;以及
所述PAAS平台中的专用类具体为PAAS平台中的云计算应用引擎提供的类。
较佳地,所述通用类和代理类的名称的各字节段之间有相同的特定分隔符。
较佳地,在所述对待部署的应用的二进制文件的常量池进行扫描之前,还包括:
上传所述待部署的应用的二进制文件的压缩包到所述PAAS平台中的服务器;
所述服务器周期性将上传的压缩包解压到指定目录下;以及
所述对待部署的应用的二进制文件的常量池进行扫描,具体为:
对所述指定目录下存储的待部署的应用的二进制文件的常量池进行扫描。
根据本发明的另一个方面,还提供了一种基于PAAS平台的应用部署装置,包括:
扫描模块,用于对待部署的应用的二进制文件的常量池进行扫描,从所述常量池中确定出该二进制文件所引用的通用类的名称;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新浪网技术(中国)有限公司,未经新浪网技术(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410150666.5/2.html,转载请声明来源钻瓜专利网。