腾讯捐赠编译器基础软件,为中国开发者“添了双筷子”
![腾讯捐赠编译器基础软件,为中国开发者“添了双筷子”](https://static001.geekbang.org/infoq/1d/1d0e062a43a7202f36c9fa1af2bfabb5.jpeg)
6 月 11 日,在 2023 开放原子全球开源峰会上,腾讯正式宣布将打磨多年的 Java 应用操作系统“OpenKona”捐赠给开放原子开源基金会,联合基金会以及数以百万计开发者,共建国产编译器基础软件,推动数字基础设施加速突破。
![](https://static001.geekbang.org/infoq/2a/2a7c6188a99bf7d826121855dfec8622.jpeg?x-oss-process=image%2Fresize%2Cp_80%2Fauto-orient%2C1)
在软件开发领域,Java 编程语言拥有庞大的程序员群体及丰富的商业应用生态系统。Java 编写的程序必须依赖 JDK(Java Development Kit,Java 开发工具包)才能够编译、运行,JDK 也因此被称为 Java 应用操作系统,并广泛应用于许多关系国计民生的重要领域。此前,JDK 的研发、发行和服务多由国外厂商主导,为了推动国产基础软件核心组件自主,亟需建设支持国内技术生态和标准的、开放源代码的 Java 标准版。
早在 2019 年上半年,腾讯就开始投身 OpenKona 的研发。目前,腾讯内部超 90%的 JDK 为 OpenKona,部署量超过百万服务器实例,涉及全部的业务线,并服务超过 120 家外部公司。
相对 OpenJDK,OpenKona 支持国产 CPU 和操作系统,包括 ARM、X86 等;操作系统的适配方面,支持银河麒麟操作系统、统信 UOS 以及腾讯自研服务器操作系统 TencentOS Server。OpenKona 国密套件还首次实现了从基础算法簇到公钥基础设施,再到安全通信协议的全链路国密特性。
在 JDK 版本研发技术硬实力上,OpenKona 基于真实的 Java 业务需求,在大数据、广告、游戏等多个领域应用中打磨, 持续输出和迁移高价值特性。主要体现在以下 4 个方面:
1. 启动、预热加速:
自研 KonaAOT 静态编译技术降低大量短任务启动(大数据、微服务等场景)造成的 CPU 资源消耗;节省 80%的即时编译导致的 CPU 开销,大数据 MR 场景性能/吞吐量提升 10%;
2. 峰值性能:
率先在 Java11 迁移并生产落地 Java VectorAPI,在广告训练、OLAP 查询引擎领域投入使用;相比 OpenJDK 取得 30~50%的性能提升;
3. GC 停顿:
OpenKona11 支持了前沿版本 ZGC 的完整功能,实际业务中最大支持 TB 级 Java Heap,且 99.99%的请求时延满足 SLA 要求;在 G1GC 上也有大量低时延的优化提升,支持大数据 NN 使用 300G 的 Heap,长暂停时间缩短 50%-70%;
4. 开发效率:
在 OpenKona8/11 上实现 Java 原生协程 KonaFiber(兼容社区前沿版本 Loom API);简化 Java 高并发开发;主流 Java 生产版本开箱即用并支持无缝切换 Jav 前沿版本的 Loom 实现;
腾讯此次捐赠的 OpenKona 是基于 OpenJDK 开源项目打造的发行版之一,性能比社区版本提高 15%以上,尤其在大数据、机器学习和云计算等场景具备较高性能。
相较于代码开源,腾讯捐赠的不仅包括全部源代码,还涵盖了软件包、产权、商标、构建与测试基础设施、社区基础设施等。
“借助此次捐赠,腾讯希望联合开放原子开源基金会,携手广大的开发者一起,打造开源创新标杆,共建国产基础软件的繁荣生态。”腾讯云副总裁刘煜宏表示。
把 OpenKona 捐赠给开放原子开源基金会,不仅意味着项目进入新的运营阶段,而且因为开源基金会的独立且非盈利性质,为全球技术开发者提供技术交流共享的平台。
![](https://static001.geekbang.org/infoq/ab/ab9f208026f2e9a32db3a37bc992eba3.jpeg?x-oss-process=image%2Fresize%2Cp_80%2Fauto-orient%2C1)
目前,腾讯 OpenKona 团队已拥有多位 OpenJDK Reviewer、Committer 和 Author。在 Open JDK 开源社区中,腾讯 OpenKona 连续六次荣获 Open JDK 中国企业贡献度排名第一。腾讯也是少数能够设计 Java 标准 API 的贡献者。OpenKona 还积极参与了腾讯和开放原子开源基金会深入合作的作为“开放原子校源行“活动,为高校学子们带来 JDK 基础技术解读和大量实战经验。
评论