در این مقاله کوتاه به بررسی تاثیر هایپرلجر در سفارشی سازی تراکنش در یک بلاک چین می پردازیم. در ابتدا باید بگوییم که Transaction of Hyperledger یک رویکرد توسعهیافته برای اجرای یک زبان قرارداد هوشمند معاصر به نام «موتورهای قرارداد هوشمند» ارائه میکند و با مشارکت در یک کتابخانه نرم افزار مشترک، نوشتن نرم افزار را برای دفتر کل توزیع شده بسیار آسان تر می نماید همچنین شامل تمام ویژگی ها و جنبه های ارسال تراکنش، مدیریت ایالت و زمان بندی نیز می شود.
در صورت تمایل به آموزش برنامه نویسی بلاکچین، پکیج آموزش برنامه نویسی بلاکچین را ملاحظه نمایید.
در سطح بالا، معماری Transact به شکل زیر است:
اجزای تراکنش
State: اجرای حالت Transact عملیات دریافت، تنظیم و حذف را در برابر پایگاه داده ارائه می کند. پیاده سازی حالت برای درخت Merkle-Radix، ساختار درخت مانند در بالای یک پایگاه داده در حافظه یا LMDB انجام می شود.
مدیر زمینه: خواندن و نوشتن حالت در یک “زمینه” خاص که شامل یک استناد به شناسه وضعیت (مانند هش ریشه ایالت Merkle-Radix) و یک یا چند زمینه قبلی است، بازرسی می شود. مدیر زمینه، دادههای خواندن، نوشتن و حذف را از چرخه عمر حالت به بافت گجت میکند و تماسها را سرویس میدهد.
Scheduler: این قسمت دستورات تراکنش ها را اجرا می کند و تمرین واقعی شامل یک زمانبندی موازی است. اجرای تراکنش موازی یک نوآوری حیاتی برای گسترش شبکه در سراسر جهان است.
مجری: مجری تراکنشها را از زمانبندیکننده دریافت میکند و آنها را برخلاف یک زمینه خاص اجرا میکند. اجرا با ارسال تراکنش به آداپتورهای اجرایی خاص مانند ZMQ یا یک آداپتور استاتیک در فرآیند هدایت می شود که به نوبه خود تراکنش را به یک قرارداد هوشمند خاص ارسال می کند.
موتورهای قرارداد هوشمند: پیاده سازی ماشین مجازی و مترجمانی را ارائه می دهد که قراردادهای هوشمند را اجرا می کنند. نمونههایی از موتورها شامل WebAssembly، ماشین مجازی اتریوم، کد زنجیره فابریک و پردازشگرهای تراکنشهای Sawtooth هستند.
ویژگی های Hyperledger Transact
آداپتورهای اجرای تراکنش : مکانیسم های مختلف اجرا را امکان پذیر می کند.
زمانبندی تراکنشهای سریالی و موازی: گزینههایی برای انعطافپذیری و عملکرد فراهم میکند
پشتیبانهای حالت قابل اتصال : پشتیبانی اولیه برای پیادهسازی درخت Merkle-Radix با پشتیبانی LMDB و درخت Merkle-Radix در حافظه خواهد بود.
رسیدهای تراکنش: شامل تغییرات وضعیت حاصل و سایر اطلاعات از اجرای تراکنش است.
رویدادها: این می تواند توسط قراردادهای هوشمند ایجاد شود. این در رسید تراکنش ثبت و ذخیره می شود.
SDK ها : Rust، Python، Javascript، Go، Java (از جمله Android)، Swift (iOS)، C++ و .NET زبان های SDK هستند.
پشتیبانی از چندین سبک قراردادهای هوشمند: شامل Saber (قراردادهای هوشمند WebAssembly) و Seth (قراردادهای هوشمند EVM) است.
بیشتر بخوانید: