当前位置: 首页 > news >正文

推荐的Java服务环境:JDK17+ZGC(JDK 21的ZGC支持分代回收,性能更高)

文章目录

  • 引言
  • ZGC
    • ZGC原理
    • ZGC特点
    • ZGC有多种GC触发机制
    • ZGC垃圾回收周期
    • ZGC垃圾回收器相关参数
  • II JDK17
    • JDK17升级实践过程
    • JVM参数参考
    • 升级JDK的风险
  • III 从JDK 7到JDK 17的JVM演变
    • JDK 8之前的实现:方法区与永久代
    • JDK8的JVM
    • JDK11的ZGC垃圾回收器
    • 未来
  • see also
    • 美团技术团队
    • 读屏障
    • 判断Linux系统内核版本是否大于等于4.7
    • 判断系统是否为 NUMA架构
    • 相关资源

引言

建议Java服务使用OpenJDK17运行

  • Spring AI SDK支持的JDK版本最小为17,升级到JDK 17能更好地拥抱AI新技术;
  • ZGC作为新一代垃圾回收器,各项性能指标都比较突出,升级之后,机器成本和性能收益明显;
  • Linux系统内核版本大于等于4.7,方便使用zgc的特效。

ZGC

ZGC原理

  • 采用标记-复制算法
  • ZGC在标记、转移和重定位阶段几乎都是并发的

ZGC特点

  • 基于Region:G1的每个Region大小是完全一样的,而ZGC的Region更灵活,其中大型Region大小不固定,可以动态变化,也不会被重分配,因为复制一个大对象代价太高。
  • 部分压缩:基于Region,“标记-整理”,相对CMS压缩时间更短。
http://www.xdnf.cn/news/1482931.html

相关文章:

  • 一阶低通滤波:从原理到实践,平滑数据的艺术
  • 备份压缩与存储优化:智能数据管理全攻略
  • 读写锁 shared_mutex 共享互斥量介绍
  • Dart HashMap:不保证顺序的 Map 实现
  • (二).net面试(static)
  • MySQL--索引和事务
  • simd学习
  • esbuild入门
  • Cursor安装使用 与 Cursor网页端登录成功,客户端怎么也登陆不上
  • 解析噬菌体实验核心:从材料选择到功能验证的标准化操作框架
  • 数据结构——队列(Java)
  • 基于STM32单片机的酒驾检测设计
  • OpenAvatarChat项目在Windows本地运行指南
  • 【基础-单选】关于自定义组件的生命周期下列说法错误的是
  • 四款主流深度相机在Python/C#开发中的典型案例及技术实现方案
  • vant组件
  • 昇腾310i Pro固件说明
  • Vue3中SCSS的使用指南
  • 数据结构与算法1 第一章 绪论
  • AI工具深度测评与选型指南 - AI工具测评框架及方法论
  • Gitea:轻量级的自托管Git服务
  • 【左程云算法06】链表入门练习合集
  • GDAL 读取影像元数据
  • SQL-窗口函数
  • 单词分析与助记之数据建表(以production为例)
  • 鸡兔同笼问题求解
  • 手撕C++ list容器:从节点到完整双向链表实现
  • Ubuntu 22.04.1上安装MySQL 8.0及设置root密码
  • 贪心算法应用:柔性制造系统(FMS)刀具分配问题详解
  • 深度拆解OpenHarmony NFC服务:从开关到卡模拟掌握近场通信技术