[发明专利]一种服务的重启方法和装置在审
申请号: | 201611236720.3 | 申请日: | 2016-12-28 |
公开(公告)号: | CN106648870A | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | 郝延凯 | 申请(专利权)人: | 北京奇虎科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京润泽恒知识产权代理有限公司11319 | 代理人: | 苏培华 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 服务 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别是涉及一种服务的重启方法和一种服务的重启装置。
背景技术
Thrift是一套不同语言之间通信的RPC(Remote Procedure Call Protocol,远程进程调用协议)框架。本领域技术人员在采用Thrift在进行开发时发现,Thrift是使用多个服务互相备份的方式部署和更新服务service。
例如,一服务service运行在一台服务器A上,如果想对该服务进行升级,就需要使用另外一台部署同样服务的备份服务器B替换。即将该服务的所有线上请求全都移交到服务器B上,然后停掉服务器A上服务,更新A上的服务并重新启动,再将服务从B替换回A上,从而实现对服务的升级。
但是,Thrift采用上述备份的方式部署和更新服务service,每次更新服务操作繁琐,升级部署不便捷。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的服务的重启方法和相应的服务的重启装置。
依据本发明实施例的一个方面,提供了一种服务的重启方法,包括:服务进程依据重启指令,获取与目标接口绑定的套接字socket;创建与所述服务进程相同的服务子进程,对所述服务子进程传入所述绑定的socket;判断所述服务进程不存在请求后,关闭所述服务进程;针对所述目标接口的数据,采用所述服务子进程调用所述绑定的socket。
可选的,其中,还包括:预先变更库代码,以使进程支持传入socket,其中,所述进程包括服务进程和服务子进程;封装变更的库代码,得到对应支持进程热重启的库文件。
可选的,其中,还包括:依据所述支持进程热重启的库文件创建服务进程。
可选的,获取与目标接口绑定的socket之后,还包括:将所述绑定的socket添加到环境变量中。
可选的,对所述服务子进程传入所述绑定的socket,包括:向所述服务子进程传入所述环境变量,以传入所述绑定的socket。
可选的,针对所述目标接口的数据,采用所述服务子进程调用所述绑定的socket,包括:在所述目标接口处,判断所述服务子进程的环境变量中是否存在所述绑定的socket;若存在所述绑定的socket,采用所述服务子进程调用所述绑定的socket。
可选的,其中,还包括:依据接口请求创建与目标接口绑定的socket。
根据本发明实施例的另一个方面,提供了一种服务的重启装置,包括:获取模块,用于服务进程依据重启指令,获取与目标接口绑定的套接字socket;传入模块,用于创建与所述服务进程相同的服务子进程,对所述服务子进程传入所述绑定的socket;关闭模块,用于判断所述服务进程不存在请求后,关闭所述服务进程;服务模块,用于针对所述目标接口的数据,采用所述服务子进程调用所述绑定的socket。
可选的,其中,还包括:库变更模块,用于预先变更库代码,以使进程支持传入socket,其中,所述进程包括服务进程和服务子进程;封装变更的库代码,得到对应支持进程热重启的库文件。
可选的,其中,还包括:创建模块,用于依据所述支持进程热重启的库文件创建服务进程。
可选的,其中,还包括:变量添加模块,用于将所述绑定的socket添加到环境变量中。
可选的,所述传入模块,用于向所述服务子进程传入所述环境变量,以传入所述绑定的socket。
可选的,所述服务模块,用于在所述目标接口处,判断所述服务子进程的环境变量中是否存在所述绑定的socket;若存在所述绑定的socket,采用所述服务子进程调用所述绑定的socket。
可选的,其中,还包括:创建模块,用于依据接口请求创建与目标接口绑定的socket。
服务进程依据重启指令,获取与目标接口绑定的socket,然后创建与所述服务进程相同的服务子进程,对所述服务子进程传入所述绑定的socket,通过服务子进程接替服务进程提供对目标接口的服务,在判断所述服务进程不存在请求后,关闭所述服务进程,采用服务子进程调用所述绑定的socket提供针对目标接口的服务,从而实现对服务的热重启,能够在不中断服务的情况下重启服务,操作简单,无需使用备份服务器,服务升级便捷。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司,未经北京奇虎科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611236720.3/2.html,转载请声明来源钻瓜专利网。