ملحقات إدارة جافا
تُعدّ Java Management Extensions ( JMX ) تقنيةً من تقنيات Java تُوفّر أدواتٍ لإدارة ومراقبة التطبيقات ، وكائنات النظام، والأجهزة (مثل الطابعات )، والشبكات الموجهة نحو الخدمات. تُمثَّل هذه الموارد بكائناتٍ تُسمى MBeans (اختصارًا لـ Managed Bean ). في واجهة برمجة التطبيقات (API)، يُمكن تحميل الفئات وإنشاؤها ديناميكيًا. يُمكن تصميم وتطوير تطبيقات إدارة ومراقبة التطبيقات باستخدام Java Dynamic Management Kit. [ 1 ]
حددت المواصفة JSR 003 [ 2 ] الصادرة عن عملية مجتمع جافا ، إصدارات JMX 1.0 و1.1 و1.2. وكان يجري تطوير JMX 2.0 بموجب المواصفة JSR 255، ولكن تم سحب هذه المواصفة لاحقًا. [ 3 ] وتحدد المواصفة JSR 160 واجهة برمجة تطبيقات JMX Remote API 1.0 للإدارة والمراقبة عن بُعد. [ 4 ] وكان يجري تطوير امتداد لواجهة برمجة تطبيقات JMX Remote API لخدمات الويب بموجب المواصفة JSR 262. [ 5 ]
تم اعتماد JMX في وقت مبكر من قبل مجتمع J2EE ، وأصبح جزءًا من J2SE منذ الإصدار 5.0. "JMX" هي علامة تجارية لشركة أوراكل .
بنيان

