首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏iSharkFly

    什么是 OpenJ9

    OpenJ9 好在我们现在有了 OpenJ9 了。不管怎么样,我们还是得感谢感谢 IBM。 在 IBM 中的 Java 机器中,是不使用 HotSpot 虚拟机的。 Eclipse OpenJ9 是 OpenJDK 的替代品吗 不是。 Eclipse OpenJ9 是否与 Hotspot 相同 Hotspot 和 Eclipse OpenJ9 都是可以包含在 OpenJDK 中的 Java 虚拟机,但它们都具有不同的功能。 为什么要使用 Eclipse OpenJ9 而不是默认的 JVM 如果你正为应用程序寻找企业级的运行时环境,建议使用 Eclipse OpenJ9 构建 OpenJDK。 OpenJ9 是完全开源的,官方地址为:https://www.eclipse.org/openj9/ 所有 OpenJ9 的源代码都可以在 GitHub 上找到。

    90040编辑于 2022-08-29
  • 来自专栏服务端思维

    微服务中使用 OpenJ9 JVM 内存占用降60%(相对HotSpot)

    本篇介绍 OpenJ9 JVM,通过将 HotSpot 更换为 OpenJ9,内存占用能降低至少 60%,而启动时间也能快 40% 以上,效果立竿见影。 OpenJ9 简介 OpenJ9 的前身是IBM的 J9 Java 虚拟机,主要服务于IBM企业级软件产品,是一款高性能的JVM。 OpenJ9 擅长于内存管理,同时针对容器化做了很多工作,按官方说法是: more container-aware 。 下面摘自 OpenJ9 的 Release History,选择了部分内容,可快速一览: 2017.11 支持使用 OpenJDK8 构建 OpenJ9 2018.3 发布 0.8.0:OpenJ9 开始支持各平台 基于 OpenJDK8(OpenJ9)时内存消耗稳定在 300M左右。 ? 切换到 OpenJ9 便利吗 如果使用Docker,直接更换基础镜像即可,容器场景下更能发挥 OpenJ9 的作用。

    5.6K30发布于 2019-08-18
  • 来自专栏崩天的勾玉

    来看看这款内存占用降低4倍的jvm虚拟机openJ9

    简单地说,OpenJ9 是一个 JVM 替代方案,可将其作为 OpenJDK 二进制文件的一部分。 01 前言 如果说hotspot是Java虚拟机「武林盟主」的话,那openj9可以称之为「天下第二」。 02 对比测试 最近在研究openj9虚拟机,相对于耳熟能详的hotspot来说可能不是很出名,但是在adoptopenjdk的伴随下也渐渐为人所知,我在体验后发现确实是非常好用,官方对openj9做了测试 03 小结 这只是一个简单的测试,但是不难看出hotspot和openj9的区别。 ,或者内存吃紧,不妨尝试一下openj9

    3.4K20编辑于 2021-12-22
  • 来自专栏iSharkFly

    来聊聊 OpenJDK 和 JVM 虚拟机

    IBM Semeru 使用的是 OpenJ9 的虚拟机。 IBM 和 Eclipse 基金会的渊源 IBM 将自己的开源的东西捐献给了 Eclipse 基金会。 到目前为止,AdoptOpenJDK 一直在使用 Hotspot 和 OpenJ9 VM 生成 OpenJDK 二进制文件。 随着 Adopt 迁移到 Eclipse,法律限制阻止了新的 Eclipse Adoptium 小组生产/发布基于 OpenJ9 的二进制文件。 因此,IBM 将以 IBM Semeru Runtimes 的家族名称生产基于 OpenJ9 的 2 种风格的二进制文件,即 Open 和 Certified。 我的理解就是因为 OpenJ9 已经捐献给了 Eclipse 基金会了。从法律角度来说和 IBM 已经没有什么关系了,这个是属于 Eclipse 基金会的东西。

    1.1K00编辑于 2022-08-21
  • 来自专栏慕容千语的架构笔记

    Java程序员需要了解的—容器中的JVM资源该如何被安全的限制?

    Runtime Environment (build 9.0.4-adoptopenjdk+12) Eclipse OpenJ9 VM (build openj9-0.9.0, JRE 9 Linux , JRE 10 Linux amd64-64-Bit Compressed References 20180813_102 (JIT enabled, AOT enabled) OpenJ9 - OpenJ9 2.IbmOpenJ9所有的版本都能识别到容器限制。 资源利用率 OpenJdk 自动识别到容器限制后,OpenJdk把最大堆设置为了大概容器内存的1/4,对内存的浪费不可谓不大。 关于OpenJ9的的详细介绍你可以从这里了解更多。 对于内存利用率OpenJ9的策略是优于OpenJdk的。

    1.8K30发布于 2019-06-13
  • 来自专栏iSharkFly

    Java native 关键字

    看看 openj9 的源代码就知道了。例如下图上面 openj9 中的 gc,就是 C 实现的。

    32140编辑于 2023-09-14
  • 来自专栏深度学习与python

    静态 Java 现状:为提升启动速度、减少空间占用而编译的本地可执行文件

    目前,除了参与 CRiU(用户空间的检查点 / 恢复)(包括 OpenJDK 的 CRaC 项目和 OpenJ9 的 CRiU 项目),为 OpenJ9 JVM、Java Lambdas 做贡献,将方法句柄引入 我的日常工作是开发 Hotspot JVM(同时也是 OpenJ9 JVM 的项目负责人)和 qbicc 项目:一个实验性的 Java 程序静态编译器,可以作为尝试不同静态 Java 方法的游乐场,帮助探索整个设计空间 我还积极参与了 CRiU(用户空间的检查点 / 恢复)审查,包括 OpenJDK 的 CRaC 项目和 OpenJ9 的 CRiU 项目,因为我看到,检查点 / 恢复和静态 Java 的需求存在很多重叠

    70630编辑于 2022-06-13
  • 来自专栏iSharkFly

    IBM Semeru Windows 下的安装

    semeru 有认证版和非认证版,主要是因为和 OpenJ9 的关系和操作系统的关系而使用不同的许可证罢了,本质代码是一样的。 在 Windows 下没有认证版,直接下开源版就行。 openjdk version "11.0.16" 2022-07-19 IBM Semeru Runtime Open Edition 11.0.16.0 (build 11.0.16+8) Eclipse OpenJ9 0.33.0, JRE 11 Windows 11 amd64-64-Bit Compressed References 20220804_420 (JIT enabled, AOT enabled) OpenJ9

    1K40编辑于 2022-08-29
  • 来自专栏iSharkFly

    IBM Semeru Windows 下的安装

    semeru 有认证版和非认证版,主要是因为和 OpenJ9 的关系和操作系统的关系而使用不同的许可证罢了,本质代码是一样的。在 Windows 下没有认证版,直接下开源版就行。 versionopenjdk version "11.0.16" 2022-07-19IBM Semeru Runtime Open Edition 11.0.16.0 (build 11.0.16+8)Eclipse OpenJ9 0.33.0, JRE 11 Windows 11 amd64-64-Bit Compressed References 20220804_420 (JIT enabled, AOT enabled)OpenJ9

    1.1K10编辑于 2022-08-22
  • 来自专栏码匠的流水账

    聊聊netty的maxDirectMemory

    systemClassLoader = getSystemClassLoader(); ​ // When using IBM J9 / Eclipse OpenJ9 vmName.startsWith("ibm j9") && // https://github.com/eclipse/openj9/blob/openj9-0.8.0 vmName.startsWith("eclipse openj9")) { // Try to get from sun.misc.VM.maxDirectMemory 有个静态属性MAX_DIRECT_MEMORY,它是根据maxDirectMemory0方法来计算的 maxDirectMemory0方法会根据jvm的类型来做不同处理,如果是IBM J9 / Eclipse OpenJ9 有个静态属性MAX_DIRECT_MEMORY,它是根据maxDirectMemory0方法来计算的;maxDirectMemory0方法会根据jvm的类型来做不同处理,如果是IBM J9 / Eclipse OpenJ9

    1.4K20发布于 2019-04-02
  • 来自专栏java

    1 初识JVM

    它广泛应用于服务器和桌面应用程序中‌openJ9 jvm:由IBM开发,专注于高性能和低内存消耗。 OpenJ9 JVM在性能和资源利用方面表现出色,适用于需要高性能和资源优化的应用场景‌graalm: 由Oracle开发,是一个通用虚拟机,支持多种编程语言。

    20610编辑于 2024-12-13
  • 来自专栏Java学习网

    Java生态系统的五个发展趋势

    网络配图 3、发布了Eclipse OpenJ9 今年早些时候,IBM宣布J9虚拟机开源,第一个版本的Eclipse OpenJ9现在已经可以使用,并一直进行及时更新和维护,这为Java开发人员提供了更多的选择机会

    1.8K90发布于 2018-02-27
  • 来自专栏码匠的流水账

    聊聊netty的maxDirectMemory

    systemClassLoader = getSystemClassLoader(); // When using IBM J9 / Eclipse OpenJ9 vmName.startsWith("ibm j9") && // https://github.com/eclipse/openj9/blob/openj9-0.8.0 vmName.startsWith("eclipse openj9")) { // Try to get from sun.misc.VM.maxDirectMemory 有个静态属性MAX_DIRECT_MEMORY,它是根据maxDirectMemory0方法来计算的 maxDirectMemory0方法会根据jvm的类型来做不同处理,如果是IBM J9 / Eclipse OpenJ9 有个静态属性MAX_DIRECT_MEMORY,它是根据maxDirectMemory0方法来计算的;maxDirectMemory0方法会根据jvm的类型来做不同处理,如果是IBM J9 / Eclipse OpenJ9

    2.2K30发布于 2019-04-25
  • 来自专栏安全基础

    JIT测试:Validating JIT Compilers via Compilation Space Exploration

    通过评估,我们收到了 85 份针对三种广泛使用的生产型 JVM(即 HotSpot、OpenJ9 和 Android Runtime)的错误报告。其中,53 个已得到确认或修复,许多还是关键性的。

    60210编辑于 2023-09-14
  • 来自专栏学习Java专栏

    比较 VisualVM、JMC 和异步分析器

    仅使用 API 的分析器可以针对具有相同分析器版本的不同 JVM 版本和供应商(如 OpenJDK 和 OpenJ9)。 我目前正在研究 JDK 增强提案,该提案将官方 AsyncGetCallTrace 版本添加到 OpenJDK; async-profiler 的优点是它的许多特性(如堆采样)、可嵌入性、对其他 JVM(如 OpenJ9 Oracle 最终使用 JDK11 开源了该工具,从那时起,OpenJDK 的 JVM 时间间隔分析工具就没有得到其他 JVM(如 OpenJ9)的支持。 正确性和稳定性 在使用像我介绍过的分析器时请牢记以下几点:它们本身只是软件,与相当大的项目 OpenJDK(或 OpenJ9,就此而言)交织在一起,因此会遇到与他们用来剖析应​​用的典型问题: 测试可以更丰富

    1.1K20编辑于 2023-05-31
  • 来自专栏博岩Java大讲堂

    Java虚拟机--虚拟机发展史

    在2017年9月份,IBM曾宣布开源IBM J9虚拟机,并命名为OpenJ9,已将该项目托管至GitHub,OpenJ9 已贡献给Eclipse基金会。 OpenJ9虚拟机本身是基于 Eclipse OMR项目的核心技术组件,OMR由IBM在2016年贡献给Eclipse基金会。 IBM 一直在持续将资源投入到 Eclipse OpenJ9 和 Eclipse OMR 中,以确保其企业产品能够利用最新的硬体技术。」

    1.8K50发布于 2018-05-11
  • 来自专栏iSharkFly

    IBM Semeru Windows 下的安装 JDK 17

    要搞清楚下载那个版本,请参考文章:来聊聊 OpenJDK 和 JVM 虚拟机 下载地址 semeru 有认证版和非认证版,主要是因为和 OpenJ9 的关系和操作系统的关系而使用不同的许可证罢了,本质代码是一样的

    1.1K40编辑于 2023-03-11
  • 来自专栏深度学习与python

    开源 Java 性能分析器比较:VisualVM、JMC 和 async-profiler

    对于只使用 API 的分析器,同一个版本可以用于不同的 JVM 版本和供应商(如 OpenJDK 和 OpenJ9)。 Async-profiler 的优势在于它的许多特性(如堆采样)、可嵌入性、对其他 JVM(如 OpenJ9)的支持,以及它小巧的代码库,这使得它的适应性非常好。 最终,Oracle 将该工具与 JDK11 一起开源,从那时起,它就成了 OpenJDK JVM 的内置分析工具,不再支持 OpenJ9 等其他 JVM 了。 正确性与稳定性 在使用我所介绍的分析器时,务请记住以下内容:它们本身也是软件,与大型项目 OpenJDK(或 OpenJ9)交织在一起,因此,它们也会遇到与它们所分析应用程序相同的典型问题: 测试可以更丰富

    1.6K10编辑于 2023-08-09
  • 来自专栏iSharkFly

    JVM 的 noverify 启动参数

    none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.如果你使用的是 OpenJ9

    1K20编辑于 2023-03-29
  • 来自专栏iSharkFly

    Java HashMap 在获得 Key 的 Hash 值的时候用的是什么算法

    return J9VMInternals.fastIdentityHashCode(this); } 是不是很奇怪,为什么这个类的名字为:J9VMInternals 这是因为我们的机器装的是 IBM 的 OpenJ9

    80830编辑于 2022-12-03
领券