该职位将是即将发布的系列文章中的第一篇。 我们从所使用的环境开始:如果您感兴趣的是最受欢迎的JVM供应商或JVM版本,那么32bit是比64bit更流行的体系结构,还是Windows 8比Windows XP更流行的体系结构-这些都将在我们的文章中介绍。 在下一个系列中,我们将分析应用程序服务器的市场份额以及JVM上的不同配置设置。 我们分析的数据来自我们在过去六个月中收集的1,024个不同的环境。 在某些指标上,我们缺少这些指标的子集–在这种情况下,报告仅不包含此信息。 数据是通过用os.arch,os.version,java.version等参数化的System.getProperty()调用报告的。
但是,让我们开始吧。 第一站-机器架构。 在此过程中,第一个惊喜是508台计算机声称自己基于amd64。 我们错过了什么吗, AMD是否将英特尔推上了王位? 但这显然是这种架构,例如所有64位Linux盒报告的独立于实际交付芯片组的人。 因此,我们无法真正区分AMD64和EM64T(因为英特尔将其命名为64位版本)。 确实,我们可以说使用的平台中有63%在64位上运行,而37%在32位x86架构上运行。 而且我们有两个SPARC环境与SPARC逐渐减少的市场份额紧密相关...
接下来是操作系统。 首先以汇总格式显示,在报告的OS中,有60%是不同的Windows盒(实际上是9种不同的版本),有25%是Linux发行版,有15%在Mac OS X上运行。还有两个SunOS安装。
现在,让我们更详细地研究Windows版本,这绝对应该引起一些思考:
显然,至少在工程界,Windows 7Swift获得了发展,并声称在那里安装了所有Windows安装的70%。 但是Windows 8尚未通过我们的示例中的十个安装来跟上步伐。 与使用12年的XP仍然拒绝放弃Windows安装基础中的13%相对。 我们中间的考古学家也有理由为之欢呼–实际上,您可以发现Windows NT的安装仍然很强大。
下一站使我们更接近Java世界。 即– JVM供应商。 我们可以看到,已久的太阳仍然在变强。 与另一个被遗忘的JVM供应商BEA系统相对。 但是,让我们看一下数字并尝试了解实际发生的情况。
那么首先,为什么地球上有56%的环境在Sun JVM上运行? 毕竟,距Oracle收购已经三年了。 但是仔细研究实际JVM版本的细节,我们可以找到答案。 即–直到JDK 1.6.0_21版本才更改java.vendor参数。 因此,到那时为止发布的每个JVM仍然希望Sun Microsystems表现良好。 正如我们从后来的统计数据中看到的那样-2010年中期之前发布的所有JVM仍将自己标记为Sun的。 但是频谱的另一端也很有趣。 我们有12%的Apple JVM甚至不再受支持-您只能下载Cupertino提供的JDK,直到JDK 6最新版本为止,但是从JDK 7开始,您只能使用Redwood 。 我们只有四个BEA jRockit和六个IBM JVM环境。 随着jRockit合并到Hotspot中,这是可以理解的。 但是IBM或实际上IBM的缺乏无疑为我们提供了思考的机会。
接下来,我们列出了JVM版本。 再次使我们感到惊讶的是,我们完全放弃了对JDK 1.5的支持:
仅占JDK 1.5用户的1%。 以及我们为支持Plumbr而付出的所有努力。 Kinda让我想哭。 但是有趣的是,公司正在转向JDK 1.7。 29%的用户群已经在JDK 7上。70%的用户仍在JDK 6上。而且我们在JDK 8开发版本中拥有勇敢的早期采用者。
但是,有趣的是对使用的不同Java 6更新进行了研究。
我在这里发现有趣的部分是,在685种Java 6配置中,近一半是一年以上的发行版(1.6.0_30之前的版本)。 您是否知道此后修复的安全错误的数量大于100? JDK 6用户中有11%停留在2010年之前的版本中。 我确实知道,在大型企业的大型升级中(例如从JDK 6迁移到JDK 7)需要花费时间。 但是,为什么要运行2007年发布的JDK来让事情变得艰难呢?
从前面提到的数据中,我想我们可以使用最典型的Java运行时环境作为原型。 它是在64位Windows 7计算机上运行的过时的Java 1.6 Hotspot构建 。
不过,以这种原型为例,这种“最典型的配置”仍然仅在10.3%的情况下使用。 如果换个说法,如果只支持最常见的协议栈,最终将失去90%的潜在用户。 因此,您仍然必须继续支持复杂的测试基础架构。
参考: Plumbr博客博客中来自JCG合作伙伴 Vladimir Sor的最受欢迎的Java环境 。
翻译自: https://www.javacodegeeks.com/2013/02/most-popular-java-environments.html