الوضع الحالي لعالم جافا: الاتجاهات والحقائق لإحدى أشهر لغات البرمجة

من مترجم : على الرغم من الطبيعة الإعلانية إلى حد ما لهذه المقالة ، يقدم المؤلف بعض الإحصائيات المثيرة للاهتمام حول الحالة الحالية لنظام جافا البيئي. نأمل أن تكون هذه الإحصاءات مفيدة للقراء.


كما تم نشر نسخة من هذا المقال سابقًا في The New Stack .


صناعة البرمجيات الحديثة واسعة للغاية ، لذلك لا يوجد نقص في اختيار لغات البرمجة. ولكن حتى داخل نفس مجموعة التكنولوجيا ، مثل نظام جافا البيئي ، قد يكون من الصعب جدًا استخلاص رؤى مفيدة حول ظروف السوق. تعد Java ناجحة بشكل لا يصدق وحاضرة في كل قطاع صناعي واقتصادي رئيسي تقريبًا ، وهذا ، جزئيًا ، هو ما يجعل من الصعب العثور على وجهة نظر واحدة حول الوضع الحالي لعالم Java.


لكن هذا لا يعني أنه لا يمكن للمرء محاولة تقييم حالة هذا المجال تقريبًا.


كل يوم ، تنقل عشرات الملايين من أجهزة جافا الافتراضية (JVMs) بياناتهم إلى New Relic. لإعداد هذا التقرير ، قمنا بإخفاء الهوية وتقليل دقة هذه البيانات عن عمد لإعطاء رؤية واسعة لنظام جافا البيئي ، كما نراه. كما أننا لم نضمّن معلومات مفصلة للغاية في التقرير يمكن أن تساعد المتسللين والمهاجمين الآخرين في هجماتهم.


نأمل أن توفر هذه الملاحظات بعض المعلومات السياقية الجديدة وتوفر الغذاء للتفكير في الوضع الحالي لنظام جافا البيئي. مع أخذ هذا التفكير في الاعتبار ، نظرنا في الأسئلة التالية:


  • ما إصدارات 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