سؤال

هل هناك C ++ جيد إطار لتنفيذ XA المعاملات الموزعة؟

ومع مصطلح "جيدة" أعني صالحة للاستعمال، بسيطة (لا يعني "سهلة")، جيدة التنظيم.

ونظرا لدراسة الأسباب، في هذه اللحظة أنا الشروع في تنفيذ الشخصي بعد X / مواصفات XA المفتوحة.

وشكرا لكم مقدما.

هل كانت مفيدة؟

المحلول

وأنا لست على علم المصدر المفتوح أو رصد المعاملات الحرة التي لديه أي درجة من النضج، على الرغم من هذا الرابط لديها بعض مروحة المغادرة. تلك التجارية الحالية هي سهرة BEA، و المؤسسة خدمة الرسائل تيبكو في (وحقا المعاملات مدير قائمة انتظار الرسائل مثل MQ IBM) وTransarc في <لأ href = "http://publib.boulder.ibm.com/infocenter/txformp/v5r1/index.jsp؟topic=/com.ibm.txseries510.doc/aetgpk0012.htm" يختلط = " نوفولو noreferrer "> انسينا (والتي أصبحت الآن مملوكة IBM). هذه الأنظمة كلها جدا مكلفة.

إذا كنت تريد أن تجعل الخاصة بك (وبالمناسبة جعل قليلا من اسم لنفسك عن طريق ملء الفراغ في الفضاء البرمجيات مفتوحة المصدر) الحصول على نسخة من <لأ href = "HTTPS: //rads.stackoverflow. كوم / AMZN / فوق / كوم / 1558601902 "يختلط =" نوفولو noreferrer "> رمادي ورويتر . هذا هو العمل النهائي على الصفقة العمارة نظم معالجة، وكتب من قبل اثنين من أبرز الخبراء في هذا المجال.

ومن المثير للاهتمام، يزعمون أن المرء لا يستطيع تنفيذ جهاز TP العمل في حوالي 10،000 خطوط C. وهذا يبدو في الواقع معقولة جدا، لأن ما تقوم به هو ليس كل ما معقدة. في بعض الأحيان قد يميل لمحاولة.

وأساسا تحتاج إلى إجراء منسق المعاملات الموزعة الذي يعمل على عملية الخفي. ستحتاج للحصول على بروتوكول إدارة الموارد تعمل منه، وذلك بدءا من هذا كنموذج من المحتمل ان يكون بداية جيدة. إذا كان يمكنك الحصول عليه للفة بشكل مستقل الظهر أو ارتكاب الصفقة لديك أساس واجهة TM-RM.

ووAPI XA كما هو محدد في المواصفات هو API للسيطرة على إدارة المعاملات. بالمعنى الدقيق للكلمة، لا تحتاج إلى جعل العمارة 3-الطبقة استخدام المعاملات الموزعة من هذا النوع، لكنها أكثر أو أقل لا طائل من دون مراقبة TP. كيف يتم التواصل من الواجهة الأمامية إلى الطبقة الوسطى يمكن أن تترك باعتبارها ممارسة للقارئ. كنت أفضل حالا باستخدام ORB القائمة، التي يوجد منها عدة تطبيقات مفتوحة المصدر الحميدة على الارجح.

واعتمادا على ما إذا كنت تريد أن تجعل DTC وخادم التطبيق عمليات منفصلة (والذي هو مرغوب فيه للاستقرار لكن ليس ضروريا تماما ربما) هل يمكن أيضا استخدام ACE كأساس لخادم DTC.

إذا كنت تريد أن تجعل عالية الأداء خادم الطبقة المتوسطة، وتحقق من دوغلاس شميدت <لأ href = "http://www.cs.wustl.edu/~schmidt/ACE-overview.html" يختلط = " نوفولو noreferrer "> إطار ACE . هذا يأتي مع ORB دعا TAO، ومرنة بما يكفي للسماح لك استخدام أكثر أو أقل أي طراز مؤشر الترابط التي تأخذ المبتكر. استخدام هذا هو مفاضلة بين تعلمها وجهد الكتابة الخاصة بك وتصحيح جميع مشاكل المزامنة وconcurrancy.

نصائح أخرى

وربما في وقت متأخر جدا لهذه المهمة، ولكن يمكن أن يكون مفيدا للمستخدمين الآخرين: LIXA عبارة ليس "الإطار"، لكنه يوفر التنفيذ للمواصفات TX عملية ترسيم الحدود ويدعم معظم الميزات XA. مواصفات TX هي للغات C و كوبول، ولكن التكامل بين النسخة C ++ C داخل المشروع يجب أن يكون جهد.

والخيار الآخر هو المصدر المفتوح إندورو / X توزع تجهيز المعاملات إطار الذي يسمح لكتابة بسيطة خدمات C / C ++ التي يمكن أن تعمل مع مديري الموارد (مثل قواعد البيانات) ويعطي القدرة على الالتزام أو إحباط الأعمال التي تقوم بها عدة التنفيذية مختلفة على نفس / مختلف الخوادم الفعلية عملت مع مختلف الموارد / قواعد البيانات.

ويستخدم داخليا XA 2PC هناك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top