يستخدم JMX بنية ثلاثية المستويات:
- يحتوي مستوى المسبار - والذي يُسمى أيضًا مستوى الأجهزة - على المسابير (التي تُسمى MBeans ) التي تُجهز الموارد
- مستوى الوكيل ، أو خادم MBean - جوهر JMX. يعمل كوسيط بين MBean والتطبيقات.
- يُمكّن مستوى الإدارة عن بُعد التطبيقات البعيدة من الوصول إلى خادم MBeanServer عبر الموصلات والمحولات. يوفر الموصل وصولاً كاملاً عن بُعد إلى واجهة برمجة تطبيقات MBeanServer باستخدام وسائل اتصال متنوعة ( RMI ، IIOP ، JMS ، WS-*، إلخ)، بينما يُكيّف المحول واجهة برمجة التطبيقات مع بروتوكول آخر ( SNMP ، إلخ) أو مع واجهة مستخدم رسومية قائمة على الويب ( HTML / HTTP ، WML / HTTP ، إلخ).
يمكن أن تكون التطبيقات عبارة عن منصات تحكم عامة (مثل JConsole [ 6 ] و MC4J [ 7 ] ) أو تطبيقات خاصة بمجال معين (مثل تطبيقات المراقبة). تتفاعل التطبيقات الخارجية مع MBeans باستخدام موصلات JMX ومحولات البروتوكول. تعمل الموصلات على ربط وكيل JMX بتطبيق إدارة عن بُعد يدعم JMX. يتضمن هذا النوع من الاتصال موصلًا في وكيل JMX وعميل موصل في تطبيق الإدارة.
تأتي منصة جافا، الإصدار القياسي، مزودة بموصل واحد، وهو موصل RMI ، الذي يستخدم بروتوكول Java Remote Method Protocol، وهو جزء من واجهة برمجة تطبيقات استدعاء الأساليب عن بُعد في جافا . هذا هو الموصل الذي تستخدمه معظم تطبيقات الإدارة.
توفر محولات البروتوكول عرضًا إداريًا لوكيل JMX من خلال بروتوكول معين. وعادةً ما تكون تطبيقات الإدارة التي تتصل بمحول البروتوكول خاصة بهذا البروتوكول.
حبوب مُدارة
الـ Managed Bean - ويُشار إليه أحيانًا ببساطة باسم MBean - هو نوع من أنواع JavaBean ، يتم إنشاؤه باستخدام حقن التبعية . تُستخدم الـ Managed Beans بشكل خاص في تقنية Java Management Extensions، ولكن مع Java EE 6، تُقدم المواصفات تعريفًا أكثر تفصيلًا للـ Managed Bean.
يمثل MBean موردًا يعمل في آلة جافا الافتراضية ، مثل تطبيق أو خدمة تقنية من خدمات جافا إي إي (مراقب المعاملات، برنامج تشغيل JDBC، إلخ). ويمكن استخدامه لجمع إحصائيات حول أمور مثل الأداء، واستخدام الموارد، أو المشكلات (سحب البيانات)؛ وللحصول على إعدادات التطبيق أو خصائصه وتعيينها (دفع/سحب البيانات)؛ ولإشعار الأحداث مثل الأعطال أو تغييرات الحالة (دفع البيانات).
تنصّ Java EE 6 على أن الكائن المُدار هو كائن يتم تنفيذه بواسطة فئة Java، والتي تُسمى فئة الكائن. وتُعتبر فئة Java ذات المستوى الأعلى كائنًا مُدارًا إذا تم تعريفها على أنها كائن مُدار بواسطة أي مواصفة تقنية أخرى من مواصفات Java EE (على سبيل المثال، مواصفة تقنية JavaServer Faces )، أو إذا استوفت جميع الشروط التالية:
- إنها ليست فئة داخلية غير ثابتة .
- إنها فئة ملموسة، أو أنها مشروحة
@Decorator. - لم يتم وضع تعليق توضيحي عليه باستخدام تعليق توضيحي يحدد مكون EJB أو تم تعريفه كفئة EJB bean في
ejb-jar.xml.
لا يلزم وجود إعلان خاص، مثل التعليق التوضيحي، لتعريف عنصر مُدار.
يمكن لـ MBean إخطار MBeanServer بتغييراته الداخلية (في السمات) من خلال تنفيذ JMX javax.management.NotificationEmitter. يقوم التطبيق المهتم بتغييرات MBean بتسجيل مستمع (Listener javax.management.NotificationListener) لدى MBeanServer. تجدر الإشارة إلى أن JMX لا يضمن استلام المستمعين لجميع الإشعارات. [ 8 ]
الأنواع
يوجد نوعان أساسيان من MBean:
- تقوم MBeans القياسية بتنفيذ واجهة أعمال تحتوي على مُعدِّلات ومُسترجعات للسمات والعمليات (أي الأساليب).
- تقوم MBeans الديناميكية بتنفيذ
javax.management.DynamicMBeanالواجهة التي توفر طريقة لسرد السمات والعمليات، وللحصول على قيم السمات وتعيينها.
تتضمن الأنواع الإضافية Open MBeans و Model MBeans و Monitor MBeans . Open MBeans هي كائنات MBeans ديناميكية تعتمد على أنواع البيانات الأساسية، وهي واضحة وسهلة الاستخدام. أما Model MBeans فهي كائنات MBeans ديناميكية يمكن تهيئتها أثناء التشغيل. كما يُوفر أيضًا فئة MBean عامة لتهيئة الموارد ديناميكيًا أثناء تشغيل البرنامج.
MXBean ( Platform MBean ) هو نوع خاص من MBean الذي يجسد الأنظمة الفرعية للآلة الافتراضية Java مثل جمع البيانات المهملة ، وتجميع JIT ، ومجمعات الذاكرة ، والترابط المتعدد ، وما إلى ذلك.
تطبيق الإدارة (MLet ) هو كائن إدارة (MBean) مساعد لتحميل وإنشاء وتسجيل كائنات الإدارة (MBeans) في خادم كائنات الإدارة (MBeanServer) من وصف XML . صيغة وصف XML هي: [ 9 ]
<MLET CODE = ''class'' | OBJECT = ''serfile'' الأرشيف = ''قائمة الأرشيف'' [CODEBASE = ''codebaseURL''] [NAME = ''objectName''] [VERSION = ''version''] > [قائمة الوسائط] </MLET>
يدعم
يتم دعم JMX على مستويات مختلفة من قبل موردين مختلفين:
- يدعم خادم تطبيقات جافا، مثل خادم تطبيقات OpenCloud Rhino، بروتوكول JMX، JBoss ، JOnAS، WebSphere Application Server ، WebLogic ، SAP NetWeaver Application Server ، Oracle Application Server 10g و Sun Java System Application Server .
- يدعم كل من خادم دليل UnboundID وخادم وكيل الدليل وخادم المزامنة بروتوكول JMX. [ 10 ]
- تشمل أدوات إدارة الأنظمة التي تدعم البروتوكول: Empirix OneSight، و GroundWork Monitor، و Hyperic ، و HP OpenView ، و IBM Director ، وITRS Geneos، و Nimsoft NMS ، و OpenNMS ، و Zabbix ، و Zenoss Core ، وZyrion، و SolarWinds ، و Uptime Infrastructure Monitor ، وLogicMonitor.
- يدعم JMX أيضًا حاويات servlet مثل Apache Tomcat . [ 13 ] و Jetty (خادم الويب)
- MX4JJMX مفتوح المصدر للحوسبة المؤسسية.
- jManageتم أرشفة هذا البرنامج في 2020-08-03 على موقع Wayback Machine، وهو عبارة عن وحدة تحكم JMX مفتوحة المصدر على مستوى المؤسسات مع واجهات ويب وواجهات سطر أوامر.
- MC4Jهي وحدة تحكم مرئية مفتوحة المصدر للاتصال بالخوادم التي تدعم JMX
- snmpAdaptor4jهو برنامج مفتوح المصدر يوفر وصولاً بسيطاً إلى MBeans عبر بروتوكول SNMP.
- jvmtop هي أداة مراقبة JMX خفيفة الوزن ومفتوحة المصدر لسطر الأوامر
- يمكن لبرنامج Prometheus استيعاب بيانات JMX عبر مُصدِّر JMX [ 14 ] الذي يعرض المقاييس بتنسيق Prometheus.
- يقوم وكيل البنية التحتية المضيفة لـ New Relic بجمع بيانات JMX [ 15 ] والتي تُعرض في رسوم بيانية متنوعة في لوحة معلومات منصة المراقبة الخاصة بها. [ 16 ] [ 17 ]
- Jolokia هو وكيل جافا يعرض JMX عبر HTTP لتسهيل الوصول إليه من الأنظمة غير العاملة بجافا.
انظر أيضاً
مراجع
- ↑ "نظرة عامة على مجموعة أدوات إدارة جافا الديناميكية" . docs.oracle.com . تم الاطلاع عليه بتاريخ 12 يناير 2021 .
- ↑ JSR 003: مواصفات ملحقات إدارة Java™ (JMX™)
- ↑ JSR 255: مواصفات ملحقات إدارة Java™ (JMX™)، الإصدار 2.0
- ↑ JSR 160: واجهة برمجة تطبيقات إدارة Java™ (JMX) عن بُعد
- ↑ JSR 262: موصل خدمات الويب لوكلاء ملحقات إدارة جافا (JMX)
- ↑ استخدام JConsole لمراقبة التطبيقات
- ↑ «يُنشئ مشروع MC4J برمجيات إدارة لخوادم تطبيقات J2EE وتطبيقات Java الأخرى» . مؤرشف من الأصل بتاريخ 23 مارس 2007. تم الاطلاع عليه بتاريخ 27 أغسطس 2006 .
- ↑ امتدادات إدارة جافا (JMX) – أفضل الممارسات
- ^ "MLet (منصة Java 2 SE 5.0)" . صن مايكروسيستمز . تم الاسترجاع 2008-06-22 .
- ↑ شركة UnboundID. مؤرشفة بتاريخ 6 مارس 2012 في أرشيف الإنترنت (Wayback Machine).
- ↑ "الرئيسية" .
- ↑ "جمع بيانات JMX" . www.logicmonitor.com . تم الاطلاع عليه بتاريخ 20 نوفمبر 2020 .
- ↑ أباتشي تومكات 6.0: مراقبة وإدارة تومكات (دليل تومكات)
- ↑ "JMX Exporter" . GitHub . 14 فبراير 2022.
- ↑ "تكامل مراقبة JMX | وثائق New Relic" . docs.newrelic.com . تم الاطلاع عليه بتاريخ 13 يناير 2025 .
- ↑ "صفحة JVM (جافا): عرض مقاييس خادم التطبيق من JMX | وثائق نيو ريليك" . docs.newrelic.com . تم الاطلاع عليه بتاريخ 13 يناير 2025 .
- ↑ "مقدمة إلى New Relic لـ Java | وثائق New Relic" . docs.newrelic.com . تم الاطلاع عليه بتاريخ 13 يناير 2025 .
للمزيد من القراءة
مقالات
- "تمكين بنى المكونات باستخدام JMX" بقلم مارك فلوري وجوها ليندفورس - مؤرشف بتاريخ 7 ديسمبر 2005 على موقع Wayback Machine
- "تقديم واجهة برمجة تطبيقات إدارة J2EE جديدة محايدة للبائعين" بقلم أندرياس شيفر - مؤرشفة بتاريخ 8 أبريل 2002 على موقع Wayback Machine
- "جافا في مجال الإدارة" بقلم ماكس جوف، 1999
- JMX/JBoss – تصميم النواة المصغرة
- " إدارة تطبيقاتك التي تدعم JMX باستخدام jManage 1.0 " بقلم راكيش كالرا، 16 يناير 2006
- " إدارة أنظمة J2EE باستخدام JMX وJUnit " (مؤرشف بتاريخ 26 مايو 2008 على موقع Wayback Machine ) بقلم لوكاس ماكجريجور
- نظرة عامة على المراقبة والإدارة في صن جافا
- دليل Java EE 6: حول الحزم المُدارة
الكتب
- بنيامين ج. سولينز، مارك ب. ويبل : JMX عمليًا: ستتمكن أيضًا من تشغيل أول تطبيق JMX لديك ، منشورات مانينغ، 2002، رقم ISBN 1-930110-56-1
- ج. ستيفن بيري : ملحقات إدارة جافا ، أورايلي، رقم ISBN 0-596-00245-9
- جيف هانسون : ربط عملاء وخوادم JMX: فهم ملحقات إدارة جافا ، APress LP، ISBN 1-59059-101-1
- مارك فلوري ، يوها ليندفورس : JMX: إدارة J2EE باستخدام ملحقات إدارة جافا ، دار نشر سامز، رقم ISBN 0-672-32288-9
روابط خارجية
- JMX 1.4 (JMX 1.4، جزء من Java 6)
- JMX على JBoss.com
- JMX على www.oracle.com
- JSR 255 (JMX 2.0)
- JSR 3 (JMX 1.0، 1.1، و1.2)
- واجهات برمجة تطبيقات جافا
- منصة جافا للمؤسسات
- طلبات مواصفات جافا
- إدارة الشبكة
