0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Java永不落伍

OSC开源社区 来源:OSC开源社区 2023-04-20 11:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

唱衰 Java 的声音由来已久。

尤其是近几年,云原生时代的到来,软件的交付方式发生了根本性变化,Java 遭受了诸多质疑。

传统领域的 Java 开发,交付的是 Java 应用本身,具体体现在以 “jar”“war” 的形式交付,而云原生最佳实践,则是基于微服务形式,以容器为基本交付单位,并在 K8S 中编排。云原生应用要求更快速的启动、强调资源按量消费,弹性扩展,以及可观测性等。就这一层面而言,在云原生时代,Java 的缺陷确实是天然存在的。

“事实上,Java 技术在云原生时代也在不停地进化。” 面对唱衰 Java 的诸多论调,阿里云程序语言与编译器团队负责人、Java Champion 李三红选择理性看待。

” 比如更多支持容器部署的特性已经加入到 OpenJDK 版本。 一直被人诟病的 Java 启动慢的问题,目前基于 OpenJDK 技术的几个创新项目正在多个不同方向探索,包括 CRaC (Coordinated Restore at Checkpoint) 、Leyden,以及由阿里和 Google 作为主要贡献者的 Fast Startup Incubator 等项目。在资源弹性使用方面,由 Alibaba Dragonwell 提供的 ElasticHeap 功能,主要目的是解决云计算环境下 Java 内存资源使用的弹性问题。 最后,OpenJDK 的 JFR 以及 JFR Streaming 技术为构建 Java 云原生可观测工具提供了重要的技术支撑。“

Java 面临的挑战,不仅仅是云原生

李三红认为,从 1995 年 Java 1.0 发布算起, Java 技术这二十多年的发展,大致存在一明一暗两条线的驱动。“一条暗线,是指 Java 或者说支撑 Java 的底层 JVM 技术适配计算机架构的演进与发展。一条明线,是指 Java 作为一个开发者工具,本质是要面向业务领域解决业务问题的,所以自然而然地推动了 Java 在云原生,AI 等方向的演进,解决这些领域内碰到的问题与挑战。”

后摩尔时代,算力增长放缓,更多利用多核,SIMD(单指令多数据流)等并行计算技术,以及异构来释放更大的算力。相较于 C/C++ 这些传统编译型语言,Java 处在软件栈的更高抽象级别,自带 Java 标准库,以及运行时环境,这也给 Java 创新带来了更多的空间以及可能性。

李三红指出, Java 在多核、异构加速领域做了多方面的探索,适应与优化。比如,OpenJDK 孵化的 Vector API 项目,依赖 CPU 的 SIMD 指令,获得计算性能的成倍提升。即将发布的 OpenJDK 19 引入了 Virtual Threads (Preview),旨在帮助 Java 开发者高效处理并发 (尤其针对 IO 密集型场景) 。而在异构领域,早 2014 年 JVM 技术峰会,AMD 就分享了 Sumatra 项目,尝试实现 JVM 与 Heterogeneous System Architecture 目标硬件交互。由 The University of Manchester 发起的 TornadoVM 项目,目标是帮助 Java 开发者不需要了解 GPU 编程语言或者相关的 GPU 体系结构知识就可以编写面向异构的并行程序。

在 AI 方向上,Java 也在与时俱进。据李三红介绍,在企业计算领域,Java 是被使用最多的语言之一,但对于机器学习领域的开发,Java 一直缺乏标准支持,这个方向其实在 JCP-EC 讨论也比较多。

基于 Java SE 技术,在 JCP 流程内推动并最终在 2022 年定稿的 JSR 381 规范,其目标就是为不同领域的 Java 机器学习开发提供通用的可重用设计。JSR 381 定义了标准的 Java API,提供了基本机器学习、图像分类和对象识别方面的处理能力。“依赖于不同的机器学习平台,如 TensorFlow, MXNet 以及 DeepNett 等,JSR-381 提供了不同的实现。对于 Java 生态内的开发者来说,不必再去学习 Python, 可以依赖 JSR-381 VisRec API 去构建你的 AI 应用。”

现实中,Java 应用的版本升级是较为缓慢的。Java 11 (OpenJDK11)距离 2018 年发布已经过去四年多,目前国内大多数的用户仍然停留在 Java 8。李三红认为,动力不足是多方面的,对开发者来说最直接的原因可能是担心升级后兼容性带来的稳定性问题,会直接影响业务的连续性。

这种问题并不罕见。令人振奋的是,处于 Java 生态中的企业正在贡献自己的力量。阿里内部在大规模地往 Java 11、 Java 17 迁移的时候,总结了不少的经验,并且将这些经验通过工具的方式沉淀下来。最后阿里开源了 EMT4J (Eclipse Migration Toolkit for Java) ,能够帮助 Java 应用无缝升级最新版本 JDK, 主要支持从 Java 8 到 Java 11,以及 17 的升级。

