بلوق اليومية | قراءة مقال متكامل مع استخدام دوبو

الصين تشعر بالقلق إزاء مفتوحة المصدر عدد OSC عنوان، الحصول على أحدث المعلومات التقنية

مقدمة

في وقت سابق من هذا العام، بدأ من الأداء العالي المفتوح إطار خدمات مصدر دوبو بابا جولة جديدة من التحديثات، كما انضمت الى حاضنة أباتشي. بعد يستخدم المشروع الأصلي سحابة الربيع، فقد كان أقل نسبيا دوبو. حاليا يتم نقلها إلى قطاع الصناعة التطبيق الأصلي، يمكنك أيضا استخدام دوبو خدمة الدعوة. الاستفادة من هذه الفرصة لتنفيذ إعداد المواد التعليمية قيد الدراسة. دوبو وهو أيضا حاليا springboot المشروع بداية، وطاقة الرياح من خلال SpringBoot ومتكاملة سهلة الاستخدام، وحزمة تعتمد أساسا على سؤال من المقدمة. من اللغط، دعونا نذهب ~

والقليل من المعرفة

لأي اتصال يمكن للطلاب دوبو نفهم أولا المعارف ذات الصلة.

دوبو مقدمة

دوبو بابا هو مفتوح المصدر، إطار خدمة عالية الأداء، وتوفير الأداء العالي والشفافية في برامج خدمة الدعوة عن بعد RPC وخدمات وبرامج الحكم SOA، بحيث الإخراج يمكن تطبيق الخدمات RPC عالية الأداء، وظيفة المدخلات والربيع يتحقق إطار التكامل السلس. تشمل دوبو الاتصالات والكتلة التسامح مع الخطأ والاكتشاف التلقائي من ثلاثة عناصر أساسية.

ويوفر شفافية استدعاء الأسلوب البعيد، مثل استدعاء أسلوب المحلية لتحقيق نفس الاحتجاج طريقة بعيد، مجرد بسيطة التكوين، دون أي API التسلل. وفي الوقت نفسه كان لديه برنامج موازنة التحميل والخطأ والتسامح، بما في ذلك الشبكة قد بدلا F5 الأجهزة موازنات الحمل، وما إلى ذلك، خفض التكاليف، نقطة واحدة. يمكن أن ندرك التسجيل وخدمة الاكتشاف التلقائي، لا حاجة لكتابة أطول خدمة ميت عنوان مزود، التسجيل عنوان استعلام يستند مزود خدمة اسم واجهة IP، ويمكن إضافة بسلاسة أو مزود خدمات إزالة.

في نهاية عام 2011، علي بابا على جيثب مفتوحة المصدر جافا القائمة على توزيع إطار إدارة الخدمات دوبو، بعد أن أصبح زعيما وطنيا في هذا النوع من المشاريع مفتوحة المصدر، عبر العديد من المطورين لصالحهم. وفي الوقت نفسه، كانت هناك العديد من الشركات بنية النظام وزعت على أساس دوبو في الممارسة. حاليا على جيثب، انها مفترق الطرق، ولقد تم كسر عدد النجوم مليون.

الوظيفة الأساسية دوبو :

  • الاتصالات السلكية واللاسلكية، وتوفير مجموعة متنوعة من إطار يضم NIO طول حزمة نموذج اتصال مجردة أساس عدد وافر من المواضيع، التسلسل، و- تبادل المعلومات "طلب استجابة" واسطة.
  • المتسامحة العنقودية، وتوفير أساليب واجهة شفافة تستند على المكالمات الإجراء البعيد، بما في ذلك دعم متعدد البروتوكولات، وكذلك موازنة لينة، وعدم التسامح مع الخطأ، عنوان التوجيه، التكوين الحيوي ودعم المجموعة الأخرى.
  • الاكتشاف التلقائي، خدمة دليل التسجيل مقرها، يمكن للخدمة تستهلك فقط مزود خدمة البحث الديناميكي، والعنوان هو شفاف، بحيث مزود الخدمة قد تزيد أو تنقص آلة على نحو سلس.

