GraalVM for JDK 21 发布了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Ayanokouji
V2EX    程序员

GraalVM for JDK 21 发布了

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

    String name = "Joan";
    String info = STR."My name is \{name}";
    dreamlike
        18
    dreamlike  
       2023 年 9 月 20 日 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  
       2023 年 9 月 20 日
    native 要是能方便的解决反射问题就好了,之前做的 Java 客户端程序,使用 native 打包后内存占用降低了一个数量级,太强大了.
    Bazingal
        20
    Bazingal  
       2023 年 9 月 20 日
    @wangxiaodong 这个字符串模板语法太奇葩了
    zzzkkk
        21
    zzzkkk  
       2023 年 9 月 20 日 via Android
    @QWE321ASD
    用的什么客户端库 swt swing 还是其他?
    kid1412621
        22
    kid1412621  
       2023 年 9 月 20 日
    @wangxiaodong #17 那个转义符看着好难受
    XIVN1987
        23
    XIVN1987  
       2023 年 9 月 20 日
    @wangxiaodong

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

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


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

    高级,,那 STR. 可不可以自定义 S. 实现??
    kid1412621
        29
    kid1412621  
       2023 年 9 月 20 日
    @wangxiaodong #26 同意 但是 API 都定义好了 以后要改只有再起一套
    zhouquanbest
        30
    zhouquanbest  
       2023 年 9 月 20 日
    Android 刚用到 Java11
    还得是 Kotlin
    lvjing2
        31
    lvjing2  
       2024 年 3 月 26 日 via Android
    关注启动速度和内存占用的可以了解下蚂蚁集团开源的 koupleless.io 啊,可以让存量应用 10 倍提升的框架
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1861 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 16:12 PVG 00:12 LAX 08:12 JFK 11:12
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86