JavaWeb应用性能诊断方法及装置的制造方法

文档序号:9452984阅读:574来源:国知局
Java Web应用性能诊断方法及装置的制造方法
【技术领域】
[0001]本发明涉及应用性能管理领域,尤其涉及一种Java Web应用性能诊断方法、装置及系统。
【背景技术】
[0002]Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,具有卓越的通用性、高效性、平台移植性和安全性。Java Web是用Java技术来解决相关web互联网领域的技术总和。
[0003]为了监控WEB服务器应用的性能,存在两类性能监测工具。一类工具通过追踪HTTP的请求过程来记录应用的性能、网络信息和故障,此类工具具有可以从服务器外部发起、模拟用户发起网络请求、不针对具体的服务器编程语言等特征。然而此类工具有以下几个缺点:1)模拟用户发起请求,如果采样数量少,数据会不准确,如果采样数量大,会对服务器造成额外的压力2)仅能记录应用的总响应性能,无法更深入的追踪到代码级别,出现服务器性能问题时无法定位具体原因。
[0004]另一类工具可对应用服务器的性能进行级监控,例如JProfiler。此类工具可以查看当前应用的对象、对象引用、内存、CPU使用情况、线程、线程运行情况(阻塞、等待等),同时可以查找应用内存使用得热点,即:哪个对象占用的内存比较多;或者CPU热点,即:哪个方法占用较大的CPU资源。然而此类工具有以下几个缺点:1)系统资源消耗大;2)仅监控性能数据,无法提供故障信息;3)性能数据不直观,只有函数名称及其对应性能,没有按照用途进行分类,大部分没有专业技能的人员不了解数据含义。

【发明内容】

