如今是我們發布有關Java領域統計資料的第四個年頭。每年春天,我們對從JVM 的Plumbr 代理監測器收集到的數據進行挖掘,發現了以下幾點:
Java版本的使用情況(是Java6、7,還是8);
虛擬機使用的哪一款(是Oracle Hotspot 、 OpenJDK 還是 Rest of the World);
基礎設施中最常用的是哪個應用服務器;
這些現象隨著時間推移是如何變化的。
上周我們對Java版本和供應商數據進行了披露。這周我們將會對應用服務市場的狀態進行曝光。
以下結論是基于Plumbr對1240臺JVM的性能在2016年的2月份到3月份進行檢測得到的。這些數據的收集是過JVM 中的os.arch、os.version、 java.version等通過 System.getProperty() 進行調用得到的。
2015年使用最廣泛的是哪一種Java應用服務器呢?
通過從部署的1240個JVM中得到的數據,我們能夠確定出現了862個容器供應商,或者說是占到了運行環境的70%左右。這些容器的供應商分布如下:
Tomcat的安裝基數已經連續兩年超過排行榜的50%。占到總份額的58.22%無疑使其成為贏家。除了Tomcat,占據了大部分部署基數的有一下四個供應商:
JBoss/WildFly安裝,占到了市場份額的20.22%
Jetty,占據市場的10.67%
GlassFish,占據市場的5.56%
Oracle WebLogic 的部署占據剩下的2.44%
剩下的其他供應商占據了不到2.5%的市場份額這其中包括Resin、Orion、OC4J, SAP NetWeaver 和IBM WebSphere。所有這些的部署小于5.
剩下的JVM我們沒有檢測到數據。一個Java應用服務器大多數是:
使用Swing或AWT開發的桌面應用程序;
動態語言運行時(比如Scala或者Groovy);
無服務器軟件(比如Elasticsearch、TIBCO等);
使用Netty(比如play框架);
或者隱藏在開發環境啟動器之后(Maven、sbt、 IDEAM Eclipse等)。
2013-2016使用的Java應用服務器。
2013到2016年期間,我們呈現并分析了相同的數據,得到了以下結果:
應該有人對這種隨時間推移的變化做出解釋,這一點是毋庸置疑的。Jetty為什么從2015年的輝煌降到了如今僅僅第三名的位置,一個可能的原因就是Plunber從一個開發工具轉變為了一個監控解決方案。Jetty不再是一個友好的開發工具,而是作為一個產品部署者它和其他的java應用服務器提供商分享了自己的部署。
2015年的一個有趣變化就是我們可以看到Oracle Weblogic出現的概率減少了三倍多。但是這種現象是作為一個從特定供應商遷移過來的公司的特例還是由于由于各行各業的公司開始使用Plunbr,原因尚不清楚。
有一點明確的是,在連續兩年的排行中,Tomcat部署占據了JVM領域接近60%的份額。考慮到Tomcat一開始僅僅是作為一個參考實現設計,以及不同的提供商把大量的經歷投入到提升他們的容器,這是一個驚人的結果。
如果你覺得這些數據有趣,那么你有可能會對我們的Java和性能監測上的定期發布感興趣。保持關注,推特或RSS feed進行訂閱都可以。