[发明专利]分析微服务架构下函数调用关系的方法及装置在审
| 申请号: | 202210917970.2 | 申请日: | 2022-08-01 | 
| 公开(公告)号: | CN115344305A | 公开(公告)日: | 2022-11-15 | 
| 发明(设计)人: | 张国昊;马晓刚 | 申请(专利权)人: | 北京百度网讯科技有限公司 | 
| 主分类号: | G06F8/75 | 分类号: | G06F8/75;G06F8/71;G06F8/74;G06F9/445 | 
| 代理公司: | 北京钲霖知识产权代理有限公司 11722 | 代理人: | 李英艳;杨继成 | 
| 地址: | 100085 北京市*** | 国省代码: | 北京;11 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 分析 微服 架构 函数 调用 关系 方法 装置 | ||
本公开提供了一种分析微服务架构下函数调用关系的方法及装置,涉及计算机技术领域,尤其涉及静态程序分析领域。具体实现方案为:获取多个函数作为静态指针分析起点;根据静态指针分析起点对目标代码库进行静态程序分析,并根据分析结果生成函数调用图,函数调用图中包括基于静态指针分析起点确定的多个调用边,调用边用于表征以静态指针分析起点作为调用者节点进行函数调用的函数调用关系;遍历函数调用图中包括的多个调用边,得到存储至图数据库中的目标调用边。
技术领域
本公开涉及计算机技术领域,尤其涉及静态程序分析领域。
背景技术
静态程序分析(Static program analysis)是指在不实际执行程序的条件下,对代码的语义和行为进行分析的方法。随着近些年Go语言的快速发展,静态程序分析技术在Go函数调用关系和编码规范检查等方面也应用非常广泛。
但当前已有静态程序分析工具通常仅支持以主函数作为指针分析起点,对于一些依赖动态调用处理请求的程序(例如HTTP Server),以主函数为指针分析起点的静态分析由于动态调用边的不可达问题,会损失大量函数调用关系分析结果。
发明内容
本公开提供了一种分析微服务架构下函数调用关系的方法及装置。
根据本公开的一方面,提供了一种分析微服务架构下函数调用关系的方法,包括:获取多个函数作为静态指针分析起点;根据所述静态指针分析起点对目标代码库进行静态程序分析,并根据分析结果生成函数调用图,所述函数调用图中包括基于所述静态指针分析起点确定的多个调用边,所述调用边用于表征以静态指针分析起点作为调用者节点进行函数调用的函数调用关系;遍历所述函数调用图中包括的多个调用边,得到存储至图数据库中的目标调用边。
根据本公开的另一方面,提供了一种分析微服务架构下函数调用关系的装置,包括:获取模块,用于获取多个函数作为静态指针分析起点;分析模块,用于根据所述静态指针分析起点对目标代码库进行静态程序分析,并根据分析结果生成函数调用图,所述函数调用图中包括基于所述静态指针分析起点确定的多个调用边,所述调用边用于表征以静态指针分析起点作为调用者节点进行函数调用的函数调用关系;处理模块,用于遍历所述函数调用图中包括的多个调用边,得到存储至图数据库中的目标调用边。
根据本公开的另一方面,提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的方法。
根据本公开的另一方面,提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述的方法。
根据本公开的另一方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述的方法。
本公开提供的分析微服务架构下函数调用关系的方法,可以获取更全面的函数调用关系,生成更全面的函数调用图,基于函数调用图得到的分析结果也相应更加准确。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例提供的一种分析微服务架构下函数调用关系的方法流程图;
图2是根据本公开实施例提供的另一种分析微服务架构下函数调用关系的方法流程图;
图3是根据本公开实施例提供的又一种分析微服务架构下函数调用关系的方法流程图;
图4是根据本公开实施例提供的又一种分析微服务架构下函数调用关系的方法流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210917970.2/2.html,转载请声明来源钻瓜专利网。





