最受欢迎的Java环境

该职位将是即将发布的系列文章中的第一篇。 我们从所使用的环境开始:如果您感兴趣的是最受欢迎的JVM供应商或JVM版本,那么32bit是比64bit更流行的体系结构,还是Windows 8比Windows XP更流行的体系结构-这些都将在我们的文章中介绍。 在下一个系列中,我们将分析应用程序服务器的市场份额以及JVM上的不同配置设置。 我们分析的数据来自我们在过去六个月中收集的1,024个不同的环境。 在某些指标上,我们缺少这些指标的子集–在这种情况下,报告仅不包含此信息。 数据是通过用os.arch,os.version,java.version等参数化的System.getProperty()调用报告的。 Java version statistics

但是,让我们开始吧。 第一站-机器架构。 在此过程中,第一个惊喜是508台计算机声称自己基于amd64。 我们错过了什么吗, AMD是否将英特尔推上了王位? 但这显然是这种架构,例如所有64位Linux盒报告的独立于实际交付芯片组的人。 因此,我们无法真正区分AMD64和EM64T(因为英特尔将其命名为64位版本)。 确实,我们可以说使用的平台中有63%在64位上运行,而37%在32位x86架构上运行。 而且我们有两个SPARC环境与SPARC逐渐减少的市场份额紧密相关...

Platform architectures

接下来是操作系统。 首先以汇总格式显示,在报告的OS中,有60%是不同的Windows盒(实际上是9种不同的版本),有25%是Linux发行版,有15%在Mac OS X上运行。还有两个SunOS安装。

OS vendors

现在,让我们更详细地研究Windows版本,这绝对应该引起一些思考:

Windows versions

显然,至少在工程界,Windows 7Swift获得了发展,并声称在那里安装了所有Windows安装的70%。 但是Windows 8尚未通过我们的示例中的十个安装来跟上步伐。 与使用12年的XP仍然拒绝放弃Windows安装基础中的13%相对。 我们中间的考古学家也有理由为之欢呼–实际上,您可以发现Windows NT的安装仍然很强大。

下一站使我们更接近Java世界。 即– JVM供应商。 我们可以看到,已久的太阳仍然在变强。 与另一个被遗忘的JVM供应商BEA系统相对。 但是,让我们看一下数字并尝试了解实际发生的情况。

JVM vendors

那么首先,为什么地球上有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的支持:

JVM versions

仅占JDK 1.5用户的1%。 以及我们为支持Plumbr而付出的所有努力。 Kinda让我想哭。 但是有趣的是,公司正在转向JDK 1.7。 29%的用户群已经在JDK 7上。70%的用户仍在JDK 6上。而且我们在JDK 8开发版本中拥有勇敢的早期采用者。

但是,有趣的是对使用的不同Java 6更新进行了研究。

Java 6 updates

我在这里发现有趣的部分是,在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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/369486.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬空气质量MySQL,mysql

Flask 定了2中上下文,来实现机遇线程协程的,wsgi服务的请求(request、session)和存储(g,current_app )过程,通过栈来完成不同线程和协程的上下文切换,在与celery相结合处理异步任务时,需要保证异步任务在同…

使用宏实现透视表部分功能,将AB列数据合并统计.

