[发明专利]golang程序热更新方法、装置以及计算机设备在审

专利信息
申请号: 202010068077.8 申请日: 2020-01-21
公开(公告)号: CN112416383A 公开(公告)日: 2021-02-26
发明(设计)人: 任运宜 申请(专利权)人: 上海哔哩哔哩科技有限公司
主分类号: G06F8/65 分类号: G06F8/65
代理公司: 北京英特普罗知识产权代理有限公司 11015 代理人: 邓小玲;王勇
地址: 200433 上海市*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: golang 程序 更新 方法 装置 以及 计算机 设备
【权利要求书】:

1.一种golang程序热更新方法,其特征在于,所述方法包括步骤:

接收golang程序更新请求,获取所述更新请求中目标功能对应的第一代码段;

将所述第一代码段添加到规则引擎的内容存储单元;

根据所述规则引擎的执行规则从所述内容存储单元中调用所述第一代码段替代所述目标功能对应的第二代码段;

执行包括所述第一代码段的golang程序。

2.如权利要求1所述的golang程序热更新方法,其特征在于,所述将所述第一代码段添加到规则引擎的内容存储单元包括:

通过AST技术对所述第一代码段进行解析,得到对应的可执行代码段;

将所述可执行代码段添加到所述内容存储单元。

3.如权利要求1所述的golang程序热更新方法,其特征在于,所述获取所述更新请求中目标功能对应的第一代码段包括:

将所述golang程序更新请求对应的代码数据与所述golang程序上一版本的代码数据进行文本比对,找出差异代码;

根据代码的格式确定出所述差异代码段中包括的所述第一代码段。

4.如权利要求1所述的golang程序热更新方法,其特征在于,所述执行规则包括:

获取所述内容存储单元中所述golang程序中对应一个功能的所有版本的代码段;

查找所述所有版本的代码段中的每个版本的代码段的编辑时间;

选择出与当前时间的差值最小的编辑时间对应的代码段进行调用。

5.如权利要求1所述的golang程序热更新方法,其特征在于,所述规则引擎还包括执行优先级,所述golang程序热更新方法还包括:

获取所述内容存储单元中所述golang程序对应的所有代码段的类型标识;

根据所述类型标识和所述执行优先级从所述内容存储单元先后调用所述golang程序对应的代码段。

6.如权利要求5所述的golang程序热更新方法,其特征在于,所述类型标识用于标识出所述golang程序中的不同的子功能的代码段;相同子功能的不同版本的代码段的类型标识都相同。

7.如权利要求1所述的golang程序热更新方法,其特征在于,所述规则引擎通过语法树的方式实现。

8.一种golang程序热更新装置,其特征在于,所述装置包括:

获取模块,用于接收golang程序更新请求,获取所述更新请求中目标功能对应的第一代码段;

添加模块,用于将所述第一代码段添加到规则引擎的内容存储单元;

调用模块,用于根据所述规则引擎的执行规则从所述内容存储单元中调用所述第一代码段替代所述目标功能对应的第二代码段;

执行模块,用于执行包括所述第一代码段的golang程序。

9.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-7任一项所述的golang程序热更新方法的步骤。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-7中任一项所述的golang程序热更新方法的步骤。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海哔哩哔哩科技有限公司,未经上海哔哩哔哩科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010068077.8/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top