V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Ayanokouji
V2EX  ›  程序员

GraalVM for JDK 21 发布了

  •  
  •   Ayanokouji · 300 天前 · 3838 次点击
    这是一个创建于 300 天前的主题,其中的信息可能已经有所发展或是发生改变。
    31 条回复    2024-03-26 08:46:01 +08:00
    dbit
        1
    dbit  
       300 天前 via Android
    👍👍昨天白天看了好几次都没发版
    OysterQAQ
        2
    OysterQAQ  
       300 天前
    希望 java 越来越好🥳
    wangxiaodong
        3
    wangxiaodong  
       300 天前
    这玩意儿,大项目又一时不敢改,小项目又不咋关心性能,有点鸡肋,还是 jpackage 直接打包成 exe 务实一些。
    ffLoveJava
        4
    ffLoveJava  
       300 天前
    国内有啥公司或者项目用 graal 吗 三四年之前刚出的时候就很多 但一直没见到落地的实践啊
    Ayanokouji
        5
    Ayanokouji  
    OP
       300 天前
    @wangxiaodong 小项目不在意性能,但在意启动时间,而且应用场景主要还是云原生吧。
    pengtdyd
        6
    pengtdyd  
       300 天前
    貌似现在微服务化、容器化之后对于 JVM 的性能不怎么关注了。。。。
    kuituosi
        7
    kuituosi  
       300 天前   ❤️ 1
    @ffLoveJava 阿里云上大量 java 中间件都是用的 graal ,性能和启动速度提升很大。比如 mq ,polardb parser 等,发现 java 大厂都是优化狂魔。java 的野心很大,在霸占了业务开发之后下一个抢占的目标是 golang 的云原生,只是这个动作有点慢
    kuituosi
        8
    kuituosi  
       300 天前
    @wangxiaodong 这个跟 jpackage 还不太一样,这个是 native 了
    kuituosi
        9
    kuituosi  
       300 天前
    @pengtdyd 大厂在乎啊,能省下好多机器而且能刷 kpi
    wangxiaodong
        10
    wangxiaodong  
       300 天前   ❤️ 1
    @Ayanokouji 我 graalvm 和 jpackage 都玩过,还是觉得大部分项目,jpackage 足矣(不用额外安装 jvm/鼠标一键使用),graalvm 的部分库编译时屡屡不过,云原生的红利其实是给云平台的,跟最终用户关系不大。
    jptx
        11
    jptx  
       300 天前
    native-image 对我们还是有用的,我们的很多内部维护工具、运维工具之类的,都编译成了 native 可执行文件,主打一个随用随丢,快速启动。而且语言是 Java ,所以大家直接上手,不需要再学 Go 之类的其他语言
    leisifung
        12
    leisifung  
       300 天前
    @dbit 我们是东 8 区时间。我们是 19 号,美国可能是 18 号的。
    xingjue
        13
    xingjue  
       300 天前
    @kuituosi 做云原生还是不适合 生态决定的
    jptx
        14
    jptx  
       300 天前
    昨天夜里 YouTube 上可热闹了,半夜 12 点多看到 Java 在直播,GraalVM 也在直播,Spring 官方也在发视频,全在讲 Java 21
    cubecube
        15
    cubecube  
       300 天前
    @wangxiaodong 可以不编译 native ,当普通的 jdk 用,他的 jit 也有一定的优势
    cubecube
        16
    cubecube  
       300 天前
    @kuituosi 我没发现到处在用的例子呢,ali 有自己的 jdk ,因为之前 graalvm-ee 需要授权费,感觉大厂引入没那么快。
    wangxiaodong
        17
    wangxiaodong  
       300 天前
    @cubecube
    @kuituosi
    相比 graalvm ,我更看好 wasm 在云原生的前途; JDK21 的改变里,除了虚拟线程,我更喜欢"JEP 430 字符串模板(预览)":

    String name = "Joan";
    String info = STR."My name is \{name}";
    dreamlike
        18
    dreamlike  
       300 天前 via Android
    这个版本 native image 支持新 ffi api 虽然只有 downcall 但也不错了,gu 支持被移除改为在构建工具脚本里面声明对应组件,简直是重大利好
    新的 o3 优化等级从 spring petcline 测试来看和 graalvm ce jit 模式不相上下,还不错
    https://medium.com/graalvm/graalvm-for-jdk-21-is-here-ee01177dd12d
    QWE321ASD
        19
    QWE321ASD  
       300 天前
    native 要是能方便的解决反射问题就好了,之前做的 Java 客户端程序,使用 native 打包后内存占用降低了一个数量级,太强大了.
    Bazingal
        20
    Bazingal  
       300 天前
    @wangxiaodong 这个字符串模板语法太奇葩了
    zzzkkk
        21
    zzzkkk  
       300 天前 via Android
    @QWE321ASD
    用的什么客户端库 swt swing 还是其他?
    kid1412621
        22
    kid1412621  
       300 天前
    @wangxiaodong #17 那个转义符看着好难受
    XIVN1987
        23
    XIVN1987  
       300 天前
    @wangxiaodong

    为什么要用 STR. 这么长的字符??直接像 Python 那样用单个字符会有什么问题?
    Leviathann
        24
    Leviathann  
       300 天前
    @XIVN1987 STR. 模板处理器,是可以自定义的,比如 SQL. , JSON.

    Scala 就是这么玩的
    TWorldIsNButThis
        25
    TWorldIsNButThis  
       300 天前 via iPhone
    @Leviathann 还有 js 的 tagged templates
    wangxiaodong
        26
    wangxiaodong  
       300 天前
    @XIVN1987 越短,冲突的情况就大,比如类名重复,误写,还会加大编译器的语法分析,长点的话,就比较保守安全。


    @kid1412621 我觉得 java 能走出第一步就很欣慰了,用着舒服不舒服慢慢进化。
    QWE321ASD
        27
    QWE321ASD  
       300 天前
    @zzzkkk 用的是 awt 和 fx17 以及一些 fx 的 ui 库
    XIVN1987
        28
    XIVN1987  
       300 天前
    @Leviathann

    高级,,那 STR. 可不可以自定义 S. 实现??
    kid1412621
        29
    kid1412621  
       300 天前
    @wangxiaodong #26 同意 但是 API 都定义好了 以后要改只有再起一套
    zhouquanbest
        30
    zhouquanbest  
       300 天前
    Android 刚用到 Java11
    还得是 Kotlin
    lvjing2
        31
    lvjing2  
       112 天前 via Android
    关注启动速度和内存占用的可以了解下蚂蚁集团开源的 koupleless.io 啊,可以让存量应用 10 倍提升的框架
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1924 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 16:21 · PVG 00:21 · LAX 09:21 · JFK 12:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.