• TaobaoVM


    作者:Andoter
    链接:https://www.zhihu.com/question/275665265/answer/416021488
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    下面是网络上针对TaobaoVM的一段介绍:

    由于淘宝目前无疑是中国最大的Java技术应用方,那么淘宝究竟是采用什么样的技术对Java虚拟机进行优化的呢?淘宝的技术团队对Java虚拟机的优化工作其实早已不是停留在简单的参数调制上面,而是充分结合了企业自身的业务特点以及实际的应用场景,在OpenJDK的基础之上通过修改大量的HotSpot源代码,深度定制了淘宝专属的高性能Java虚拟机——TaobaoVM。

    既然是结合业务特点深度定制的一款Java虚拟机,那么性能必然在某一些特定的应用场景上会比Oracle官方的HotSpot更强,如图1-8所示。但其弊端同样也非常明显,那就是无法实现通用。所以如果只是想对TaobaoVM进行研究的话,可以参考中的描述编译一个TaobaoVM,但如果需要应用在实际的项目中,笔者还是建议三思而后行,否则将会得不偿失。

    淘宝的技术团队通过修改大量的HotSpot源代码深度定制的TaobaoVM[ 文章完整地址:。],其实从严格意义上来说,在提升Java虚拟机性能的同时,却严重依赖物理CPU类型。也就是说,部署有TaobaoVM的服务器中,CPU全都是清一色的Intel CPU,且编译手段采用的是Intel C/CPP Compiler进行编译,以此对GC性能进行提升。除了优化编译效果外,TaobaoVM还使用了crc32指令实现JVM intrinsic降低JNI的调用开销,如图1-9所示。

    除了在性能优化方面下足了功夫,TaobaoVM还在HotSpot的基础之上大幅度扩充了一些特定的增强实现。比如创新的GCIH(GC invisible heap)技术实现off-heap,这样一来就可以将生命周期较长的Java对象从heap中移至heap之外,并且GC不能管理GCIH内部的Java对象,这样做最大的好处就是降低了GC的回收平率以及提升了GC的回收效率,并且GCIH中的对象还能够在多个Java虚拟机进程中实现共享。其他扩充技术还有利用PMU hardware的Java profiling tool和诊断协助功能等。

  • 相关阅读:
    sh脚本学习笔记
    idea常见快捷键
    linux操作命令笔记
    【题解】[国家集训队]圈地计划
    【题解】[国家集训队]happiness
    【题解】小M的作物
    cpu的MMU
    socat命令
    strace命令
    Linux的文件描述符
  • 原文地址:https://www.cnblogs.com/kakaisgood/p/9295470.html
Copyright © 2020-2023  润新知