[发明专利]大内存服务的多版本程序的并存方法和装置有效
申请号: | 201511020949.9 | 申请日: | 2015-12-29 |
公开(公告)号: | CN105653328B | 公开(公告)日: | 2019-01-25 |
发明(设计)人: | 陈佳捷;常磊;蒋锦鹏 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 宋合成 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 服务 版本 程序 并存 方法 装置 | ||
1.一种大内存服务的多版本程序的并存方法,其特征在于,包括:
部署第一副本的服务器接收客户端发送的第一请求,所述第一请求中携带由第一版本的程序处理所述第一请求的标记;
将所述第一请求转发给第一版本的程序进行处理,确定所述第一版本的程序发生异常;
向所述客户端发送通知,以通知所述客户端所述第一版本的程序发生异常,以使所述客户端向部署第二副本的服务器发送第二请求,所述第二请求中携带由第二版本的程序处理所述第二请求的标记,由部署第二副本的服务器将所述第二请求转发给第二版本的程序进行处理,所述第一版本为所述第二版本的更新版本。
2.根据权利要求1所述的方法,其特征在于,部署第一副本的服务器和部署第二副本的服务器中均部署第一版本的程序和第二版本的程序。
3.根据权利要求2所述的方法,其特征在于,还包括:
所述部署第一副本的服务器将所述第一版本的程序和所述第二版本的程序所需的数据取并集,并将所述第一版本的程序和所述第二版本的程序所需数据的并集加载到数据进程中。
4.根据权利要求3所述的方法,其特征在于,所述部署第一副本的服务器中部署的第一版本或第二版本的程序在运行时,根据各自的配置使用所述数据进程中加载的数据。
5.根据权利要求2-4任意一项所述的方法,其特征在于,所述部署第一副本的服务器中所述第一版本的程序和所述第二版本的程序分别在不同的槽位上启动,所述槽位为所述部署第一副本的服务器中的版本容器。
6.根据权利要求5所述的方法,其特征在于,所述第二版本的程序在第一槽位上启动,所述第一版本的程序在第二槽位上启动;
所述方法还包括:
当所述第一版本的程序升级到第三版本时,所述部署第一副本的服务器将所述第二版本的程序和所述第三版本的程序加载到运行环境中;
在所述第一槽位上启动所述第二版本的程序新的运行进程,确定所述第二版本的程序新的运行进程运行正常之后,将标记由所述第二版本的程序处理的请求转发到所述第二版本的程序新的运行进程,并停止所述第二版本的程序旧的运行进程;
在所述第二槽位上启动所述第三版本的程序新的运行进程,确定所述第三版本的程序新的运行进程运行正常之后,将标记由所述第一版本的程序处理的请求转发到所述第三版本的程序新的运行进程,并停止所述第一版本的程序旧的运行进程。
7.根据权利要求6所述的方法,其特征在于,所述第二版本的程序新的运行进程与所述第二版本的程序旧的运行进程使用不同的服务端口;所述第三版本的程序新的运行进程与所述第三版本的程序旧的运行进程使用不同的服务端口。
8.一种大内存服务的多版本程序的并存方法,其特征在于,包括:
客户端向部署第一副本的服务器发送第一请求,所述第一请求中携带由第一版本的程序处理所述第一请求的标记;
接收部署第一副本的服务器发送的通知,所述通知是部署第一副本的服务器在将所述第一请求转发给第一版本的程序进行处理,确定所述第一版本的程序发生异常之后发送的,用于通知所述客户端所述第一版本的程序发生异常;
向部署第二副本的服务器发送第二请求,所述第二请求中携带由第二版本的程序处理所述第二请求的标记,以使部署第二副本的服务器将所述第二请求转发给第二版本的程序进行处理,所述第一版本为所述第二版本的更新版本。
9.根据权利要求8所述的方法,其特征在于,部署第一副本的服务器和部署第二副本的服务器中均部署第一版本的程序和第二版本的程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511020949.9/1.html,转载请声明来源钻瓜专利网。