[发明专利]监控底层接口是否变化的方法及装置有效
申请号: | 201310024949.0 | 申请日: | 2013-01-23 |
公开(公告)号: | CN103942131B | 公开(公告)日: | 2018-07-06 |
发明(设计)人: | 马骁;陈祎;潘在亮 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/30 | 分类号: | G06F11/30 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 底层接口 动态链接库 监控 有效地 检测 | ||
本发明涉及监控底层接口是否变化的方法及装置,其中监控底层接口是否变化的方法包括步骤:获取底层接口的第一版本与第二版本的所有动态链接库,获取所有动态链接库的所有接口以及所有接口的函数;判断第一版本与第二版本所有对应接口的函数是否相同;以及若第一版本与第二版本所有对应接口的函数相同,则判断为第一版本与第二版本的底层接口相同,若第一版本与第二版本所有对应接口的函数不相同,则判断为第一版本与第二版本的底层接口不相同。本发明可以快速、有效地检测出底层接口的变化。
技术领域
本发明涉及底层接口监控技术领域,特别涉及监控底层接口是否变化的方法及装置。
背景技术
目前,主流的系统架构,例如软件架构等,大都采用分层架构,它会将一些通用的和相对独立的功能封装成接口,并以动态链接库(Dynamic Link Library,Dll)的方式提供。这些提供接口的动态链接库就组成了底层。而上层要使用这些功能的时候,就需要加载这些动态链接库以使用这些动态链接库提供的接口。随着时间的发展,底层接口也随着时间和软件功能的变化而变化(例如底层接口的第二版本相对于底层接口的第一版本有变化),而这样的变化会影响上层的功能和使用,这些变化对于上层来说是十分重要的。因此,监控底层接口的这种变化并告知上层使用者是十分必要的。
现有的监控底层接口变化的方法是通过扫描源代码的方式。即需要将源代码文件拉到本地,使用微软提供的DTE接口,对源代码文件进行逐个的扫描,通过关键字识别源代码的二进制文件的底层的接口,然后对底层的接口进行比较以监控底层接口是否变化。但是,使用源代码监控底层接口是否变化的方法主要有以下问题:一方面,需要拉取源代码到本地进行源代码的比较,这就需要源代码的权限,而源代码的权限是比较敏感的资源,获取过程比较复杂。另一方面,需要扫描全部源代码以进行接口的比较,而现在大多数产品的源代码量是比较大的,因此进行源代码比较这个过程是非常耗时的。而且,为了解决耗时问题,会采取分布式的方法进行,但部署成分布式又增加了实现的难度。
发明内容
因此,本发明提供监控底层接口是否变化的方法及装置,以快速、有效地检测出底层接口的变化。
具体地,本发明实施例提供的一种监控底层接口是否变化的方法,其包括步骤:获取底层接口的第一版本与第二版本的所有动态链接库,获取所有动态链接库的所有接口以及所有接口的函数;判断第一版本与第二版本所有对应接口的函数是否相同;以及若第一版本与第二版本所有对应接口的函数相同,则判断为第一版本与第二版本的底层接口相同,若第一版本与第二版本所有对应接口的函数不相同,则判断为第一版本与第二版本的底层接口不相同。
另外,本发明实施例提供的一种监控底层接口是否变化的装置,其包括:获取单元、判断单元以及监控单元,其中,获取单元,用于获取底层接口的第一版本与第二版本的所有动态链接库,获取所有动态链接库的所有接口以及所有接口的函数;判断单元,用于判断第一版本与第二版本所有对应接口的函数是否相同;监控单元,用于在第一版本与第二版本所有对应接口的函数相同,则判断为第一版本与第二版本的底层接口相同,若第一版本与第二版本所有对应接口的函数不相同,则判断为第一版本与第二版本的底层接口不相同。
由上述实施例可知,本发明通过判断第一版本与第二版本所有对应接口的函数是否相同,若相同,则判断为第一版本与第二版本的底层接口相同,若不相同,则判断为第一版本与第二版本的底层接口不相同。因本发明通过判断所有对应接口的函数是否变化而监控底层接口是否变化。从而相较现有技术的源代码比较方式,本发明可以快速、有效地检测出底层接口的变化。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1是本发明实施例提供的监控底层接口是否变化的方法的步骤流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310024949.0/2.html,转载请声明来源钻瓜专利网。