العمارة دوبو

  • مزودي الخدمة - تعريض الخدمات على المنفذ المحدد عند بدء التشغيل، وعنوان الخدمة وميناء تسجيلها إلى مركز التسجيل
  • خدمة المستهلك - خدمات الاشتراك مهتما أنهم في عند البدء في مراكز التسجيل، من أجل الحصول على قائمة من مزود خدمة عناوين
  • هيئة التصنيع - المسؤولة عن خدمات تسجيل والاكتشاف، المسؤولة عن تخزين معلومات مزود الخدمة عنوان لتقرير، ودفع المستهلك الخدمة
  • مركز الرصد - مسؤول عن جمع مقدمي الخدمات ودول التشغيل الاستهلاكية، مثل عدد المكالمات الخدمة، والتأخر، الخ، وتستخدم لرصد
  • حاوية تشغيل - التهيئة المسؤولة عن مزود الخدمة، لتحميل وتشغيل دورة حياة إدارة
  • مرحلة الانتشار

    • مقدمي الخدمات في خدمات الموانئ يتعرض المعين، وخدمات تسجيل ومعلومات التسجيل.
    • بدأت المستهلك خدمة قائمة العناوين خدمة الاشتراك في مركز التسجيل.

    المرحلة التشغيلية

    • المعلومات دفعة التسجيل لخدمة قائمة العناوين للمستهلكين.
    • بعد خدمة استقبال المستهلكين على قائمة عناوين من التي تختار لبدء مكالمة لخدمة الهدف.
    • استدعاء عملية خدمة المستهلكين ومقدمي الخدمات الوضع إبلاغ مركز مراقبة التشغيل.

    استدعاء العلاقة الوصف

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

    دوبو العمارة لديه الخصائص التالية، وهي الاتصالات، متانة، والمرونة، والترقيات للأبنية المستقبل.

    الاتصال

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

    متانة

    • رصد مركز اسقاط لا تؤثر في الاستخدام، ولكن فقدان جزء من البيانات أخذ العينات
    • بعد بدد قاعدة بيانات بعيدا، لا يزال بوسعنا تقديم خدمة الاستفسارات قائمة التسجيل عن طريق التخزين المؤقت، ولكن لا يمكنك تسجيل الخدمة الجديدة
    • سجل نظام المجموعة الأقران، بعد دانغ Renyiyitai قبالة، ستتحول تلقائيا إلى أخرى
    • بعد تبادل لاطلاق النار أسفل كل التسجيل، يمكن لمقدمي الخدمات والمستهلكين الخدمة لا تزال التواصل من خلال ذاكرة التخزين المؤقت المحلية
    • مزود الخدمة عديمي الجنسية، بعد Renyiyitai تبادل لاطلاق النار أسفل، لا يؤثر
    • بعد كل مقدمي الخدمات توانى بعيدا، لن تكون قادرة على استخدام تطبيقات خدمة المستهلك، وغير محدود انتظار إعادة الاتصال لاسترداد مقدمي الخدمات

    مرونة

    • مركز تسجيل لمجموعة الأقران يمكن زيادة حيوي المثال نشر الجهاز، وسوف جميع العملاء اكتشاف تلقائيا مركز تسجيل جديد
    • يمكن لمقدمي خدمة غير الحكومية زيادة حيوي نشر حالات آلة، ودفع المعلومات مزود خدمة التسجيل الجديدة للمستهلكين

    التدرجية

    عندما خدمة الكتلة مواصلة توسيع نطاق لدفع IT هيكل الحكم مزيد من التصعيد، والحاجة إلى تحقيق نشر الديناميكي، وحساب سلوك التدفق، والهندسة المعمارية خدمة توزيع الحالية لن يجلب المقاومة. هذا الرقم هو بنية الممكنة المستقبل:

    عقدة دور الوصف

    عقدة دور الوصف الوزع الآلي نشر خدمات مستودع مستودع الوكيل المحلي تستخدم لحزمة توزيع تطبيق متجر جدولة مركز خدمة ارسال زيادة تلقائيا أو ضغط انخفاض على أساس عدد من المكالمات للوصول إلى وحدة تحكم إدارة الادارية مزود الخدمة الموحدة وجدت تسجيل الخدمة والتسجيل خدمات التسجيل مراقب إحصاءات والوقت من مركز مراقبة الدعوة

    يمكنك الوصول إلى الموقع الرسمي للوثيقة: HTTP: //dubbo.apache.org/zh-cn/docs/user/quick-start.html، وهناك أوصاف مفصلة وتعليمات للاستخدام. لم يعد هناك من التفصيل.

    دوبو لدمج واستخدام

    وبناء على مشروع حاضنة دوبو الربيع التمهيد المشروع الرسمي، الاندماج في SpringBoot بسيط جدا.

    ملاحظة: لأن هذه السلسلة لا تزال تستخدم 1.5.x الإصدارات لشرح، لذلك استخدام الإصدار 0.1.x. إذا كنت تستخدم ويمكن للطلاب SpringBoot2.x استخدام الإصدار 0.2.x.

    للراحة، واجهة مباشرة لإنشاء المشروع، الربيع التمهيد دوبو-API.

    IHelloService.java

    / ** * تعريف واجهة *Author oKong * * / الواجهة العمومية IHelloService { مرحبا سلسلة (اسم سلسلة)؛ }

    مزود الخدمة

    إنشاء أعمال الربيع التمهيد دوبو ومقدم الخدمة. قدم 0. بوم التابعة.

      < ! - قدم المعهد - > < التبعية > < groupId > cn.lqdev.learning < / GroupId > < artifactId > الربيع التمهيد دوبو-API < / ArtifactId > < نص > 0.0.1 لقطة < / النسخة > < / التبعية > < ! - إدخال دوبو تعتمد - > < التبعية > < groupId > com.alibaba.boot < / GroupId > < artifactId > دوبو الربيع-التمهيد بداية < / ArtifactId > < نص > 0.1.1 < / النسخة > < / التبعية > < ! - قدم كمركز تسجيل رديس - > < التبعية > < groupId > org.springframework.boot < / GroupId > < artifactId > ربيع التمهيد-بداية-بيانات رديس < / ArtifactId > < / التبعية >

    ملاحظة: اختيار المباشرة هنا رديس تستخدم كمركز تسجيل. الافتراضي هو حارس الحديقة.

    1. فصول دراسية واجهة الكتابة. HelloServiceImpl.java

    / ** * تعريف فئة تنفيذ الخدمة *Author oKong * * / // ملاحظة هنا هي دوبو مثلservice Service ( نسخة = "$ {demo.service.version}"، // نسخة تطبيق = "$ {dubbo.application.id}"، // رقم الطلب بروتوكول = "$ {dubbo.protocol.id}"، // معرف بروتوكول التسجيل = "$ {dubbo.registry.id}") // رقم التسجيل @ Slf4j الطبقة العامة HelloServiceImpl الأدوات IHelloService { Override جمهور سلسلة مرحبا (اسم سلسلة) { log.info ( "مقدم دوبو، المعلمات أسم: {}"، اسم)؛ العودة "مرحبا" + اسم + "، وهذا هو مزود دوبو!". } }

    تحت الوصف:Service هنا هو تحت فئة مسار حزمة الشرح com.alibaba.dubbo.config.annotation.Service، الذي يحدد إصدار واجهة، والأساسي معرف بروتوكول معلومات، معرف التسجيل مثل. لاحظ هنا أن رقم الإصدار هو مفيد لأن واجهة ستكون قضايا التعايش متعددة الإصدار، ومن المسلم به عموما معلومات الإصدار ستكون مجموعة.  2. تعيين معلومات الملف الشخصي، إضافة دوبو المعلومات ذات الصلة، مثل تسجيل نوع مركز والعنوان وهلم جرا.

    اسم التطبيق لسهولة تحديد # dubbo.application.id = الربيع التمهيد دوبو، مزود dubbo.application.name = الربيع التمهيد دوبو، مزود server.port = 8686 # مجموعة النسخة demo.service.version = 1.0.0 # البروتوكول الاختياري رديس دوبو، المتشعب، الادخار، الخ dubbo.protocol.id = دوبو dubbo.protocol.name = دوبو dubbo.protocol.port = 20880 مجموعة # المشروحservice مسار المسح ومثلReference dubbo.scan.basePackages = cn.lqdev.learning.springboot.dubbo.provider.service # التكوين التسجيل dubbo.registry.id = okong-التسجيل # رديس نوع التسجيل تستخدم هنا كمركز تسجيل # حارس الحديقة: //127.0.0.1: 2181 dubbo.registry.address = رديس: //127.0.0.1: 6379 # تعيين اسم المستخدم وكلمة المرور، إن وجدت، # Dubbo.registry.username = oKong # Dubbo.registry.password = oKong # تعيين المعلمات رديس # اتصالات الخمول تجمع الاتصال الأقصى dubbo.registry.parameters.max.idle = 8 # عدد أقصى تجمع اتصال من الاتصالات (استخدام قيمة سلبية يعني عدم وجود الحد) dubbo.registry.parameters.max نشطة = 8 # أقصى تجمع اتصال كتلة وقت الانتظار (استخدام قيمة سلبية يعني عدم وجود الحد) dubbo.registry.parameters.max-الانتظار = -1 # اتصالات الخمول تجمع الاتصال الأقصى dubbo.registry.parameters.max الخمول = 8 # والاتصالات الخمول الحد الأدنى تجمع الاتصال dubbo.registry.parameters.min الخمول = 0

    ملاحظة: للحصول على الراحة، والاستخدام المباشر رديس كمركز تسجيل. لرديس اتصال معلمات التكوين يمكن تعيين عبر نموذج dubbo.registry.parameters.xxx، بسبب المعلمات هو كائن خريطة، وبالتالي فإن الحل يكمن في عدم إضافة تحويل القضية، وملء ما هو ما. معين كائن تكوين التسجيل، يمكنك عرض الدرجة com.alibaba.dubbo.config.RegistryConfig. لرديس التكوين المعلمة ذات الصلة، ويمكنك عرض الدرجة com.alibaba.dubbo.registry.redis.RedisRegistry.

    سجلات أخرى، هو ما شابه ذلك، لديك للعثور على الطبقات تكوين التسجيل في حزمة com.alibaba.dubbo.registry.

    3. بدء الطبقة الكتابة.

    DubboProviderApplication.java

    / ** * مزود Dubbo- *Author oKong * * / SpringBootApplication @ Slf4j الطبقة العامة DubboProviderApplication { ساكنة العام باطلة الرئيسية (سلسلة وسائط) رميات استثناء { // منذ مزود دوبو ببساطة قد تكون بمثابة بيئة غير شبكة الإنترنت جديد SpringApplicationBuilder (DubboProviderApplication.class) .web (كاذبة) .run (وسائط)؛ log.info ( "التمهيد الربيع التمهيد دوبو، مزود!")؛ } }

    4. بدء التطبيق، ويمكن الحصول عليه من خدمة رديس، يمكنك ان ترى بالفعل معلومات قائمة الخدمات.

    الخدمات الاستهلاكية

    إنشاء المشاريع الربيع التمهيد دوبو للمستهلك. 0. قدم بوم تعتمد

      < ! - قدم المعهد - > < التبعية > < groupId > cn.lqdev.learning < / GroupId > < artifactId > الربيع التمهيد دوبو-API < / ArtifactId > < نص > 0.0.1 لقطة < / النسخة > < / التبعية > < ! - إدخال دوبو تعتمد - > < التبعية > < groupId > com.alibaba.boot < / GroupId > < artifactId > دوبو الربيع-التمهيد بداية < / ArtifactId > < نص > 0.1.1 < / النسخة > < / التبعية > < ! - قدم كمركز تسجيل رديس - > < التبعية > < groupId > org.springframework.boot < / GroupId > < artifactId > ربيع التمهيد-بداية-بيانات رديس < / ArtifactId > < / التبعية > < التبعية > < groupId > org.springframework.boot < / GroupId > < artifactId > الربيع التمهيد بداية على شبكة الإنترنت < / ArtifactId > < / التبعية >

    1. إضافة معلومات التكوين المسجلين إصدار الملف ومركز خدمة

    اسم التطبيق لسهولة تحديد # dubbo.application.id = الربيع التمهيد دوبو المستهلك dubbo.application.name = الربيع التمهيد دوبو المستهلك server.port = 9696 مجموعة # المشروحservice مسار المسح ومثلReference dubbo.scan.basePackages = cn.lqdev.learning.springboot.dubbo.consumer # التكوين التسجيل dubbo.registry.id = okong-التسجيل # رديس نوع التسجيل تستخدم هنا كمركز تسجيل # حارس الحديقة: //127.0.0.1: 2181 dubbo.registry.address = رديس: //127.0.0.1: 6379 # تعيين اسم المستخدم وكلمة المرور، إن وجدت، # Dubbo.registry.username = oKong # Dubbo.registry.password = oKong # تعيين المعلمات رديس # اتصالات الخمول تجمع الاتصال الأقصى dubbo.registry.parameters.max.idle = 8 # عدد أقصى تجمع اتصال من الاتصالات (استخدام قيمة سلبية يعني عدم وجود الحد) dubbo.registry.parameters.max نشطة = 8 # أقصى تجمع اتصال كتلة وقت الانتظار (استخدام قيمة سلبية يعني عدم وجود الحد) dubbo.registry.parameters.max-الانتظار = -1 # اتصالات الخمول تجمع الاتصال الأقصى dubbo.registry.parameters.max الخمول = 8 # والاتصالات الخمول الحد الأدنى تجمع الاتصال dubbo.registry.parameters.min الخمول = 0

    2. تبدأ الطبقة الكتابة

    DubboConsumerApplication.java

    / ** * أمثلة المستهلك Dubbo- *Author oKong * * / SpringBootApplication @ Slf4j الطبقة العامة DubboConsumerApplication { ساكنة العام باطلة الرئيسية (سلسلة وسائط) رميات استثناء { SpringApplication.run (DubboConsumerApplication.class، وسائط)؛ log.info ( "الربيع التمهيد دوبو مستهلك للبدء!")؛ } }

    3. كتابة الخدمات واجهة restapi، مكالمة الخدمة.

    / ** * أمثلة نداء *Author oKong * * / RestController @ Slf4j الطبقة العامة DemoController { / ** * أعلن كمرجع، في الواقع، هو أن إنشاء فئة الفول، * استبدال التكوين أكس الأصلي تعليق فقط * < دوبو: مرجع معرف = "xxxService" واجهة = "com.xxx.XxxService" / > * / Reference (الإصدار = "1.0.0") IHelloService helloService. GetMapping ( "/ مرحبا") جمهور سلسلة مرحبا (اسم سلسلة) { log.info ( "دعوة اسم مزود الخدمة، المعلمات: {}"، اسم)؛ عودة helloService.hello (اسم)؛ } }

    4. بدء التطبيق، يرجى زيارة الموقع http: //127.0.0.1 :؟ 9696 / اسم مرحبا = oKong، تستطيع أن ترى في نجاح خدمة الدعوة.

    مراقب الخلفية

    مراقبة رسمية معتمدة افتراضيا حارس الحديقة. وقال وثائق رسمية أيضا، لسد رديس تنفيذها في فتح النسخة مصدر يوفر سوى أن موثوقية تعتمد على موثوقية رديس نفسها. حارس الحديقة نقترح عليك استخدام ذلك، رديس أو استخدامه بمثابة ذاكرة التخزين المؤقت.

    مراقبة عنوان المحطة: الشبكي: //github.com/apache/incubator-dubbo-ops يمكننا النفس تثبيت تعليمات تجميع لتعمل تحت.

    واجهة جديدة للرصد:

    بعد إضافة حاضنة أباتشي، واجهة باللغة الإنجليزية. . . أو نظرة الأصلي آه مريحة!

    المواد المرجعية

  • ملخص

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

    بلوق الكاتب: oKong

    عمود بلوق اليومي، والمواد التقنية الموصى بها يوميا من المدونين نوعية ممتازة بالنسبة لك. وبينما ترحب بتقديم المستخدم، مرة واحدة يتم تضمين المقالة في الرواية الرسمية، وسوف نوصي يا في المنزل وغيرها من المواقع. اهتمام المصدر المفتوح الصين OSC الاطلاع يوميا على دفع جودة، انقر فوق " تعرف على المزيد "اقرأ المقال الأصلي.

    أسوأ الدخن الرئيسي العلمية! MIX 2S الدخن التقييم الأول

    169 يوان! يذكر الحب مكبرات صوت مصغرة صدر: وظائف شبكة AI + رئيس +200

    وقف وطني! هذه الأنواع من العقاقير بسرعة رميها

    الإفراج عن 8999 يوان الدخن هذه اللعبة: I7 + 1060 + 256G SSD، الحرس فعالة من حيث التكلفة!

    BGI هبوط حصة عودة هذه المؤسسات 40 هي "ليلة قوس قزح"

    روسيا لفتح حادث مركبة الاطلاق التجاري، وقد تم تجهيز القمر الصناعي مع انفجار كامل، والجانب الروسي: تخجل

    أعلى شياو 845+ الشحن اللاسلكي MIX 2S الهاتف الدخن رسميا

    العلوم والتكنولوجيا دائرة الحداد الجماعي جين يونغ: أبطال اتخاذ جيدة! نظرا لعدم والأنهار والبحيرات

    يانتاى "اتفاقية المواطن" أ "الحب شيان" شيان هو أصدقاء الحارة جدا

    3299 يوان الدخن MIX 2S صدر: شياو لونغ 845+ الحب مساعد صوت صغير، ومستوى صور مذهلة

    1999 يوان! هواوي نوفا 3E بيع اليوم: كامل الشاشة + يونيكورن 659، يميل حتى الآن؟

    23 مليون نسمة على المشاركة، لا أحد الفوز! كشفت الشرطة القمار حالة عشرة مليارات!