CN103955423B - 一种国产jvm的测试评估方法 - Google Patents
一种国产jvm的测试评估方法 Download PDFInfo
- Publication number
- CN103955423B CN103955423B CN201310723786.5A CN201310723786A CN103955423B CN 103955423 B CN103955423 B CN 103955423B CN 201310723786 A CN201310723786 A CN 201310723786A CN 103955423 B CN103955423 B CN 103955423B
- Authority
- CN
- China
- Prior art keywords
- test
- jvm
- tpcw
- time
- run
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明公开了一种国产JVM的测试评估方法,该方法包括如下步骤:1、搭建测试环境;2、使用Jtreg测试JVM的功能;3、使用SpecJVM2008测试JVM基准性能;4、使用TPCW测试JVM集成系统性能;5、使用TPCW测试JVM稳定性。本发明具备的有益技术效果是:填补国产平台JVM测试方法空白,加速国产平台JVM发展进程,适用于各国产平台的JVM测试工具。
Description
技术领域
本发明涉及一种测试评估方法,尤其涉及一种国产JVM的测试评估方法。
背景技术
Java语言的一个非常重要的特点就是与平台的无关性。而使用JVM(Java VirtualMachine)是实现这一特点的关键,它使得Java语言在不同平台上运行时不需要重新编译。JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。目前针对JVM测试通常是利用JVM测试工具,如Jtreg、SPECJvm、JRockit等,通过设置参数,对JVM进行功能及性能测试,这些工具虽然可以在一定程度上对JVM进行测试,但尚未形成一套系统的测试评估方法。对于国产平台,更没有一套完整的JVM测试评估方法。
发明内容
本发明的目的在于提供一种国产JVM的测试评估方法,解决现有技术存在的缺憾。
本发明采用如下技术方案实现:
一种国产JVM的测试评估方法,其特征在于,该方法包括如下步骤:
1、搭建测试环境:
1)Hotspot运行环境:
要在龙芯平台上运行Jtreg,首先需要对Hotspot进行编译,使其适用于龙芯平台,步骤如下:
1a)设置环境变量,指定编译用的JDK:
export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
1b)设置其他环境变量:
export ALLOW_DOWNLOADS=true,让ant可以自动下载所需的资源)
export EXTRA_LIBS=/usr/lib/x86_64-linux-gnu/libasound.so.2,依赖库配置。
1c)自检:make sanity;
1d)编译:make hotspot,编译结果为libjvm.so文件;
1e)将libjvm.so文件拷贝到jdk的相应目录下,通常为client目录下;
1f)运行Jtreg,执行测试;
2):SpecJvm2008运行环境:
在龙芯平台上,编译好环境,SPECJVM2008包括纯解释模式和纯编译模式,通过两种编译模式来测试JVM的性能情况,纯解释模式的命令如下:Java-Xint-Xms800m-Xmx800m-jar SPECJVM2008.jar-peak-ikv,纯编译模式的命令如下:Java-Xcomp-Xms800m-Xmx800m-jar SPECJVM2008.jar-peak-ikv。
3)TPCW测试环境:
使用TPCW工具进行性能测试,需要搭建TPCW测试环境,主要包括应用服务器和数据库服务器的搭建。
TPCW应用是指按交易处理性能委员会(TPC)的TPCW标准规范开发的应用。TPCW模拟了一个网上书店,通过执行一系列具有代表性的Web事务来模拟典型的电子商务环境。其功能包括书籍的浏览、查询、订购等。
搭建测试环境所需配置如下:
2、使用Jtreg测试JVM的功能:在/jdk/jre/bin目录下,直接运行Jtreg,当一个用例执行完成后,会在运行结束时自动生成结果,为了能够使Jtreg自动运行自带的多个测试用例,通常在测试中引用Test工具目录,这样对多个测试用例进行打包测试。当测试完成后会在当前目录自动生成report目录,用户进入report目录可以查看每个用例的运行结果。
测试结果如下:
3、使用SpecJVM2008测试JVM基准性能:SPECJVM2008是一种通用的多线程Java基准测试工具,它能够反映JRE(Java Runtime Environment)运行Java的环境集合(包含JVM标准实现及Java核心类库)性能表现。
运行./run.Py-tjvm2008命令,执行测试;测试完成后生成xml文档,结果中包括的性能进行测试有:JVM的编译时间、图片渲染时间、加密算法时间、数据库相关逻辑、音频解码时间、Socket序列化、压缩程序时间、XML转换、蒙特卡罗算法、快速傅立叶变换、LU分解,根据给出的数据结果判断JVM的性能;
测试结果如下:
4、使用TPCW测试JVM集成系统性能,TPCW是TPC所制定的一个基准(benchmark),主要是用在交易型网络电子商务(transactional web e-Commerce)上面,目的为测试系统的效能并给予量化。
通过TPCW基准测试工具,应用于网上书店模拟业务活动中,用户可以按照自行的测试需求设置参数,参数包括:运行时间、并发用户数、思考时间,设置好后,即可执行测试,用户可以打开jconsole、spotlight等监测工具监测Jvm内存使用情况、CPU使用率、内存使用率、磁盘使用率、网络吞吐量、连接数等,根据这些指标对测试情况进行综合分析。并对TPCW模型中的14个基本事务执行情况进行分析,以找出系统瓶颈所在。测试完成后,会生成测试报告。用户可根据结果中提供的WIPS(点击率)、WIRT average(平均响应时间)、WIRT95%(95%用户的响应时间)、complete session(事务完成数)、error session(事务失败率)来综合评判系统的性能。
测试结果如下:
5、使用TPCW测试JVM稳定性:通过TPCW基准测试工具长时间对系统施加压力,也可以测试JVM的稳定性。用户按照测试需求设置参数,参数包括:运行时间、并发用户数、思考时间。
进一步的,一般并发用户数为设置为最大并发用户数的60%,运行时间一般可设置24小时,3×24小时或5×24小时。按需求设置好后,可执行稳定性测试。)
本发明具备的有益技术效果是:填补国产平台JVM测试方法空白,加速国产平台JVM发展进程,适用于各国产平台的JVM测试工具。
附图说明
图1是国产JVM测试评估方法的应用示意图。
具体实施方式
通过下面对实施例的描述,将更加有助于公众理解本发明,但不能也不应当将申请人所给出的具体的实施例视为对本发明技术方案的限制,任何对部件或技术特征的定义进行改变和/或对整体结构作形式的而非实质的变换都应视为本发明的技术方案所限定的保护范围。
一种国产JVM的测试评估方法,其特征在于,该方法包括如下步骤:
1、搭建测试环境:
1)Hotspot运行环境:
要在龙芯平台上运行Jtreg,首先需要对Hotspot进行编译,使其适用于龙芯平台,步骤如下:
1a)设置环境变量,指定编译用的JDK:
export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
1b)设置其他环境变量:
export ALLOW_DOWNLOADS=true,让ant可以自动下载所需的资源)
export EXTRA_LIBS=/usr/lib/x86_64-linux-gnu/libasound.so.2,依赖库配置。
1c)自检:make sanity;
1d)编译:make hotspot,编译结果为libjvm.so文件;
1e)将libjvm.so文件拷贝到jdk的相应目录下,通常为client目录下;
1f)运行Jtreg,执行测试;
2)SpecJvm2008运行环境:
在龙芯平台上,编译好环境,SPECJVM2008包括纯解释模式和纯编译模式,通过两种编译模式来测试JVM的性能情况,纯解释模式的命令如下:Java-Xint-Xms800m-Xmx800m-jar SPECJVM2008.jar-peak-ikv,纯编译模式的命令如下:Java-Xcomp-Xms800m-Xmx800m-jar SPECJVM2008.jar-peak-ikv。
3)TPCW测试环境:
使用TPCW工具进行性能测试,需要搭建TPCW测试环境,主要包括应用服务器和数据库服务器的搭建。
TPCW应用是指按交易处理性能委员会(TPC)的TPCW标准规范开发的应用。TPCW模拟了一个网上书店,通过执行一系列具有代表性的Web事务来模拟典型的电子商务环境。其功能包括书籍的浏览、查询、订购等。
搭建测试环境所需配置如下:
2、使用Jtreg测试JVM的功能:在/jdk/jre/bin目录下,直接运行Jtreg,当一个用例执行完成后,会在运行结束时自动生成结果,为了能够使Jtreg自动运行自带的多个测试用例,通常在测试中引用Test工具目录,这样对多个测试用例进行打包测试。当测试完成后会在当前目录自动生成report目录,用户进入report目录可以查看每个用例的运行结果。
测试结果如下:
3、使用SpecJVM2008测试JVM基准性能:SPECJVM2008是一种通用的多线程Java基准测试工具,它能够反映JRE(Java Runtime Environment)运行Java的环境集合(包含JVM标准实现及Java核心类库)性能表现。
运行./run.py-tjvm2008命令,执行测试;测试完成后生成xml文档,结果中包括的性能进行测试有:JVM的编译时间、图片渲染时间、加密算法时间、数据库相关逻辑、音频解码时间、Socket序列化、压缩程序时间、XML转换、蒙特卡罗算法、快速傅立叶变换、LU分解,根据给出的数据结果判断JVM的性能;
测试结果如下:
4、使用TPCW测试JVM集成系统性能,TPCW是TPC所制定的一个基准(benchmark),主要是用在交易型网络电子商务(transactional web e-Commerce)上面,目的为测试系统的效能并给予量化。
通过TPCW基准测试工具,应用于网上书店模拟业务活动中,用户可以按照自行的测试需求设置参数,参数包括:运行时间、并发用户数、思考时间,设置好后,即可执行测试,用户可以打开jconsole、spotlight等监测工具监测Jvm内存使用情况、CPU使用率、内存使用率、磁盘使用率、网络吞吐量、连接数等,根据这些指标对测试情况进行综合分析。并对TPCW模型中的14个基本事务执行情况进行分析,以找出系统瓶颈所在。测试完成后,会生成测试报告。用户可根据结果中提供的WIPS(点击率)、WIRT average(平均响应时间)、WIRT95%(95%用户的响应时间)、complete session(事务完成数)、error session(事务失败率)来综合评判系统的性能。
测试结果如下:
5、使用TPCW测试JVM稳定性:通过TPCW基准测试工具长时间对系统施加压力,也可以测试JVM的稳定性。用户按照测试需求设置参数,参数包括:运行时间、并发用户数、思考时间。
进一步的,一般并发用户数为设置为最大并发用户数的60%,运行时间一般可设置24小时,3×24小时或5×24小时。按需求设置好后,可执行稳定性测试。)
当然,本发明还可以有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可以根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (2)
1.一种国产JVM的测试评估方法,其特征在于,该方法包括如下步骤:(1)搭建测试环境:
1)Hotspot运行环境:
要在龙芯平台上运行Jtreg,首先需要对Hotspot进行编译,使其适用于龙芯平台,步骤如下:
1a)设置环境变量,指定编译用的JDK:
export LANG=CALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
1b)设置其他环境变量:
export ALLOW_DOWNLOADS=true,让ant可以自动下载所需的资源
export EXTRA_LIBS=/usr/lib/x86_64-linux-gnu/libasound.so.2,依赖库配置;
1c)自检:make sanity;
1d)编译:make hotspot,编译结果为libjvm.so文件;
1e)将libjvm.so文件拷贝到jdk的相应目录下,通常为client目录下;
1f)运行Jtreg,执行测试;
2)SpecJvm2008运行环境:
在龙芯平台上,编译好环境,SPECJVM2008包括纯解释模式和纯编译模式,通过两种编译模式来测试JVM的性能情况,纯解释模式的命令如下:Java-Xint-Xms800m-Xmx800m-jarSPECJVM2008.jar-peak-ikv,纯编译模式的命令如下:Java-Xcomp-Xms800m-Xmx800m-jarSPECJVM2008.jar-peak-ikv;
3)TPCW测试环境:
使用TPCW工具进行性能测试,需要搭建TPCW测试环境,主要包括应用服务器和数据库服务器的搭建;
(2)使用Jtreg测试JVM的功能:在/jdk/jre/bin目录下,直接运行Jtreg,当一个用例执行完成后,会在运行结束时自动生成结果,为了能够使Jtreg自动运行自带的多个测试用例,通常在测试中引用Test工具目录,这样对多个测试用例进行打包测试,当测试完成后会在当前目录自动生成report目录,用户进入report目录可以查看每个用例的运行结果;
(3)使用SpecJVM2008测试JVM基准性能:
运行./run.py-t jvm2008命令,执行测试;测试完成后生成xml文档,结果中包括的性能进行测试有:JVM的编译时间、图片渲染时间、加密算法时间、数据库相关逻辑、音频解码时间、Socket序列化、压缩程序时间、XML转换、蒙特卡罗算法、快速傅立叶变换、LU分解,根据给出的数据结果判断JVM的性能;
(4)使用TPCW测试JVM集成系统性能:
通过TPCW基准测试工具,应用于网上书店模拟业务活动中,用户可以按照自行的测试需求设置参数参数包括:运行时间、并发用户数、思考时间,设置好后,即可执行测试;
(5)使用TPCW测试JVM稳定性:
通过TPCW基准测试工具长时间对系统施加压力,用户按照测试需求设置参数,参数包括:运行时间、并发用户数、思考时间。
2.根据权利要求1所述的国产JVM的测试评估方法,其特征在于,并发用户数设置为最大并发用户数的60%,运行时间设置为24小时、3×24小时或5×24小时。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310723786.5A CN103955423B (zh) | 2013-12-25 | 2013-12-25 | 一种国产jvm的测试评估方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310723786.5A CN103955423B (zh) | 2013-12-25 | 2013-12-25 | 一种国产jvm的测试评估方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103955423A CN103955423A (zh) | 2014-07-30 |
CN103955423B true CN103955423B (zh) | 2017-01-11 |
Family
ID=51332698
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310723786.5A Active CN103955423B (zh) | 2013-12-25 | 2013-12-25 | 一种国产jvm的测试评估方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955423B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461832B (zh) * | 2015-01-07 | 2017-09-12 | 浪潮(北京)电子信息产业有限公司 | 一种监控应用服务器资源的方法及装置 |
CN108399319B (zh) * | 2017-09-30 | 2021-07-16 | 平安科技(深圳)有限公司 | 源代码保护方法、应用服务器及计算机可读存储介质 |
CN109471788A (zh) * | 2017-12-29 | 2019-03-15 | 北京安天网络安全技术有限公司 | 一种国产操作系统软件自动化测试方法及系统 |
CN113360418B (zh) * | 2021-08-10 | 2021-11-05 | 武汉迎风聚智科技有限公司 | 一种系统测试方法以及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6571389B1 (en) * | 1999-04-27 | 2003-05-27 | International Business Machines Corporation | System and method for improving the manageability and usability of a Java environment |
CN101782868A (zh) * | 2009-01-21 | 2010-07-21 | 国际商业机器公司 | 一种用于对本地方法调用进行性能测试的方法和装置 |
-
2013
- 2013-12-25 CN CN201310723786.5A patent/CN103955423B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6571389B1 (en) * | 1999-04-27 | 2003-05-27 | International Business Machines Corporation | System and method for improving the manageability and usability of a Java environment |
CN101782868A (zh) * | 2009-01-21 | 2010-07-21 | 国际商业机器公司 | 一种用于对本地方法调用进行性能测试的方法和装置 |
Non-Patent Citations (2)
Title |
---|
Andrea Calvagna 等.Automated Conformance Testing of Java Virtual Machines.《Complex,Intelligent,and Software Intensive Systems(CISIS),2013 Seventh International Conference on》.2013,第547-552页. * |
WEB性能测试技术的研究;桑圣洪;《万方学位论文数据库》;20070814;第1-76页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103955423A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cotton | Obit: A development environment for astronomical algorithms | |
McColl et al. | A performance evaluation of open source graph databases | |
US9361211B2 (en) | Automated generation of test cases for regression testing | |
US8615750B1 (en) | Optimizing application compiling | |
Shi et al. | Evaluating scalability bottlenecks by workload extrapolation | |
US9612946B2 (en) | Using linked data to determine package quality | |
CN103955423B (zh) | 一种国产jvm的测试评估方法 | |
US20130167128A1 (en) | Application Compiling | |
Mei et al. | A fuzz testing service for assuring smart contracts | |
CN104516963A (zh) | 一种Excel数据服务器及其应用 | |
Pillai | Software architecture with Python | |
Elia et al. | Understanding interoperability issues of web service frameworks | |
US20150193405A1 (en) | Enhanced testing for application services | |
Papoulias et al. | Mercury: Properties and design of a remote debugging solution using reflection | |
Long et al. | Enabling collaborative testing across shared software components | |
CN109614084A (zh) | web程序及其快速开发框架、开发方法与相关设备 | |
Clarke et al. | A testing strategy for abstract classes | |
Mancini et al. | Performance-driven development of a web services application using MetaPL/HeSSE | |
Baldassari et al. | SLINC: A framework for volunteer computing | |
Wang et al. | Component Monitoring of OSGi-Based Software | |
Shende et al. | Simplifying memory, I/O, and communication performance assessment using TAU | |
KR101506656B1 (ko) | 애플리케이션 품질 관리를 위한 시스템 및 그 방법 | |
Yu et al. | Dataflow tunneling: mining inter-request data dependencies for request-based applications | |
Fabo | Impact of visualization on benchmark accuracy | |
Turnu et al. | The fractal dimension metric and its use to assess object-oriented software quality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |