مراقبو النجوم على مر الزمن | المساهمين على مر الزمن |
---|---|
جيثب: opengoofy/hippo4j
جيتي: opengoofy/hippo4j
للحصول على التوثيق الكامل ومزيد من التفاصيل، قم بزيارة: المستندات
يعد تجمع مؤشرات الترابط أداة لإدارة سلاسل الرسائل بناءً على فكرة التجميع. يمكن أن يؤدي استخدام تجمع سلاسل الرسائل إلى تقليل تكلفة إنشاء سلاسل الرسائل وتدميرها وتجنب استنفاد موارد النظام الناتج عن عدد كبير جدًا من سلاسل الرسائل. في سيناريوهات معالجة المهام ذات التزامن العالي وكبيرة الحجم، يعد استخدام تجمعات مؤشرات الترابط أمرًا ضروريًا.
إذا كنت تستخدم بالفعل تجمع مؤشرات الترابط في مشروعك، فأعتقد أنك قد تواجه نقاط الألم التالية:
تم تعريف تجمع مؤشرات الترابط بشكل تعسفي، وهناك عدد كبير جدًا من موارد مؤشرات الترابط، مما يتسبب في زيادة التحميل على الخادم.
من الصعب تقييم معلمات تجمع مؤشرات الترابط، ومع زيادة تزامن الأعمال، تواجه الشركة خطر الفشل.
يتجاوز وقت تنفيذ مهمة تجمع مؤشرات الترابط متوسط دورة التنفيذ وهو غير مرئي للمطورين.
يؤدي تراكم مهام تجمع مؤشرات الترابط إلى تفعيل سياسة الرفض ويؤثر على التشغيل العادي للشركات الحالية.
عندما تحدث مشاكل مثل المهلات وقواطع الدائرة في العمل، فمن المستحيل تحديد ما إذا كانت المشكلة ناجمة عن تجمع مؤشرات الترابط لأنه لا توجد مراقبة.
لا يدعم تجمع مؤشرات الترابط الأصلي نقل متغيرات وقت التشغيل، على سبيل المثال، سيتغير سياق MDC عندما يواجه تجمع مؤشرات الترابط.
غير قادر على تنفيذ إيقاف التشغيل بسلاسة، تم تجاهل عدد كبير من مهام تجمع مؤشرات الترابط قيد التشغيل عند إيقاف تشغيل المشروع.
أثناء تشغيل تجمع مؤشرات الترابط، يتوقف تنفيذ المهمة، ويُشتبه في حدوث حالة توقف تام أو تم تنفيذ عملية تستغرق وقتًا طويلاً، ولكن لا توجد طريقة للبدء.
يوفر الدعم للوظائف التالية:
التحكم الشامل - إدارة مثيلات تجمع مؤشرات ترابط التطبيق.
التغييرات الديناميكية - تغيير معلمات تجمع سلاسل الرسائل ديناميكيًا أثناء تشغيل التطبيق، بما في ذلك على سبيل المثال لا الحصر: النوى، والحد الأقصى لعدد سلاسل الرسائل، وسعة قائمة انتظار الحظر، وسياسة الرفض، وما إلى ذلك.
إنذار الإشعارات - أربع إستراتيجيات إشعارات إنذار مدمجة، ونشاط تجمع الخيوط، ومستوى سعة المياه، واستراتيجية الرفض، ووقت تنفيذ المهمة طويل جدًا.
جمع البيانات - يدعم طرق متعددة لجمع بيانات تجمع مؤشرات الترابط، بما في ذلك على سبيل المثال لا الحصر: السجلات، المجموعة المضمنة، Prometheus، InfluxDB، ElasticSearch، إلخ.
تشغيل المراقبة - عرض بيانات وقت تشغيل تجمع مؤشرات الترابط في الوقت الفعلي، وعرض بيانات وقت تشغيل تجمع مؤشرات الترابط في المخططات خلال وقت مخصص.
توسيع الوظيفة - يدعم سياق تسليم مهمة تجمع مؤشرات الترابط عند إغلاق المشروع، ويدعم انتظار تجمع مؤشرات الترابط لإكمال المهمة خلال وقت محدد.
أوضاع متعددة - وضعان للاستخدام المدمجان: الاعتماد على مركز التكوين وعدم الاعتماد على البرامج الوسيطة.
إدارة الحاويات - عرض وقت تشغيل تجمع مؤشر ترابط حاوية Tomcat وJetty وUndertow وتغييرات رقم مؤشر الترابط.
تكييف الإطار - Dubbo، وHystrix، وRabbitMQ، وRocketMQ وغيرها من عرض بيانات وقت التشغيل لتجمع سلاسل العمليات الاستهلاكية وتغييرات أرقام السلاسل.
مراجعة التغيير - توفر مجموعة متنوعة من أدوار المستخدم. تتطلب التغييرات في معلمات تجمع سلاسل المحادثات بواسطة المستخدمين العاديين مراجعة المستخدم الإداري قبل أن تصبح سارية المفعول.
المكونات الإضافية الديناميكية - مكونات إضافية مدمجة متعددة لتجمع الخيوط، تدعم المكونات الإضافية المحددة من قبل المستخدم وملحقات وقت التشغيل.
التكيف متعدد الإصدارات - بعد الاختبار الفعلي، تم دعم الإصدار SpringBoot 1.5.x => 2.7.5 للعميل (لم يتم اختبار الإصدارات الأعلى).
لأغراض العرض التوضيحي المحلي، راجع البدء السريع
البيئة التجريبية: http://console.hippo4j.cn/index.html
نرحب بالمزيد من الشركات المرتبطة بالتسجيل على عنوان التسجيل. التسجيل مخصص فقط لترويج المنتج.
المصدر المفتوح ليس بالأمر السهل، انقر فوق النجمة في الزاوية اليمنى العليا لتشجيعه!
إذا كنت تريد متابعة مقالات Hippo4j المحدثة والمعلومات المشتركة في الوقت الفعلي، فيمكنك متابعة حسابي الرسمي.
إذا كانت لديك أي أسئلة أثناء الاستخدام، أو لديك أي اقتراحات للمشروع، اتبع الحساب الرسمي وقم بالرد: انضم إلى المجموعة للتواصل والمناقشة مع 1000+
من الأصدقاء ذوي التفكير المماثل.
إذا كانت شركتك لا تستخدم سيناريوهات Hippo4j، فإنني أوصي أيضًا بقراءة المبادئ الأساسية للمشروع، وذلك للأسباب التالية بشكل أساسي:
من أجل تحسين جودة التعليمات البرمجية وسلوك التوسع اللاحق، يتم استخدام أنماط تصميم متعددة لتحقيق تماسك عالي واقتران منخفض.
تعتمد الطبقة السفلية من الإطار على إطار عمل Spring للتشغيل، وتستخدم عددًا كبيرًا من الوظائف المرتبطة بـ Spring في الكود المصدري.
استخدم أدوات متنوعة ضمن حزمة التزامن JUC لضمان سلامة العمليات متعددة الخيوط، وفهم البرمجة المتزامنة من خلال السيناريوهات الفعلية.
تعلم من أطر العمل مفتوحة المصدر السائدة Nacos وEureka لتنفيذ مركز التكوين خفيف الوزن ووظائف مركز التسجيل.
قم بتخصيص تنفيذ إطار عمل RPC وتغليف Netty لإكمال تحسين اتصالات شبكة العميل/الخادم.
قم بتوحيد كتابة التعليمات البرمجية من خلال المكونات الإضافية مثل CheckStyle وSpotless لضمان جودة عالية في سلوك التعليمات البرمجية ونمط التعليمات البرمجية.
[Sa-Token]: إطار مصادقة سلطة جافا خفيف الوزن يجعل المصادقة بسيطة وأنيقة!
[HertzBeat]: نظام مراقبة سحابي سهل الاستخدام وسهل الاستخدام، لا يتطلب وكيل، وإمكانيات مراقبة مخصصة قوية.
[JavaGuide]: دليل يغطي المعرفة الأساسية التي يحتاج معظم مبرمجي Java إلى إتقانها.
[ toBeBetterJavaer ]: دليل تعلم جافا سهل الفهم وروح الدعابة.
[Jpom]: إنشاء بسيط وخفيف الوزن ومنخفض التدخل عبر الإنترنت، والنشر التلقائي، والتشغيل والصيانة اليومية، وبرامج مراقبة المشروع.
[12306]: أكمل تقليد عالي 12306 مستخدم + الحصول على تذكرة + طلب + خدمة دفع لمساعدة الطلاب على التركيز على مشاريع التوظيف.
[CongoMall]: مركز تجاري على مستوى المؤسسات، تم تطويره بناءً على نموذج DDD القائم على المجال، بما في ذلك أعمال مراكز التسوق والبنية التحتية.
شكرا لجميع المطورين الذين ساهموا في المشروع. إذا كنت مهتمًا بالمساهمة، فيرجى الرجوع إلى العدد الأول الجيد.
لقد حصل مجتمع Hippo4j على تراخيص متعددة من Jetbrains وقام بتعيين مطورين نشطين للمشروع، ونحن ممتنون جدًا لشركة Jetbrains لدعمها لمجتمع المصادر المفتوحة.