مكدس Java الخاص بـ Cardano يؤتمت استعادة المعاملات باستخدام TxFlow
Cardano Client Lib يضيف خطط معاملات محمولة، وسلسلة UTxO تلقائية، واسترداداً متيناً. Yaci Store وعقدة البيانات Yano قبل الإصدار يوسّعان المكدس نفسه الذي يضع Java أولاً ليشمل الفهرسة واختبار الشبكة المحلية.
By SongMarketCap
Updated:
نشرت Cardano Community الجلسة الحادية والسبعين من Developer Office Hours، حيث قدّم Satya Ranjan، كبير مهندسي البلوكتشين في Cardano Foundation، أدوات جديدة لمطوري Java الذين يبنون على Cardano.
يتوفر Cardano Client Lib بإصدار مستقر 0.7.2، بينما وصلت سلسلة الإصدارات ما قبل الإطلاق إلى 0.8.0-pre5. تستهدف المكونات الأحدث تنفيذاً متعدد الخطوات، ومعالجة التراجع، وأحمال عمل معاملات أكبر.
Cardano TxPlan ينقل منطق المعاملات إلى YAML
Cardano Client Lib عبارة عن SDK خالص لـ Java يدعم اشتقاق العناوين، والمدفوعات، وسك التوكنات، وPlutus scripts، وعمليات التحصيص والحوكمة. لا يتطلب مكتبات أصلية، ويمكنه أيضاً العمل مع لغات JVM مثل Kotlin وScala.
الطبقة الجديدة TxPlan تتيح تعريف تعليمات المعاملات في مستندات YAML أو JSON قابلة للنقل بدلاً من بقائها بالكامل داخل شفرة التطبيق. يمكن لخطة أن تصف المدفوعات والسك وتفاعلات السكربتات، بينما تُزوَّد العناوين ومفاتيح التوقيع ومراجع السياسات بأمان أثناء زمن التشغيل.
يمكن للمطورين إعادة استخدام الخطة نفسها مع مستلمين أو حسابات أو معلمات توكن مختلفة. كما يمكن تسلسل التعريف وتخزينه، مع الحفاظ على المعلومات اللازمة لإعادة بناء معاملة بعد تراجع أو تنفيذ منقطع.
يتصل TxPlan مباشرة بباني QuickTx الخاص بـ Cardano Client Lib. تظل بنية تأليف المعاملات والبنية التحتية للمزوّد الحالية متاحة، بينما تنتقل تعليمات الأعمال القابلة للتكرار إلى صيغة يمكن التحقق منها وتنفيذها بشكل مستقل.
TxFlow يتعامل مع السلسلة، والتراجعات، وتدفّقات المعاملات
ينسّق TxFlow العمليات التي تتطلب عدة معاملات بلوكتشين مترابطة. يمكن للمطور تعريف خطوات مثل الإيداع والتوزيع والسحب، ثم تحديد أي المخرجات من خطوة سابقة ينبغي أن تموّل التالية.
يدعم المحرك المعالجة التسلسلية، والسلسلة عبر خطوط الأنابيب، والدفعات المتوازية. يتيح وضع خط الأنابيب لمعاملة لاحقة أن تستهلك مخرجاً أنشأته معاملة قيد الانتظار من دون انتظار تأكيد كتلة منفصل.
تُضبط متطلبات التأكيد، وسياسات إعادة المحاولة، واسترداد التراجع داخل التدفق. هذا يلغي حاجة كل فريق تطبيق إلى بناء طبقة المراقبة وإعادة الإرسال الخاصة به.
يوسّع TxFlowStream النموذج ليشمل أحمال عمل مستمرة وعالية الحجم. عرض Ranjan إدخال CSV وشرح أن التدفق المفتوح يمكنه أيضاً تلقي الطلبات عبر نقطة نهاية HTTP أو موائم خارجي. Kafka غير متضمنة في المكتبة، لكنها تستطيع تغذية التعليمات إلى التدفق من الخارج.
تسمح المسارات المنفصلة لعناوين تمويل مختلفة بمعالجة المعاملات بالتوازي مع الحفاظ على تنفيذ يدخل أولاً يخرج أولاً داخل كل مسار. تمنع معرّفات الأعمال التنفيذ المكرر، بينما يتيح تخزين H2 وPostgreSQL استئناف المعالجة بعد إعادة التشغيل.
شملت العروض مدفوعات ADA، وتنفيذ Plutus scripts، وسك التوكنات، ومدفوعات ADA مجمّعة. كما تضمنت سلسلة UTxO تلقائية واستعادة بعد انقطاع محاكى.
Yano يوسّع بنية اختبار Java الخاصة بـ Cardano
تضمّن العرض أيضاً Yaci Store 3.0.0-beta3، وهو الجيل التجريبي الرئيسي التالي من مفهرِس Cardano المعياري. يوسّع الإصدار واجهات APIs المتوافقة مع Blockfrost ويتضمن تصحيحات للحوكمة وProtocol Version 11، على الرغم من أن التوافق الكامل مع Blockfrost لم يتحقق بعد.
يمد Yano المكدس القائم على Java إلى بنية العقد والاختبار. تُبنى عقدة بيانات Cardano على Yaci وCardano Client Lib، وتستخدم RocksDB من أجل الاستمرارية، ويمكن تشغيلها كتطبيق Quarkus مستقل أو مكتبة Java مضمّنة.
ضمن Yaci DevKit، يمكن لـ Yano تهيئة شبكة Cardano محلية وتقدُّمها قبل نقل إنتاج الكتل إلى Haskell cardano-node. يتوفر أيضاً وضع خاص بـ Yano فقط عندما يحتاج المطورون إلى بيئة خفيفة لاختبار التطبيقات وSDK.
لا يزال Yano مشروعاً ما قبل الإصدار وليس مخصصاً للتحقق في بيئات الإنتاج. قدّم Ranjan أيضاً لمحة عن آلات حالات خاصة بالتطبيق يمكن تثبيت جذور Merkle الخاصة بها على Cardano، لكن تلك القدرة ما تزال تجريبية.
باتت المكونات الثلاثة الآن تؤدي أدواراً مميزة داخل مكدس Java. يعرّف Cardano Client Lib المعاملات وينفذها، ويقوم Yaci Store بفهرسة بيانات الشبكة، ويوفّر Yano بيئة عقدة قابلة للتحكم للاختبارات. يمكن لفرق Java استبدال خدمات التراجع المخصصة والتنسيق اليدوي للعقدة المحلية ببنية تحتية قابلة لإعادة الاستخدام قبل أن تصل تطبيقاتهم إلى الإنتاج.