重塑云上的 Java 语言( 四 )

----重塑云上的 Java 语言//---- http://

重塑云上的 Java 语言

----重塑云上的 Java 语言//---- http://


作者 |郁磊

责编 | Elle

音乐无国界 , 但是音乐人有国界 。 云原生亦如此 。 虽没有限定的编程语言 , 但应用所使用的编程语言已经决定了应用部署运行的行为 。 Java 诞生于20年前 , 拥有大量优秀的企业级框架 , 践行 OOP 理念 , 更多体现的是严谨以及在长时间运行条件下的稳定性和高性能 。 反观如今 , 在要求快速迭代交付的云场景下 , 语言的简单性似乎成了首要的要求 , 而传统的 Java 语言显得有一些过于重量了 。 本文由阿里巴巴 JVM 团队技术专家郁磊(花名:梁希)分享 JVM 团队是如何面对和处理集团巨大的业务规模和复杂的业务场景的 。 ElasticHeap Java 常因为耗资源而受诟病 , 其中最显著一点就是 Heap 对内存的占用 , 即便没有请求在处理也没有对象分配 , 进程仍然会保留完整的堆内存空间 , 保障 GC 进行分配内存和操作内存的快速敏捷 。 AJDK ZenGC/ElasticHeap 双十一全面支持核心链路上百应用和数十万实例 。 JDK12 开始支持固定时间的触发 concurrent mark 并在 remark 中收缩 Java 堆归还内存的功能 , 然而并未解决在 stw 中增加暂停时间的问题 , 因此无法在每次 young GC 时做内存归还 。 ElasticHeap 在并发异步线程中完成内存处理反复 map/unmap 以及 page fault 的开销 , 因此任意一次 young GC 都可以敏捷的及时归还内存 , 或重新恢复内存使用 。 ElasticHeap 阿里巴巴实战 ElasticHeap场景1:可预测的流量高峰

推荐阅读