[发明专利]一种确定版本兼容性的方法及装置在审
申请号: | 202010203600.3 | 申请日: | 2020-03-20 |
公开(公告)号: | CN111414189A | 公开(公告)日: | 2020-07-14 |
发明(设计)人: | 廖飞强;严强;李昊轩;李辉忠;张开翔;范瑞彬 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 彭燕 |
地址: | 518027 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 确定 版本 兼容性 方法 装置 | ||
本发明公开了一种确定版本兼容性的方法及装置,方法包括:被依赖件获取依赖件发送的目标版本号,依赖件的业务功能依赖于被依赖件,被依赖件获取被依赖件的版本兼容规则,若版本号符合第一规则且不符合第二规则,则确定依赖件与被依赖件具有兼容性,被依赖件将兼容结果发送给依赖件。本发明依赖件主动询问被依赖件,被依赖件反馈是否兼容,由此可最小化对兼容性复杂判断逻辑的出错风险和维护代价。同时依赖件初始化时主动进行兼容性检测,如果使用了错误版本的被依赖件,可快速定位相关兼容性问题。此外,通过兼容版本规则确定是否具有兼容性可以灵活控制版本之间的依赖和兼容关系,易于动态配置和更新,降低依赖件或被依赖件维护和管理成本。
技术领域
本发明涉及计算机技术领域,尤其涉及一种确定版本兼容性的方法及装置。
背景技术
由于系统演进过程中将产生多个独立的依赖件或被依赖件,每个依赖件或被依赖件也将进一步演化出多个版本,在各个依赖件或被依赖件升级迭代过程中,依赖件与被依赖件之间难以实现灵活适配。为了解决此问题,现有技术提供了以下两个技术方案:
1、通过版本号比较的方式确定依赖件与被依赖件之间是否兼容:根据版本号的比较结果确定兼容关系。例如组件1依赖组件2,则组件1需要记录兼容组件2的版本号,组件2提供获取版本号的接口,然后组件1调用组件2的接口获取组件2的版本号,最后组件1将可以兼容组件2的版本号与获取的组件2的版本号进行比较,如果具有兼容性,则适配,否则不适配。
上述方案,依赖件在不改变代码的前提下,只能对被依赖件的历史版本进行兼容性判断,而对被依赖件的未来版本,只能保守地认为不兼容。每次被依赖件版本更新时,依赖件都需要更新用于兼容性判断的代码,增加了开发和维护成本。同时由于依赖件很可能不是被依赖件的开发方,对兼容性很难保证不产生误解,因此增大了兼容性判断的代码的出错概率。
2、接口存在性判断:依赖件与被依赖件之间的依赖关系本质是一种接口的依赖关系。例如组件1依赖组件2,则组件1在调用组件2的接口前,需要通过调用组件2的存在性接口判断组件2的接口是否存在,如果存在表示具有兼容性,否则具有兼容性。
上述方案,通过判断接口是否存在并不能严格判断兼容性。例如被依赖件的两个版本均有同一个接口,但是最新版本的接口的实现逻辑已变化,那么依赖件通过接口存在性判断是无法感知的,在实际运行时由于不兼容,会导致系统出现故障而难以排查问题。此外,依赖件在每次调用被依赖件的接口时,均需要调用被依赖件的存在性接口,增加了大量的重复调用。
综上,目前亟需一种确定版本兼容性的方法,在各个依赖件或被依赖件升级迭代过程中,使依赖件与被依赖件之间可以准确地判断兼容性。
发明内容
本申请提供了一种确定版本兼容性的方法及装置,用以解决如何高效准确的确定版本是否兼容的问题。
第一方面,本申请实施例提供一种确定版本兼容性的方法,包括:
被依赖件获取依赖件发送的目标版本号;所述依赖件的业务功能依赖于所述被依赖件;
所述被依赖件获取所述被依赖件的版本兼容规则;其中,所述版本兼容规则与所述被依赖件当前运行版本相对应;所述被依赖件的每个运行版本设置有对应的版本兼容规则;所述版本兼容规则包括符合兼容性的第一规则及不符合兼容性的第二规则;
若所述版本号符合所述第一规则且不符合所述第二规则,则确定所述依赖件与所述被依赖件具有兼容性;
所述被依赖件将所述兼容结果发送给所述依赖件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010203600.3/2.html,转载请声明来源钻瓜专利网。