Alibaba_Dragonwell OpenJDK VS OracleJDK 详细对比情况
导读:随着oracle各种疯狂版本的发布,Oracle JDK成为收费软件,很多公司转向寻找Oracle JDK的替代品。有很多人都会怀疑,Oracle JDK和其他JDK之间有没有很大的性能差异。加上笔者的1H2G1M的服务器,然后为了自己的技术能力的提升。本文作者通过不是很专业的方面测试,给出这个自认为可行的选择方案。
各大厂商频频推出自己的开源JDK是人性的扭曲还是道德的沦丧? 代码的有无国界是程序员的无奈还是大厂的爆发?
官放牛逼还是第三方牛逼? 官方为何变成版本发布狂?
服务器为何莫名宕机究竟是何人所为?内存一直占用率居高不下,究竟人为还是鬼祟?
官方与第三方的背后有隐藏着什么?
请关注今晚【开源oschina】的此篇文章,
测试环境:window10
测试容器:Tomcat8.5.47
测试JDK:
1、Alibaba_Dragonwell_8.1.1 下载页面链接 https://github.com/alibaba/dragonwell8/releases
2、官方jdk1.8.0_31 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
测试项目:https://gitee.com/bdj/SpringBoot_v2
第一步空跑Tomcat测试
项目只留一个Tomcat自带ROOT项目
对比图:
阿里JDK:
官方JDK:
结果对比表:
空跑tomcat速度
jdk版本 | 速度 | 结果 |
阿里 | 289ms | 赢 |
官方 | 580ms |
内存占用结果:
jdk版本 | 内存 | 结果 |
阿里 | 78.3M | |
官方 | 73M | 赢 |
第二步跑springboot项目
跑自己的项目
阿里JDK:
内存占比:
官方JDK:
内存占比:
速度结果:
jdk版本 | 速度 | 结果 |
阿里 | 18216ms | 赢 |
官方 | 20234ms |
内存占用结果:
jdk版本 | 内存 | 结果 |
阿里 | 253.4M | 赢 |
官方 | 882.7M |
第三步apache-jmeter-5.2测试
阿里JDK:
汇总报告:
聚合报告:
汇总图:
图像结果:
官方JDK:
汇总报告:
聚合报告:
汇总图:
图像结果:
以上是总结:
以上就是阿里jdk与官方jdk的JMeter 对比图
从吞吐量来说好像官方jdk更棋高一手!但是我们跑项目不单单是从吞吐量开始!
但是阿里jdk给我的感觉就是省内存,能够大幅度提高稳定性、效率及性能。
后续:
1.授权协议的不同:OpenJDK采用GPL V2协议放出,而SUN JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。
2.OpenJDK不包含Deployment(部署)功能:部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在OpenJDK中是找不到的。
3.OpenJDK源代码不完整:这个很容易想到,在采用GPL协议的OpenJDK中,SUN JDK的一部分源代码因为产权的问题无法开放给OpenJDK使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。
4.部分源代码用开源代码替换:由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替。
参考:https://zhidao.baidu.com/question/435377236723677684.html
其他参考答案:
答:非常接近 - 我们的Oracle JDK版本构建过程基于OpenJDK 7构建,只添 加了几个部分,例如部署代码,其中包括Oracle的Java插件和Java WebStart 的实现,以及一些封闭的源代码派对组件,如图形光栅化器,一些开源的第三 方组件,如Rhino,以及一些零碎的东西,如附加文档或第三方字体。展望未 来,我们的目的是开源Oracle JDK的所有部分,除了我们考虑商业功能的部 分。
————————————————
版权声明:本文为CSDN博主「程序猫A建仔」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44504146/article/details/93410569
如果但从配置低的服务器从上面测试来看,我选择阿里JDK,如果从高配服务器来说,我还是选择官方jdk。笨重是笨重,放到服务器以后基本跟本地测试差不多环境。
文本仅供参考,本测试不包含官方测试数据,全来自个人本机电脑测试!
- c#中跨线程调用windows窗体控件 .我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。
- 无线技术分类说明-详细对比协议的优缺点
- nginx与apache详细性能对比
- 六 RIPv1携带掩码的情况分析和RIPv2手工汇总的拓展详细说明(附实例)
- 【持久化框架】Mybatis与Hibernate的详细对比
- 某高级网站开发工程师的要求,自己可以对比一下自己的情况
- Fedora14安装Vmware Tools详细步骤 阐释(VMware版本为8.0,对比在ubuntu下安装vmware Tools的差异)
- Excel 有条件的情况下,统计多列的总和(对比SUMIF和SUMPRODUCT)(亲自实践)
- 【持久化框架】Mybatis与Hibernate的详细对比
- Spark与Pandas中DataFrame的详细对比
- vMotion、SvMotion、HA和FT的详细对比说明
- 诺基亚5800xm,5530xm,5230详细对比与区别
- 超融合详细对比:市面各主流超融合产品及厂商优劣势解密
- 关于jquery里面prop和attr的带示例详细对比,深度理解
- 【持久化框架】Mybatis与Hibernate的详细对比
- 几种TCP连接中出现RST的情况( 比较详细)
- android 根据IP获取天气情况 详细讲解
- 【持久化框架】Mybatis与Hibernate的详细对比
- 最详细的CentOS 6与CentOS 7的对比(包括常见设置、服务管理、性能测试)
- Spark与Pandas中DataFrame的详细对比