第2章 OpenJ9介绍

OpenJ9,OMR与OpenJDK

    Eclipse OpenJ9 是一个 Java 虚拟机(JVM),它是运行 Java 应用程序的引擎,而 OpenJDK 是一个完整的开发工具包,包含其他组件,如Java 类库以及 JVM。默认情况下,OpenJDK 使用名为 Hotspot 的 JVM。简单地说,OpenJ9 是一个 JVM 替代方案,可将其作为 OpenJDK 二进制文件的一部分。

    而OpenJ9其自身是基于IBM开源的OMR项目所构建,OMR项目由一个高度集成的开放源码C和c++组件,可用于构建大量的语言,运行时支持许多不同的硬件和操作系统平台。这些组件包括但不限于:内存管理,线程处理,平台端口(抽象)库,诊断支持,监控支持,垃圾收集和本地实时编译。OMR的意图在于让实现语言的人能够重用IBM在Java运行时方面所投入的数百开发人年所取得的成果,能够受益的包含已有的语言如Ruby、Python、Javascript等等,它还能加快新语言的创建过程。

    OpenJ9,OMR和OpenJDK的关系如下图所示:


        在上图中,箭头起点表示了上游的开源项目,而这点可以通过运行java -version的输出可以看到,如下:

openjdk version "1.8.0_162"

OpenJDK Runtime Environment (build 1.8.0_162-b12)

Eclipse OpenJ9 VM (build openj9-0.8.0, JRE 1.8.0 Linux amd64-64 Compressed References 20180315_120 (JIT enabled, AOT enabled)

OpenJ9   - e24e8aa9

OMR      - 3e8296b4

JCL      - ee1e77df1d based on jdk8u162-b12)


OpenJ9的性能测试

让我们来看看OpenJ9给出官方测试结果,在测试中所使用的负载是daytrader7这个基准测试项目,其地址是:https://github.com/wasdev/sample.daytrader7,它是一个围绕在线股票交易系统范例构建的应用程序,该应用程序允许用户登录,查看其投资组合,查询股票报价以及买入或卖出股票股票;借助基于Web的加载驱动程序(如Apache JMeter),DayTrader提供的实际工作负载可用于衡量和比较各种供应商提供的Java平台企业版(Java EE)应用程序服务器的性能。除了完整的工作负载之外,应用程序还包含一组用于各种Java EE组件和通用设计模式的功能和性能测试的原语。 DayTrader的新设计涵盖Java EE 7,包括新的WebSockets规范。其他Java EE特性包括JSP,Servlet,EJB,JPA,JDBC,JSF,CDI,Bean验证,JSON,JMS,MDB和事务(同步和异步/两阶段提交)。

其性能的测试结果查看:https://www.eclipse.org/openj9/oj9_performance.html#g1,其测试结果如下图所示:

1)启动后的内存消耗


2)在负载压力平稳后的内存消耗


3)系统启动耗时


4)吞吐量


5)在CPU受限环境中的测试


小结

从这些测试结果中,与Hotspot相比OpenJ9有如下的优势:

 1)启动时的内存占用减少了66%

 2)负载稳定后的内存占用减少了63%

3)启动时间缩短了42%

4)吞吐量相近

5)在CPU受限的环境中能更快的达到最大吞吐量

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文章图片上传不正常,如需文档,可联系微信:1017429387 目录 1 安装... 4 1.1 配置探针... ...
    Mrhappy_a7eb阅读 11,634评论 0 5
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,735评论 0 38
  • 一个人心中都有一个人这个人不是爱人,也不是亲人,却胜似亲人。她知道你的秘密,你知道她的秘密。你们隔了很远,你们一年...
    和光知守阅读 2,394评论 0 6
  • 《2017-11-26》 景学峰YS17024 【连续1天打卡】 A、今日完成情况 @信念三篇 3遍 完成100%...
    景烽诚阅读 1,313评论 1 0
  • 黄海云_e90b阅读 936评论 0 0