1
Creamliu 96 天前 via iPhone
这个月刚从 jdk8 升级到 jdk21 ,还没上生产。
|
2
huihuiHK 96 天前 1
等一波 java8 党
|
3
yolee599 96 天前 via Android 1
jdk8 永远的神,从桌面到安卓再到后台服务,一个版本就够了
|
4
cheng6563 96 天前
字符串模板还没定稿吗
|
5
chendy 96 天前
J8 人不请自来,公司项目,狗都不升,java7 主流,java8 先进,java11 动不动就 build 报错没人管,java17 的项目已经凉了
下班回去有空,自己的小玩具升级一手玩一玩就行了 |
6
wxw752 96 天前 12
各位是真不审题啊,OP 说了本帖不欢迎刷 jdk8 梗。
现在那些中间件稍微新点的版本早不支持 8 了,你们是怎么够用的 |
7
ted05 96 天前
我已经用上 17 了
|
8
Mogugugugu 96 天前
to B 的项目已经开始慢慢的升 17 了,to G 的项目还不行,还得再等几年。
|
9
Leexiaobu 96 天前
竟然支持 Markdown 写注释了
|
10
wysnxzm 96 天前
把落后挂嘴边的习惯有时候得改改
|
11
twofox 96 天前
21 我已经用起来了
|
12
Goooooos 96 天前
还是等下个 LTS ,这个版本基本都是 Preview
|
14
Greendays 96 天前
半年前把公司的项目升级到了 JDK21
|
15
dcsuibian 96 天前
能上 21 的我都上 21 了
|
16
L0L 96 天前
流的这个好像有点意思
|
17
dragondove 96 天前
感觉改变不大,大部分都是预览特性,zgc 大部分情况表现不如 g1 ,该用 g1 还是用 g1 。markdown 这个感觉是追潮流了,python 的文档之前就支持了 markdown ,不过我个人觉得不是很必要。现在就想着字符串模板什么时候重新设计好,希望不会比 jdk21 上的预览版本差多少。
|
18
jptx 96 天前
Vector API 都第八次孵化了
|
19
salmon5 96 天前
可以 java -XX:+UseZGC 用分带 ZGC 了
|
20
Huelse 96 天前
@cheng6563 按这份邮件的意思是想做个更好的设计所以推迟了
https://mail.openjdk.org/pipermail/amber-spec-experts/2024-April/004106.html |
21
salmon5 96 天前
https://github.com/openjdk/jdk/pull/17060 这个“低级”bug 也修复了,从 java8-23
|
23
typing 96 天前 via iPhone
我连 jdk8 都没用过,只记得 jdk 1.42
( java 不是我工作/常用语言) |
24
xubeiyou 96 天前
用 17 的路过- - 感觉特么是不是都没人用 17 都是 21 了?
|
25
windghoul 96 天前
@dragondove zgc 对比 g1 的数据文章有吗大佬
|
26
TWorldIsNButThis 96 天前 via iPhone
看了下项目组的 jdk 升 17 的需求已经有人在做了,也就一个点
|
27
fffq 96 天前
你发任你发 我用 java8
|
28
yty2012g 96 天前
@windghoul 我自己使用情况来看。throughput 的影响,大概 ZGC 分代是 4.x%,G1 是 1.x%。延迟的话,不用说肯定是 ZGC ,基本就是 0ms 。footprint 没测过。我这边服务的堆是 8G 的。目前用的是 JDK 22
|
29
SuperManNoPain 96 天前
生态能及时升级就好了,看样子再过一两年新项目使用 jdk21 基本没啥问题了
|
30
clf 96 天前
已经 jdk17 了,主要还是看 spring 等的选择。
|
31
zhouhu 96 天前 1
目前使用 G1 是比较好的,G1 在 latency 、throughput 、footprint 有很好的平衡。追求 throughput 使用 parallel GC ,追求 latency 使用 ZGC 。
|
32
zhouhu 96 天前
推荐一个博主 tschatzl ,在 oracle 做 gc 优化的,他主要 g1 的优化。
https://tschatzl.github.io/ |
33
interim 96 天前
我司的重构项目已经上 jdk21 了
|
35
adoal 96 天前
@wxw752 中间件……用老版本呗。去年还帮人验收了一个 CentOS 6 + Java 6 + Tomcat 6 的 666 项目。主要是很多地方性、行业性的信息化小公司对 infrastructure 的更新不当回事,而没有技术力量的甲方单位则毫无概念,从来不会提要求。
|
38
wysnxzm 96 天前 1
@dragondove #17
551/35298=0.015 705/18015=0.039 minor gc 平均时间 0.02ms 不到 major gc 平均时间 0.04ms 不到 注意时间单位是毫秒不是秒,还需要考虑吗少年? |
39
yty2012g 96 天前
@windghoul #34 JDK17 的是不分代的 ZGC ,吞吐量的影响会更大一点,我自己实测是 7.x%左右,如果对延迟要求不是特别高,JDK17 建议使用 G1 吧
|
40
yty2012g 96 天前 1
@Rorysky #36 差不多,在充分预热的情况下,高版本 gc 的吞吐量影响几乎可以忽略不计,像是我在 jdk22 用 G1 ,火焰图基本快看不到 GC 的开销了
|
41
jackmod 96 天前
我们那边也突然开始 17+gradle8+spring3 了
以前连 spring 都不是,非常古老的玩意 |
42
4xxx 96 天前
|
47
zhouhu 96 天前 1
|
48
ZZ74 96 天前
多少有点 java 程序性能调优的经验,第一条优化建议就是升级 JDK
|
49
cmlx1014 96 天前
jdk17 苟个十年再找稳定版本吧。。
|
50
kiroter 96 天前
用 kt 的都 17 了吧
|
51
cslive 96 天前 1
别急,springbooot 会出手
|
52
iamwin 96 天前
国内已经死在 java8 了
|
53
storyxc 96 天前
自己用的项目目前在用 17 ,公司这种项目 真的升不动。
|
54
jorneyr 96 天前
我们项目本来 JDk8 够用,后来使用了 Datagrip 的 MongoDB JDBC 驱动,这个驱动最低要求 JDK 17 ,所以升级到了 JDK 17 。
最期待的是等 SpringBoot 支持虚拟线程完善后再一次性升级到最新版。 |
55
chenfang 96 天前
@yty2012g #28 问下大佬 ,因为我们业务比较倾向于低延迟,于是测试 ZGC,有时候会 full gc..然后延迟情况很夸张, 增大了内存或者调了一下 ZGC 的相关参数 还是会出现这种情况,
而且 ZGC 貌似吞吐量对比 G1 会降低不少,很好奇你们没有 full gc 出现么? |
56
yty2012g 96 天前
@chenfang ZGC 吞吐量是会下降不少,分代 ZGC 能稍微好点,但是还是比 G1 要差一点。full GC 的问题更大可能性的还是内存泄露的问题吧,既然使用了高版本 JDK ,那就开个 JFR 呗,然后看看到底是哪里的对象没有被回收掉。我这边的服务类似于数据采集,虽然 QPS 高,但是基本都是朝生夕死,基本没有长期存活的对象,所以目前没观察到 full GC 。
|
57
javaisthebest 96 天前 2
刷版本号这个臭毛病到底是从哪个语言开始的?
jdk8 jdk11 jdk21 搞这三个大版本就差不多得了 后续的更新全特么那种逗你玩的更新 |
58
beginor 96 天前
有没有 jdk6 继续苟活的?
|
59
Rickkkkkkk 96 天前
新版本的 java 一个大改进是 gc 时间,其实这一点就应该推动很多人去升级了
|
61
ikas 96 天前
唯一可惜,字符串模板没了
|
62
Mark24 96 天前 1
JDK 的大版本是 向后兼容么? JDK23 可以兼容 JDK8 ?
|
63
msg7086 96 天前
@javaisthebest 换成 1.8 1.11 1.21 会让你舒服很多吗……
|
65
felixcode 96 天前 via Android
jdk8 加 CentOS7 可以混到延迟退休,谁有意见那就是别的都不稳定,都不是企业级环境
|
66
harry90 96 天前
说实话虽然领导想升级 jdk17 但是我不怎么赞成 做了快 10 年的 toB 系统 这玩意动起来吃力不讨好
|
67
devswork 96 天前
完了,目前正在用 21 ,还使用了 STR 字符串模板,然后 23 好像没有了字符串模板了,怎么办
|
70
Ayanokouji OP |
71
hetal 96 天前
我们 mysql 都在用 8.4.2 了,J8 的同学还在用 5.7 么~
|
72
dragondove 96 天前
@jorneyr preview 特性,本来就没保证一定是这样的
|
73
dasbn 96 天前
等待 JDK 25 LTS
|
74
yazinnnn0 96 天前 1
|
75
yazinnnn0 96 天前
🧐我记得当初 kotlin 用户(还是官方来着?)说 kotlin 1.3 版本语言特性相当于 java 20, 不知道 java 23 的易用性比得上 kotlin1.3 了没
|
76
ShotaconXD 96 天前
还在用 17, 说实话除了语法糖之外, 好像没感觉到太明显的变化. 也可能是市场上大多数的使用场景其实..... you know
|
77
WindProtect 96 天前
非 lts 没啥好讨论的感觉。
|
78
leegradyllljjjj 96 天前 via iPhone
八爷是你们能讨论的吗?别给八阿哥脸上抹黑
|
79
zhouhu 96 天前
@ShotaconXD GC 方面有很多的优化,不要只是关注语法。😂
|
80
iv8d 96 天前
jdk8 永远的神,从桌面到安卓再到后台服务,一个版本就够了
|
81
RainCats 96 天前
@Mogugugugu ToG 的除非有人搞了 java8 几个大的 bug ,然后才会让升级版本,不然别想了
|
82
RyanPoy 96 天前
@javaisthebest 从.net 开始。不是到什么时候出来一个 5.0 。然后 java 就由 1.4 直接到了 5.0 ,然后就直接开始了。
|
83
yazinnnn0 96 天前
@WindProtect
474: ZGC: Generational Mode by Default 467: Markdown Documentation Comments 已经稳定的特性可以讨论一下, 貌似只有一个分代 zgc 和 md 注释 Vector API (Eighth Incubator) 这玩意儿咋辣么难产, 都第八次孵化了 |
84
Leviathann 96 天前
@yazinnnn0 听说在值类型做好之前会一直处于孵化状态
|
85
iintothewind 96 天前
把 Scala 的 pattern-match ,control flow ,case class 直接抄过来,==代替 equals ,默认不可变集合类型,变量声明默认 final ,
直接全搬过来就好了,这样一点一点的抄,太慢了。 |
86
GameAuto 96 天前
多年后端程序员,并没有持续关注 javasdk 版本的习惯,因为我用了三年多 kt 了,前几个项目一直在用 kt1.5 ,目前新项目也准备用 kt2.x 了
|
87
asd999cxcx 96 天前
21 之后的下一个 LTS 是啥?
|
88
Ayanokouji OP @asd999cxcx 25, 两年一个 lts
|
89
yohole 96 天前
将来要升 JDK 的唯一动力可能是 Spring 的生态最低要求,例如 SpringBoot ,Spring 等几个大框架最新版本最低要求都至少 11 以上了
|
90
Ayanokouji OP @yohole SpringBoot3 要求 jdk 最低 17 ,另外 spring boot2 去年已经结束社区维护了
|
91
iamppz 96 天前 via iPhone
刚降回去,升级太麻烦了,很多依赖不支持,字符串模版、文本块都还是预览特性,还是直接 kotlin 混合使用丝滑
|
92
yohole 96 天前
@Ayanokouji #90 嗯差不多,单纯升级 JDK 的动力不多,但是升级 Spring 生态的动力相对高点,但是升级 JDK 这个在大中小企业是需要衡量收益和风险的,甚至还要考虑迁移成本,还涉及到运维、部署等等,所以目前主力还是 8
|
93
cyningxu 96 天前 via Android
你发任你发,我用 java8
|
94
yty2012g 96 天前
今天下载了 Orcale OpenJDK 23 ,压测了一下。G1 GC 的吞吐量还是比 ZGC 强不少,倒是 Vert.x + Virtual Thread 效果还是挺不错的
|
95
xueyuehua 96 天前
虽然我们现在项目也是都用 17 ,但是 17 有什么新特性,就没人用过,jdk8 那些用的都不多,能跑就行
|
97
kenvix 96 天前
Vector 和 Vanilla 到底啥时候能实装的
|
98
forgottencoast 96 天前
|
99
BBCCBB 96 天前
stream tolist 什么的, 什么时候能加入推断集合大小.. 每次直接 new arraylist(), 默认 capacity 10, 我 3 个元素他也是 10 个, 几百个元素也是 10 个, 去 stream map tolist 要扩容好几次.. 更多的元素更惨.. 扩容+额外的空间浪费.
rust 对于明确大小, 没有 filter 之类修改的, 都会直接用明确大小.. |
100
RoccoShi 96 天前
jdk8 升级到 jdk17 已经忙活一年多了..
|