一种对对象的执行性能进行监控的方法、装置及系统的制作方法

文档序号:8365299阅读:180来源:国知局
一种对对象的执行性能进行监控的方法、装置及系统的制作方法
【技术领域】
[0001]本发明涉及互联网信息数据的分析方法,更具体地,涉及一种对对象的执行性能进行监控的方法。
【背景技术】
[0002]随着互联网的日益普及,越来越多地企业通过Web应用向用户提供各种产品和服务。与传统的企业内使用的专业软件不同,现在的系统采用分布式、虚拟化的架构。因此,软件的开发者和运营者对于性能的监控更加困难。开发者一般仅仅在发布产品前做有限的模拟性能测试,但这种测试的环境与实际商业运行的环境相去甚远,难以反映真实环境下可能出现的问题。例如,在繁忙时段用户可能在网站购物时尝试多次支付仍不能成功,或者在智能手机的应用使用过程中出现没有响应的情况。然而,开发者却不能及时获得关于代码性能的反馈,更无法了解问题的起源并做出相应修正。结果由于性能体验的问题造成用户的满意度下降,从而给企业营收带来巨大损失。为此,有效地分析web性能显得尤为重要。
[0003]申请号为CN101316185B的发明专利公开了一种基于日志分析的定位系统资源瓶颈的方法。它提出:生成业务访问日志,加载监控软件从而对系统的硬件和应用性能数据进行监控和采集;分析该业务访问日志并得到分析结果。但是该方法实时性不够,客户端往往在故障的时候才会上报日志;并且日志数据不够精确,无法进行代码级别的追踪,难以快速定位性能瓶颈。
[0004]因此,需要能够实时反馈性能监控数据、快速准确定位性能瓶颈的性能监控方案。

【发明内容】

[0005]为此,本发明提供一种对对象的执行性能进行监控的方法、装置及系统,以力图解决或者至少缓解上面存在的至少一个问题。
[0006]根据本发明的一个方面,提供一种对对象的执行性能进行监控的方法,该方法在服务器中执行,服务器与性能监控服务器相连接,该方法包括步骤:检测加载第一对象的操作,该第一对象能够被执行以完成相应逻辑;根据监控列表确定所检测到的第一对象是否为监控目标;当确定该第一对象为监控目标时,在第一对象中插装监控模块以生成第二对象;当要执行第一对象时,执行第二对象以完成执行第一对象时的相应逻辑;在第二对象执行期间,执行在第二对象中的监控模块,以便获取完成相应逻辑的执行性能信息;以及每隔预定时间将所获取的执行性能信息发送给性能监控服务器。
[0007]可选地,在根据本发明的对对象的执行性能进行监控的方法中,监控列表包括预定义的监控对象信息。
[0008]可选地,在根据本发明的对对象的执行性能进行监控的方法中,监控列表还包括用户根据实际情况自定义的监控对象信息。
[0009]可选地,在根据本发明的对对象的执行性能进行监控的方法中,监控对象信息包括下列中的至少一种:对象相对应的类、接口、过滤器、以及该对象对应的类、接口、过滤器中定义的方法。
[0010]可选地,在根据本发明的对对象的执行性能进行监控的方法中,在第一对象中插装监控模块以生成第二对象的步骤包括:读取第一对象的结构,判断插装位置;将监控模块插入到相应的插装位置,生成第二对象。
[0011]可选地,在根据本发明的对对象的执行性能进行监控的方法中,执行性能信息至少包括下列数据中的一个或多个:执行时间、线程信息、错误信息。
[0012]可选地,在根据本发明的对对象的执行性能进行监控的方法中,还包括步骤:每隔预定时间将执行性能信息发送给性能监控服务器,并且清理缓存。
[0013]可选地,在根据本发明的对对象的执行性能进行监控的方法中,插装位置包括下列位置中的一个或者多个:第一对象开始执行的位置;第一对象中的方法开始执行和/或结束执行的位置;以及第一对象中的方法结束执行的位置。
[0014]根据本发明的另一方面,提供了一种对对象的执行性能进行监控的装置,该装置驻留在服务器中,服务器与性能监控服务器相连接,该装置包括:监控单元,适于检测服务器中加载第一对象的操作,第一对象能够被执行以完成相应逻辑;目标确认单元,适于根据监控列表确定所检测到的第一对象是否为监控目标;处理单元,适于在确定第一对象为监控目标时,在第一对象中插装监控模块以生成第二对象;控制单元,适于在执行第一对象时,执行第二对象以完成执行第一对象时的相应逻辑,并且执行第二对象中的监控模块,以便获取完成相应逻辑的执行性能信息;以及输出接口,适于每隔预定时间将执行性能信息发送给性能监控服务器。
[0015]可选地,在根据本发明的对对象的执行性能进行监控的装置中,监控列表包括预定义的监控对象信息。
[0016]可选地,在根据本发明的对对象的执行性能进行监控的装置中,监控列表还包括用户根据实际情况自定义的监控对象信息。
[0017]可选地,在根据本发明的对对象的执行性能进行监控的装置中,监控对象信息包括下列中的至少一种:对象相对应的类、接口、过滤器、以及该对象对应的类、接口、过滤器中定义的方法。
[0018]可选地,在根据本发明的对对象的执行性能进行监控的装置中,处理单元包括:判断单元,适于根据第一对象的结构判断插装位置;对象生成单元,适于将监控模块插入到相应的插装位置,生成第二对象。
[0019]可选地,在根据本发明的对对象的执行性能进行监控的装置中,执行性能信息至少包括下列数据中的一个或多个:执行时间、线程信息、错误信息。
[0020]可选地,在根据本发明的对对象的执行性能进行监控的装置中,控制单元还适于在每隔预定时间将执行性能信息发送给所述性能监控服务器,清理缓存。
[0021]可选地,在根据本发明的对对象的执行性能进行监控的装置中,插装位置包括下列位置中的一个或者多个:第一对象开始执行的位置;第一对象中的方法开始执行和/或结束执行的位置;以及第一对象中的方法结束执行的位置。
[0022]根据本发明的另一方面,提供了一种服务器,该服务器上布置有如上所述的对对象的执行性能进行监控的装置。
[0023]根据本发明的另一方面,提供了一种对对象的执行性能进行监控的系统,包括性能监控服务器、如上所述的服务器、以及用户终端。
[0024]根据本发明的对对象的执行性能进行监控的方案,当检测到要加载的对象为监控目标(这可以根据定义好的类、接口、过滤器、以及类、接口、过滤器中定义的方法等来确定)时,会自动在其中插装监控代码,以便在执行该对象时,通过执行监控代码而能够获取其执行性能信息,不仅省去了开发者手动添加监控代码的麻烦,而且实现了代码级别的追踪,获取导致性能变慢的SQL语句,实时跟踪执行较慢的业务处理,从而精确地找出造成性能问题的原因。
【附图说明】
[0025]为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
[0026]图1示出了根据本发明的一个示例性实施方式的对对象的执行性能进行监控的系统100的不意图;
[0027]图2示出了根据本发明的一个示例性实施方式的对对象的执行性能进行监控的方法200的流程图;
[0028]图3示出了根据本发明的一个示例性实施方式的对对象的执行性能进行监控的装置300的结构图。
【具体实施方式】
[0029]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0030]图1示出了根据本发明的一个示例性实施方式的对对象的执行性能进行监控的系统100的示意图。该性能监控系统包括性能监控服务器110、由企业部署和运营的企业服务器120和多个用户计算终端130。企业服务器120可以向用户计算终端130提供各种服务,如Web或者应用服务。用户计算终端130上安装有web浏览器
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1