功能:1.筛选B列;2.将A列中的值按照筛选后的结果进行合计. 这个特殊点是按照月日进行筛选的. Sub count_a() Dim sh As Worksheet Set sh ActiveSheet Range("C2:D" & [D65536].End(3).Row).Clear For line_b 2 To [B65536].End(3).Row If Len(Cells(line_b, &q…

HTML基础知识(常见元素、列表、链接元素、图片元素)

1、HTML有关概念 全称: Hyper Text Markup Language&#xff08;超文本标记语言&#xff09; 其文件扩展名为“.html”或“.htm” * 超文本 - 在普通的文本基础上&#xff0c;添加超链接、图片、音频或视频等 * 标记 - 标记就是HTML中的标签(元素)&#xff0c;特点:<a> …

使用Google Guava的订购API

我们一直在使用Google的Guava库做更多的事情-多么出色的库&#xff01; 我们用于它的最新内容是为我们的域对象整理比较器。 就是这样。 使用Apache Isis的JDO Objectstore &#xff0c;使您的类实现java.lang.Comparable &#xff0c;并对集合使用SortedSet是一个好习惯。 您可…

权限和ACL练习题

1、在/testdir/dir里创建的新文件自动属于g1组&#xff0c;组 g2的成员如&#xff1a;alice能对这些新文件有读写权限&#xff0c;组g3 的成员如&#xff1a;tom只能对新文件有读权限&#xff0c;其它用户&#xff08;不 属于g1,g2,g3&#xff09;不能访问这个文件夹。 前期准备…

33、求按从小到大的顺序的第N个丑数

一、题目 把只包含因子2、3和5的数称作丑数&#xff08;Ugly Number&#xff09;。例如6、8都是丑数&#xff0c;但14不是&#xff0c;因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 二、解法 1 public class Solution {2 public int …

CSS3的过渡和转换

CSS3的过渡和转换 1.过渡 什么是过渡呢&#xff1f;过渡通俗的来说就是从一个样式到另一个样式的逐渐转换改变的效果。 过渡的属性&#xff1a; 属性 描述csstransition简写属性&#xff0c;用于在一个属性中设置4个过渡属性3transition-property规定应用过渡的css属性的名称…

zookeeper选举

什么时候开始进行选举 1.服务器初始化启动的时候2.服务器运行期间连接不上leader的时候 初始化选举过程 进行leader选举至少需要两台服务器&#xff0c;我们这里举例为5台服务器&#xff08;1,2,3,4,5&#xff09;1.启动服务器1&#xff0c;第一次投票都先投给自己[1,0]。投票内…

Java,如果这是一个更好的世界

只是梦想着有一个更好的世界&#xff0c;在该世界中&#xff0c;Java平台中的一些旧错误已得到纠正&#xff0c;而某些令人敬畏的缺失功能也已实现。 不要误会我的意思。 我认为Java很棒。 但是它仍然存在一些问题&#xff0c;就像其他平台一样。 我希望没有这些特定的命令&…

参数到不进oracle,Oracle对于启动参数检查不严格

偶然发现Oracle对于pfile启动参数的检查并不严格。比如修改参数文件如下&#xff1a;[oracleyans1 ~]$ vi initprimary.oraprimary.__db_cache_size1644167168primary.__java_pool_size16777216primary.__large_pool_size16777216...*.sga_target2147483648*.standby_file_mana…

使用PLSQL-Developer导出Oracle表及数据pdf版

《使用PLSQL-Developer导出Oracle表及数据pdf版》下载地址&#xff1a; 网盘下载 转载于:https://www.cnblogs.com/long12365/p/9731340.html

C 语言实例 - 使用结构体(struct)

C 语言实例 - 使用结构体&#xff08;struct&#xff09;C 语言实例 C 语言实例 使用结构体&#xff08;struct&#xff09;存储学生信息。 实例 #include <stdio.h> struct student {char name[50];int roll;float marks; } s;int main() {printf("输入信息:\n&quo…

oracle10g的rat模拟,Oracle 10g Logminer 研究及测试

LogMiner提供了一个处理重做日志文件并将其内容翻译成代表对数据库的逻辑操作的SQL语句的过程。LogMiner运行在Oracle版本8.1或者更高版本中。一&#xff0c;如何使用Logminer:先要安装logminer的两个包&#xff1b;以SYS用户运行下面两个脚本,其中第一个脚本dbmslm.sql用来创建…

JavaEE概念简介

这篇文章旨在澄清J2EE范例中使用的首字母缩写词和概念。 J2EE代表Java to Platform&#xff0c;Entreprise Edition。 它使创建模块化Java应用程序成为可能&#xff0c;并将其部署在应用程序服务器上。 它依赖于Java SE&#xff0c;Java SE是一组Java库的核心&#xff0c;所有J…

编程新手的疑惑:代码循环如何画出一个简单的三角形

对一个编程新手来说&#xff0c;最先知道了解的莫过于代码执行的三种结构&#xff0c;顺序结构、循环结构和选择结构。 其中个人认为相对难以理解的是循环结构&#xff0c;而针对循环结构的练习题最多的就是循环画出一种简单图形&#xff0c;比如三角形。 当初我在学习写三角形…

解析PHP跳出循环的方法以及continue、break、exit的区别介绍

PHP中的循环结构大致有for循环&#xff0c;while循环&#xff0c;do{} while 循环以及foreach循环几种&#xff0c;不管哪种循环中&#xff0c;在PHP中跳出循环大致有这么几种方式&#xff1a; 代码&#xff1a; <?php$i 1;while (true) { // 这里看上去这个循环会一直执行…

js php 数据类型判断,【js基础】变量类型判断

类型判断方法比较&#xff1a;如果需要想详细了解&#xff0c;请看下文:注&#xff1a;原封不动复制备份&#xff0c;防止删帖在JavaScript中&#xff0c;有5种基本数据类型和1种复杂数据类型&#xff0c;基本数据类型有&#xff1a;Undefined, Null, Boolean, Number和String&…

HTML阻止iframe跳转页面并使用iframe在页面内嵌微信网页版

昨天看到这篇文章[置顶]开源组件NanUI一周年 - 使用HTML/CSS/JS来构建.Net Winform应用程序界面 就想弄一个winform结合html5的一个小东西&#xff0c;突有兴致&#xff0c;想在里面嵌套一个微信网页版。 好了&#xff0c;想法一出来&#xff0c;就行动吧&#xff0c;最终效果…

使用Spring Data Redis进行缓存

在下面的示例中&#xff0c;我将向您展示如何使用Spring Data – Redis项目作为Spring 3.1中引入的Spring Cache Abstraction的缓存提供程序。 我对如何使用Spring的基于Java的配置有很多疑问&#xff0c;因此我将同时提供基于XML和Java的配置供您查看。 依存关系 在此示例中使…

标准模板库(STL)学习指南之set集合

set是关联容器。其键值就是实值&#xff0c;实值就是键值&#xff0c;不可以有重复&#xff0c;所以我们不能通过set的迭代器来改变set的元素的值&#xff0c;set拥有和list相同的特性&#xff1a;当对他进行插入和删除操作的时候&#xff0c;操作之前的迭代器依然有效。当然删…