当前位置:首页 > 每日看点 > 正文内容

jdk21的虚拟线程会促进国内公司升级速度吗?还是说万年不变的你发任你发,我用java8?

卡卷网1年前 (2025-01-17)每日看点174

暂时还不会大规模转21+,估计还要再等2到3年,拭目以待。


21最大的更新就是loom结束了preview正式落地,将一众异步库扫进历史的垃圾桶。

从这个版本开始,做中间件时,netty不再是唯一可选项了。甚至可以说,大多数场景扔掉netty,在保证性能的同时,还能让代码更好维护。

现在oracle helidon提供了许多常用组件,比如http、grpc等,写一些服务已经没啥问题了。
可能很多人还不知道Helidon是什么,给大伙一个直观的认识:Helidon SE可以用来对标Vert.x,Helidon MP可以用来对标Quarkus。

对于老servlet代码,改一个tomcat版本和配置就能无缝切换到loom上,也方便了各大服务升级。

2、3年前go在国内大量增长的时候,有不少业务老大跟风,吭哧吭哧地把java的业务重构成go,有的业务哪怕现在都还没完全重构完,结果现在loom出来了。
不知道当初那些“架构师”、“CTO”会不会被老板骂死。。。(比较一下升级21和用go重写的成本差别~)(不过他们可能也是无奈,毕竟团队可能不重写就没事干了)

loom出来后,再加上native-image,后面也不会再有什么“用go重构java”的需求了,就是可能对打工人不太友好(毕竟升级不会有那么高的人力需求)
(可能很多人知道native-image但不知道tracing agent,这里顺带提一嘴:正常代码 + agent + 放到线上跑2个月 = 自动生成配置文件无缝升级)


目前loom还有一些问题:

有一些历史遗留问题,还需再等各JDBC实现把synchronized删掉改成lock才能发挥最大性能。不过社区考虑的比较多,如果等不及自己统一改一把也不是什么难事。

另外CarrierThreadLocal并没有暴露出来,所以绝大多数的库为了用户友好性,都不会强行add-opens使用它。但是我们可以用一个简单的javaagent做一把hack,把所有有需要的ThreadLocal都改成CarrierThreadLocal(可能还要改一把VirtualThread检查,因为很多库加了个检查然后选择不使用ThreadLocal)。


除开loom,另一个大事件是PanamaAPI基本稳定。在22还有一个API小改动,用反射规避下就能兼容,看起来不会再大改了。

Panama让upcall成为真正可用的特性。之前JNI upcall有点太慢了,而Panama upcall快了几倍,具体数据,几年前网上就有很多人放出来过了,知乎站内就能搜到。
downcall性能其实JNI也挺快的。Panama在downcall上的意义在于,可以省略JNI那样的wrapper,直接加载动态链接库以及根据symbol取函数地址。少一个wrapper可以少一次函数调用。
Panama也给给内存结构做了标准化。现在JVM其实也可以算是支持“结构体”、“union”、“值类型”了。

关于Panama这条线,可以关注下我的Panama Native Interface,是一个代码生成器,工作过程类似于javac -h

vproxy-tools/panama-native-interface: Code Generator for Java and C, making it easier to use Java Panama and Graal Native Image (github.com)

目前我已基于此搞了luamsquic,一部分posix api,一部分dpdk api的Java接入。项目每个功能都有测试用例,而且因为是代码生成器,可以直接从源码层面看到一切细节,可放心使用~


有些答主,比如 @Ivony 说虚拟线程是“语法糖”,说明根本没了解过Java21到底改了什么。也不知道哪来的自信强答各种自己不懂的领域的问题。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/9707.html

分享给朋友:

相关文章

每天5点就下班了,闲着也是闲着,有哪些副业可以推荐?

每天5点就下班了,闲着也是闲着,有哪些副业可以推荐?

今天整理了36个搞钱APP可以先接触学习看看,然后选定一个感兴趣的方向去精进要知道机会不是一下子来临的,而一定是你前期做了很多准备每天进步一点点,就像滚雪球一样希望所以女生,能够在2024年提升自己,立下一个新的搞钱Flag吧实用APP安利...

如何在自己家里建立一套私有云系统?需要哪些设备?

如何在自己家里建立一套私有云系统?需要哪些设备?

我敢保证,这绝对是目前为止最简单的搭建家用私有云的方法:“一台主机+至少一块硬盘”足矣!不需要任何专业知识,也没有复杂繁琐的步骤,十分钟不到就能搭建好,帮你成功打开文件云储存新世界的大门!还在单纯依靠网盘进行文件存储的朋友,不是我吐槽哈,它...

为什么有人觉得华为mate60只值2000?

为什么有人觉得华为mate60只值2000?

你以为买Mate60的人真的傻?真的那么爱国?国庆前,我家那傻子加价800多买了一台Mate60,当时还被我骂他是傻子。可是他说一回到公司就被老板同事朋友看到,拿去反复查看,都在惊叹他这么快就买到新机。跟亲戚朋友聚会,别人一看就知道他买的是...

如何判断 Java 工程师的基础知识是否扎实?

我来给你出几道大题,能答对70%,你就算基础扎实了。第一部分 Java基础(27)1. 程序本质:代码是如何被执行的?CPU、操作系统、虚拟机各司何职?2. 基础语法:从CPU角度看变量、数组、类型、运算、跳转、函数等语法3. 引用类型:同...

大家都是怎么把自己的粉丝增加到1000的呢?

大家都是怎么把自己的粉丝增加到1000的呢?

截至2024年10月30日,关注者总数1137人,用时80天,增速约14人/天。2024年10月30日数据2024年8月10日开始创作,连续一周,1个关注者都没有。创作第7天,得到第一个关注,7天时间,写了8篇回答。当天得到关注,激动的心情...

为什么雷军身上没有酒色财气?

武大建校130周年时,雷军向母校个人捐款13亿。在2023年8月14日晚上七点,雷总在国家会议中心举行的进行第四次年度演讲「成长」:全篇都在谈成长、梦想,这么多年了,始终做到了知行合一,我相信酒色财气可能真不是他所追求的,一直追求的就像他演...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。