An embodiment of the invention provides a method, a device and a device for positioning the performance problem of a Java application. Including the localization method of Java application performance problems provided by the invention: according to the positioning of the command input by the user, for at least one Java process information; for each target server system resources, according to the Java all the process information, determine the target Java target system resources consumption process is the highest from at least one Java process in the process of the target Java; according to all process information, the problem of file access; the name of the Java file to execute statement application problem of file includes each process corresponding to the target Java and the line number in the Java file. The method, device and equipment of the performance problem positioning of Java application program in the embodiment of the invention are simple in positioning process and high in location efficiency.
【技术实现步骤摘要】
Java应用程序性能问题定位的方法、装置和设备
本专利技术实施例涉及通信工程技术,尤其涉及一种Java应用程序性能问题定位的方法、装置和设备。
技术介绍
当Java应用程序的运行出现问题时,快速的定位Java应用程序的性能问题,可以快速的解决该性能问题,以使Java应用程序恢复正常运行。目前,后端开发用户可通过查看大量的Java应用程序日志,获取Java应用程序最近的运行过程,逐步猜测测试以定位Java应用程序性能问题;或者用户回溯Java应用程序或者Java应用程序启动时设置的参数最近的改动,确定改动部分是否为造成性能问题的原因。但是上述Java应用程序性能定位方法,需要耗费大量的人力,过程复杂,从而定位效率低。
技术实现思路
本专利技术实施例提供一种Java应用程序性能问题定位的方法、装置和设备,以克服现有技术中Java应用程序性能定位方法比较复杂造成的定位效率低的技术问题。第一方面,本专利技术实施例提供一种Java应用程序性能问题定位的方法,应用于服务器,包括:根据用户输入的问题定位指令,获取至少一个Java进程的进程信息;对于服务器的每个目标系统资源,根据所有 ...
【技术保护点】
一种Java应用程序性能问题定位的方法,应用于服务器,其特征在于,包括:根据用户输入的问题定位指令,获取至少一个Java进程的进程信息;对于服务器的每个目标系统资源,根据所有Java进程的进程信息,从所述至少一个Java进程中确定消耗所述目标系统资源最高的目标Java进程;根据所有目标Java进程的进程信息,获取问题定位文件;所述问题定位文件包括每个目标Java进程对应的应用程序的当前执行语句所在的Java文件的名称和在所述Java文件中的行号,所述问题定位文件用于指示用户根据Java文件的名称和行号,获取至少一个当前执行程序语句,以判断至少一个当前执行程序语句是否为问题程序语句。
【技术特征摘要】
1.一种Java应用程序性能问题定位的方法,应用于服务器,其特征在于,包括:根据用户输入的问题定位指令,获取至少一个Java进程的进程信息;对于服务器的每个目标系统资源,根据所有Java进程的进程信息,从所述至少一个Java进程中确定消耗所述目标系统资源最高的目标Java进程;根据所有目标Java进程的进程信息,获取问题定位文件;所述问题定位文件包括每个目标Java进程对应的应用程序的当前执行语句所在的Java文件的名称和在所述Java文件中的行号,所述问题定位文件用于指示用户根据Java文件的名称和行号,获取至少一个当前执行程序语句,以判断至少一个当前执行程序语句是否为问题程序语句。2.根据权利要求1所述的方法,其特征在于,所述根据所有目标Java进程的进程信息,获取问题定位文件,包括:对于每个目标Java进程,根据所述目标Java进程包括的至少一个线程的线程信息,从所述至少一个线程中,确定消耗相应目标系统资源最高的目标线程;对于每个目标线程,根据所述目标线程对应的方法栈信息,确定所述目标线程对应的Java应用程序的当前执行程序语句所在的Java文件的名称和当前执行的程序语句在所述Java文件中的行号;根据所有Java文件的名称和与相应Java文件对应的行号,得到问题定位文件。3.根据权利要求2所述的方法,其特征在于,在对于每个目标Java进程,根据所述目标Java进程包括的至少一个线程的线程信息,从所述至少一个线程中,确定消耗相应目标系统资源最高的目标线程之前,所述方法还包括:对于每个目标Java进程,获取所述目标Java进程包括的所有线程的线程信息。4.根据权利要求2所述的方法,其特征在于,至少一个目标系统资源包括:系统CPU、系统内存和磁盘I/O;对于服务器的每个目标系统资源,根据所有Java进程的进程信息,从所述至少一个Java进程中确定消耗所述目标系统资源最高的目标Java进程,包括:根据所有Java进程的进程信息,从至少一个Java进程中确定系统CPU使用率最高的第一目标Java进程、实际占用系统内存最高的第二目标Java进程和磁盘I/O利用率最高的第三目标Java进程;则所述对于每个目标Java进程,根据所述目标Java进程包括的至少一个线程的线程信息,从所述至少一个线程中,确定消耗相应目标系统资源最高的目标线程,包括:对于第一目标Java进程,据所述第一目标Java进程包括的至少一个第一线程的线程信息,从至少一个第一线程中,确定系统CPU使用率最高的第一目标线程;对于第二目标Java进程,据所述第二目标Java进程包括的至少一个第二线程的线程信息,从至少一个第二线程中,确定实际占用系统内存最高的第二目标线程;对于第三目标Java进程,据所述第三目标Java进程包括的至少一个第三线程的线程信息,从至少一个第三线程中,确定磁盘I/O利用率最高的第三目标线程。5.根据权利要求2所述的方法,其特征在于,在根据至少一个目标Java进程的进程信息,得到问题定位文件之前,所述方法还包括:对于每个目标Java进程,获取所述目标Java进程对应的Java应用程序运行过程中的实际配...
【专利技术属性】
技术研发人员:王俊芳,
申请(专利权)人:泰康保险集团股份有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。