李三红还补充道,对于 Java 版本的升级问题,还可以从另一个角度 ——Software Sustainability—— 来进一步探讨。

“由 Titus Winter 等编写的《Software Engineering at Google - Lessons Learned from Programming Over Time》一书中,谈到了组织的 Codebase Sustainability 概念,强调了两个核心理念: 第一,无论应对的是技术需求,还是业务需求,软件代码应当可以做一切应该做的改变。 第二,这些改变带来的影响是安全的。

“回到 Java 版本升级这个问题,我们在开发 Java 应用的时候,建议应用架构师们把 Java 版本升级纳入到 Software Sustainability 这个维度下考量,对代码开发规范进行相关的约束。例如,不要让你的代码依赖 JDK 内部不公开的 API,不要让你的实现依赖特定的 JDK 版本行为,不要使用被 Deprecated 的 API 等等。架构的目标应当考虑 Code Sustainability,让你的 Java 应用可以在任何时候根据实际需要平滑升级到不同 JDK 版本,不应当因为代码缺乏 Sustainability 而导致的尽量少的版本升级。”

李三红 对 Java 的未来充满信心,源于他在 JVM 领域耕耘多年,不仅深入了解 Java 特性,并且有能力进行创新性研究。

在加入阿里之前,李三红一直在 IBM Java 技术中心,参与 J9 虚拟机开发,期间领导了 JVM 多租户项目。目前就职于阿里云,领导程序语言与编译器团队,主要的工作是结合阿里、蚂蚁及云上各业务的需求,在编译器、语言运行时等基础领域进行研究创新。目前,在语言工具链这块,已经形成 Alibaba Dragonwell (Java 生态), Alibaba Cloud Compiler (C++ 生态) 等多个产品来支撑其业务,语言工具链相关的开源技术也在为龙蜥社区的开发者提供支持。

2020 年,李三红获得了 Java 技术领导者社区 Java Champions 推荐,被授予 Java Champion 荣誉。Java Champion 由 Java 社区成员提名,并且必须得到现有 Java Champions 成员的一致同意。唯有为 Java / JVM 生态系统做出重要贡献的专家才能获此荣誉。

去年,阿里云第三次入选 JCP 最高执行委员会 (JCP-EC), 作为阿里云在 JCP-EC 的代表,李三红一直在参与 JCP-EC 领导下的相关 Java 标准讨论制定工作。

GOTC 2023 很荣幸邀请到李三红担任 “基础设施与软件架构” 分论坛的出品人。该分论坛入选的议题,是经过了李三红和大会组委会深入讨论,精心安排的。希望从多个维度,最大程度覆盖了基础软件各领域的介绍分享。

既有最底层芯片技术RISC-V) 的话题,也包括了像 C++、Java 语言运行时的内容,还包含了应用最广泛的中间件 Dubbo、RocketMQ、 Kafka 等内容的分享。

2023 年 5 月 28 日,GOTC 2023 “基础设施与软件架构” 分论坛将为开发者们提供基础架构领域最丰富、最前沿、以及最具技术性的内容分享。期待各位的莅临。

c2e5c596-def5-11ed-bfe3-dac502259ad0.jpg

全球开源技术峰会(Global Open-source Technology Conference),简称 GOTC,是由开放原子开源基金会、 Linux 基金会亚太区、上海浦东软件园和开源中国联合发起的,面向全球开发者的一场盛大开源技术盛宴。 5 月 27 日至 28 日,GOTC 2023 将于上海举办为期 2 天的开源行业盛会。大会将以行业展览、主题发言、特别论坛、分论坛的形式展现,与会者将一起探讨元宇宙、3D 与游戏、eBPF、Web3.0、区块链等热门技术主题,以及开源社区、AIGC、汽车软件、开源商业化、开源教育培训、云原生等热门话题,探讨开源未来,助力开源发展。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    20

    文章

    3020

    浏览量

    117102
  • AI
    AI
    +关注

    关注

    91

    文章

    42239

    浏览量

    303275
  • 容器
    +关注

    关注

    0

    文章

    543

    浏览量

    23067