[0005]针对传统技术的上述缺陷,本发明实施例提供一种Java Web应用性能诊断方法及
目-ο
[0006]本发明实施例提供一种Java Web应用性能诊断方法,方法包括如下步骤:
[0007]获取处理HTTP请求的应用的应用配置信息,所述应用配置信息包括是否开启监控服务开关、是否开启记录代码执行过程开关、代码执行时间阈值;
[0008]根据所述应用配置信息对所述应用开启监控服务;
[0009]所述应用结束时,获取所述应用的代码执行时间;
[0010]根据所述应用配置信息和所述应用的代码执行时间记录所述应用的代码的执行过程数据。
[0011]在另一实施例中,所述获取处理HTTP请求的应用的应用配置信息,包括:
[0012]获取HTTP请求;
[0013]根据所述HTTP请求获取请求的URL地址;
[0014]根据所述URL地址从哈希表中获取处理所述HTTP请求的应用的应用配置信息,所述哈希表中存储了所述URL地址与所述应用的应用配置信息的映射关系。
[0015]在另一实施例中,所述根据所述应用配置信息对所述应用开启监控服务,包括:
[0016]根据所述应用配置信息,判断所述应用的监控服务开关是否处于开启状态;
[0017]若所述监控服务开关处于开启状态,则开启针对所述应用的监控服务。
[0018]在另一实施例中,所述根据所述应用配置信息和所述应用的代码执行时间记录所述应用的代码的执行过程数据,包括:
[0019]判断所述应用的代码执行时间是否大于所述代码执行时间阈值,且所述应用的所述记录代码执行过程开关开启;
[0020]若是,则记录所述应用的代码的执行过程数据。
[0021]在另一实施例中,所述应用包括Http Servlet、数据库访问、Framework、Memcache>NoSql、Except1n。
[0022]在本实施例的技术方案中,通过获取处理HTTP请求的应用的应用配置信息,根据应用配置信息对该应用开启监控服务;应用结束时,获取该应用的代码执行时间;根据应用配置信息和应用的代码执行时间记录该应用的代码的执行过程数据。实现依据不同的的HTTP请求中的URL地址从Java Web应用性能诊断装置中读取动态的应用设置,避免研发人员的介入。
[0023]本发明实施例提供一种Java Web应用性能诊断装置,所述装置包括:
[0024]获取模块,用于获取处理HTTP请求的应用的应用配置信息,所述应用配置信息包括是否开启监控服务开关、是否开启记录代码执行过程开关、代码执行时间阈值;
[0025]监控模块,用于根据所述应用配置信息对所述应用开启监控服务;
[0026]处理模块,用于所述应用结束时,获取所述应用的代码执行时间;
[0027]记录模块,用于根据所述应用配置信息和所述应用的代码执行时间记录所述应用的代码的执行过程数据。
[0028]在另一实施例中,所述获取模块包括:
[0029]第一获取单元,用于获取HTTP请求;
[0030]第二获取单元,用于根据所述HTTP请求获取请求的URL地址;
[0031 ] 第三获取单元,用于根据所述URL地址从哈希表中获取处理所述HTTP请求的应用的应用配置信息,所述哈希表中存储了所述URL地址与所述应用的应用配置信息的映射关系。
[0032]在另一实施例中,所述监控模块包括:
[0033]第一判断单元,用于根据所述应用配置信息,判断所述应用的监控服务开关是否处于开启状态;
[0034]监控单元,用于若所述监控服务开关处于开启状态,则开启针对所述应用的监控服务。
[0035]在另一实施例中,所述记录模块包括:
[0036]第二判断单元,用于判断所述应用的代码执行时间是否大于所述代码执行时间阈值,且所述应用的所述记录代码执行过程开关开启;
[0037]记录单元,用于若所述应用的代码执行时间大于所述代码执行时间阈值,且所述应用的所述记录代码执行过程开关开启,则记录所述应用的代码的执行过程数据。
[0038]在另一实施例中,所述应用包括Http Servlet、数据库访问、Framework、Memcacheλ NoSql、Except1n。
[0039]在本实施例的技术方案中,通过获取处理HTTP请求的应用的应用配置信息,根据应用配置信息对该应用开启监控服务;应用结束时,获取该应用的代码执行时间;根据应用配置信息和应用的代码执行时间记录该应用的代码的执行过程数据。实现依据不同的的HTTP请求中的URL地址从Java Web应用性能诊断装置中读取动态的应用设置,避免研发人员的介入。
【附图说明】
[0040]图1为本发明JavaWeb应用性能诊断方法第一实施例流程图;
[0041]图2为本发明Java Web应用性能诊断方法第二实施例流程图
[0042]图3为本发明Java Web应用性能诊断装置第一结构示意图;
[0043]图4为本发明Java Web应用性能诊断装置第二结构示意图。
【具体实施方式】
[0044]多个Java应用运行于Java Web服务器的JVM虚拟机之上,客户端发送HTTP请求至Java Web服务器时,Java Web服务器会立刻启动一个对应的应用处理该HTTP请求。本发明各实施例主要用于监测Java Web服务器处理HTTP请求的应用性能。
[0045]图1为本发明Java Web应用性能诊断方法第一实施例流程图,如图1所示,本发明实施例所提供的Java Web应用性能诊断方法由Java Web应用性能诊断装置执行,Java Web应用性能诊断装置可采用软件/硬件实现,该方法包括:
[0046]步骤S100,获取处理HTTP请求的应用的应用配置信息;
[0047]具体地,客户端发送HTTP请求至Java Web服务器,Java Web服务器启动处理该HTTP请求的应用,Java Web应用性能诊断装置获取该HTTP请求。该HTTP请求中包括对应应用的URL地址,Java Web应用性能诊断装置根据URL地址获取处理该HTTP请求的应用的应用配置信息,其中应用配置信息中包括是否开启监控服务开关、是否开启记录代码执行过程开关、代码执行时间阈值。
[0048]在另一实施例中,Java Web应用性能诊断装置通过SevletContext获取应用名称,根据应用名称获取处理HTTP请求的应用的应用配置信息。
[0049]在另一实施例中,用户可以预先设置某个应用的应用配置信息。例如用户在JavaWeb应用性能诊断装置中指定仅检测某个虚拟主机下的应用;或禁用对某个应用或URL的监控服务。
[0050]步骤S102,根据所述应用配置信息对所述应用开启监控服务;
[0051]判断应用配置
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1