L'état actuel du monde Java: tendances et faits pour l'un des langages de programmation les plus populaires

De la part d'un traducteur : malgré le caractère quelque peu publicitaire de cet article, l'auteur donne des statistiques assez intéressantes sur l'état actuel de l'écosystème Java. Nous espérons que ces statistiques seront utiles aux lecteurs.


Une version de cet article a également été publiée précédemment sur The New Stack .


L'industrie du logiciel moderne est incroyablement vaste, donc il ne manque pas de choix de langages de programmation. Mais même au sein de la même pile technologique, comme l'écosystème Java, il peut être assez difficile de tirer des informations utiles sur les conditions du marché. Java connaît un succès incroyable et est présent dans presque tous les grands secteurs industriels et économiques, et c'est en partie ce qui rend difficile de trouver un point de vue unique sur l'état actuel du monde Java.


Mais cela ne signifie pas que l'on ne peut pas essayer d'évaluer grossièrement l'état de cette sphère.


Java (JVM) New Relic. , , Java, . , .


, Java . , :


  • Java ?
  • Java ?
  • ?
  • ?

Java 8 .


, Java : “ Java ?”. :


Java%
140.00
130.32
120.17
1111.11
100.48
90.18
842.02
838.63
83.83
72.54
pre-70.73
Non-LTS1.14

. Java 8 :


  • : , CVE
  • : , Java
  • : , ,

, Java 11 — LTS — , , , , Java 8 ( LTS). -LTS — Java 7 (2.54%) , Java 8, (1.14%)


-Oracle


, — Java , Oracle.


%
Oracle74.78
AdoptOpenJDK7.06
IcedTea5.30
Azul2.96
IBM2.37
Amazon2.18
Unknown1.96
Pivotal1.40
SAP0.74
Sun0.58
Debian0.54
Other0.10

Oracle 75% Java. AdoptOpenJDK — . ( , , ), , AdoptOpenJDK , .


, NewRelic AdoptOpenJDK, (33,19%) — Java 11. Java 11 AdoptOpenJDK , .


. : NewRelic — AdoptOpenJDK .



, - , — Java . , :


GC%
Parallel57.77
G124.99
CMS17.20
ZGC0.04
Shenandoah<0.01

, Java. , JVM, :


  • CMS , G1 Java 8 (14.56% 12.59%)
  • CMS , Parallel Java 11 (3.96% 0.20%)
  • CMS 35 , ZGC Java 11


Java — . — ( — Xms Xmx). 30 , , , .


XmsXmx%
2048MB2048MB8.84
512MB512MB8.74
1024MB1024MB5.76
4096MB4096MB
1024MB
2.83
2.60
819MB819MB2.59
8192MB8192MB
512MB
2.55
2.40
2340MB2340MB2.19
256MB512MB2.17
64MB256MB
2048MB
3072MB
4096MB
2.11
2.06
2.02
1.77
6144MB6144MB1.61
3072MB3072MB1.55
512MB1024MB1.54
1024MB2048MB1.50
256MB1024MB1.38
492MB492MB1.36
2028MB2028MB
256MB
1.20
1.14
96MB1024MB0.89
10240MB10240MB0.84
256MB256MB0.79
512MB2048MB0.78
120MB256MB0.77
768MB768MB0.63
16384MB16384MB0.63
5120MB5120MB0.63

, , JVM , , .


, , 16GB (.. Xmx >= 16GB) — 3.3% .


“ ” — Xms Xmx, — . , 33.48% JVM .


, , , -.


, JVM , , .


,


, , :


  1. 7.35% Java 8 JVM ( — MaxPermSize)
  2. 6.78% JVM
  3. 8.07% JVM
  4. 2.54% JVM “” , , , Parallel G1
  5. 2.59% JVM 819MB. — 8192MB (.. 8GB). — .


, , . , , NewRelic. Java , , , .


, , , . , Java (, ) , .


, JVM , , Java .


Java , Java . “ ” . , , , , RedMonk’, , .


NewRelic — — . NewRelic ( ) , NewRelic, , .


, .


All Articles