原文标题:Java永不落伍

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    黑马-Java+AI新版V16零基础就业班百度云网盘下载+Java+AI全栈开发工程师

    传统开发升级,Java+AI 融合开发精讲——构建下一代企业级智能应用的技术栈重塑 在人工智能加速渗透至各行各业的当下,Java 开发者正面临一个关键转折点:要么被动旁观 AI 能力的边缘化集成
    发表于 05-01 11:29

    [完结15章]Java转 AI高薪领域必备-从0到1打通生产级AI Agent开发

    拒绝原地踏步:Java工程师AI转型的底层技术破局之道 在软件工程范式被大语言模型(LLM)彻底颠覆的今天,传统的“Java CRUD boy”正面临着前所未有的生存危机。当业务逻辑的生成可以被
    发表于 04-30 13:46

    TL-JAVA+AI大模型智能应用开发+Java+AI全栈开发工程师

    获课:pan.baidu.com/s/16MoRr6EApmBczMhHgKxYaw?pwd=w4wg 数字化未来升级:Java+AI 全栈驱动行业智能转型 在科技迅速发展的今天,数字化转型已成为
    的头像 发表于 04-28 16:43 162次阅读

    Java并发编程的“基石”——多线程概念初识

    AI 算力调度底层:Java 并发基石与未来技术融合 当我们在屏幕前流畅地与大语言模型对话,或是看着自动驾驶系统瞬间处理海量视觉数据时,往往只会惊叹于 AI 算法的精妙。然而,在这层绚丽的应用外衣
    发表于 04-16 18:50

    尔特电子启动全新合作伙伴计划

    德国被动元器件制造商尔特电子(Würth Elektronik)在其尊享级合作伙伴德州仪器公司举行启动大会,正式开启全新合作伙伴计划。该计划采用三级模型,为参与企业在四个层面提供架构清晰的支持。
    的头像 发表于 03-02 09:40 496次阅读

    精准绘世:当无人机穿越屏障,测绘永不“失焦”

    精准,不应因环境而妥协。当技术能够穿越物理屏障,测绘的视野便将再无盲区。这便是组合导航的力量:让每一次飞行,都坚定地贡献于构建一个更清晰、更可信赖的数字世界。 精准绘世,从此永不“失焦”。
    的头像 发表于 01-15 15:59 298次阅读

    Arm Neoverse CPU上大代码量Java应用的性能测试

    Java 是互联网领域广泛使用的编程语言。Java 应用的一些特性使其性能表现与提前编译的原生应用(例如 C 程序)大相径庭。由于 Java 字节码无法直接在 CPU 上执行,因此通常运行时在
    的头像 发表于 11-05 11:25 1042次阅读
    Arm Neoverse CPU上大代码量<b class='flag-5'>Java</b>应用的性能测试

    Java效率提升指南:5个Java工具选型建议及Perforce JRebel和XRebel介绍

    企业级Java环境越来越复杂,真正的破局点,可能不在“人”,而在于“工具”。5个实用建议,帮你理清Java工具的选型思路。
    的头像 发表于 09-11 13:59 2190次阅读
    <b class='flag-5'>Java</b>效率提升指南:5个<b class='flag-5'>Java</b>工具选型建议及Perforce JRebel和XRebel介绍

    尔特电子推出全新高频同轴连接器系列

    尔特电子(Würth Elektronik)新增推出适用于1.13、1.32及1.37毫米50欧姆电缆的高频同轴连接器:WR-SMA、WR-SMB、WR-MCX和WR-MMCX系列。
    的头像 发表于 09-01 16:48 1634次阅读

    TPU编程竞赛|第九届集创赛“算能杯”收官,22支队竞逐创佳绩

    2025年8月24日上午,第九届全国大学生集成电路创新创业大赛(以下简称“集创赛”)全国总决赛颁奖盛典于上海滴水湖会议中心圆满落幕。本届大赛“算能杯”赛题吸引了全国顶尖队的积极参与,经过各分
    的头像 发表于 08-29 09:22 1580次阅读
    TPU编程竞赛|第九届集创赛“算能杯”收官,22支队<b class='flag-5'>伍</b>竞逐创佳绩

    拼多多API价格战预警,竞品监控不落人后!

    在电商竞争白热化的时代,价格战已成为商家生存的关键战场。拼多多作为领先平台,其API(应用程序编程接口)提供了强大的价格监控工具,帮助企业预警价格波动、实时追踪竞品动态,确保在市场竞争中不落
    的头像 发表于 08-01 14:27 1556次阅读

    小鹏汽车亮相2025古德德速度节

    作为全球最具声望的汽车文化盛会之一,英国古德德速度节(Goodwood Festival of Speed,简称FoS)已成为连接汽车历史传承与未来创新的顶级舞台。
    的头像 发表于 07-16 14:49 1126次阅读

    比亚迪携三款车型登陆2025古德德速度节

    近日,2025年古德德速度节(Goodwood Festival of Speed)于英国西萨塞克斯郡古德德庄园正式启幕。比亚迪旗下高端品牌腾势和个性化品牌方程豹亮相现场。
    的头像 发表于 07-16 11:37 976次阅读

    SiFive 上海芯科技邀您参加2025 RISC-V中国峰会!

    SiFive上海芯科技邀您共襄盛举身为RISC-V的发明者与领导厂商,SiFive上海芯科技正在改变未来计算的典范,将RISC-V的无限潜力引领至世上最高性能与数据密集型应用中。SiFive所建
    的头像 发表于 07-01 15:58 854次阅读
    SiFive 上海芯<b class='flag-5'>伍</b>科技邀您参加2025 RISC-V中国峰会!

    EtherCAT运动控制卡应用开发教程之Java

    运动控制卡的Java开发及DLL调用
    的头像 发表于 06-13 14:29 1095次阅读
    EtherCAT运动控制卡应用开发教程之<b class='flag-5'>Java</b>