دفترچه یک مفهوم اصلی در پارچه هایپرلر است. این اطلاعات واقعی را در مورد اشیاء تجاری ذخیره می کند. هم ارزش فعلی ویژگی های اشیاء و هم تاریخچه معاملات که منجر به این مقادیر فعلی شده است.
در این موضوع ، ما می خواهیم پوشش دهیم:
دفترچه چیست؟
یک دفترچه شامل وضعیت فعلی یک تجارت به عنوان مجله معاملات است. نخستین رهبران اروپایی و چینی تقریباً از 1000 سال پیش تاریخ دارند ، و سومری ها 4000 سال پیش Ledgers Stone داشتند-اما بیایید با یک نمونه به روز تر شروع کنیم!
احتمالاً عادت داشتید که به حساب بانکی خود نگاه کنید. آنچه برای شما مهمتر است ، تعادل موجود است - این چیزی است که شما می توانید در لحظه فعلی صرف کنید. اگر می خواهید ببینید که تعادل شما چگونه به دست آمده است ، می توانید اعتبار و بدهی های معامله را که تعیین کرده است ، جستجو کنید. این یک نمونه واقعی زندگی از یک دفترچه است - یک کشور (مانده بانکی شما) و مجموعه ای از معاملات سفارش داده شده (اعتبار و بدهی) که آن را تعیین می کند. پارچه Hyperledger توسط همین دو نگرانی ایجاد می شود - برای ارائه ارزش فعلی مجموعه ای از کشورهای دفترچه ، و ضبط تاریخچه معاملات که این ایالت ها را تعیین می کند.
رهبر ، حقایق و ایالت ها
یک دفترچه به معنای واقعی کلمه اشیاء تجاری را ذخیره نمی کند - در عوض حقایق را در مورد آن اشیاء ذخیره می کند. وقتی می گوییم "ما یک شیء تجاری را در یک دفترچه ذخیره می کنیم" که منظور ما واقعاً این است که ما واقعیت های مربوط به وضعیت فعلی یک شی را ضبط می کنیم و واقعیت های مربوط به تاریخچه معاملات که منجر به وضعیت فعلی شده است. در دنیای دیجیتالی به طور فزاینده ، می تواند احساس کند که ما به جای واقعیت هایی در مورد یک شیء ، به دنبال یک شی هستیم. در مورد یک شی دیجیتال ، به احتمال زیاد در یک داده خارجی زندگی می کند. حقایقی که در دفترچه ذخیره می کنیم به ما امکان می دهد مکان آن را به همراه سایر اطلاعات کلیدی در مورد آن شناسایی کنیم.
در حالی که واقعیت های مربوط به وضعیت فعلی یک شیء تجاری ممکن است تغییر کند ، تاریخ حقایق در مورد آن تغییر ناپذیر است ، می توان به آن اضافه کرد ، اما نمی توان به صورت گذشته نگر تغییر یافت. ما می خواهیم ببینیم که چگونه فکر کردن به یک blockchain به عنوان یک تاریخ تغییر ناپذیر از حقایق در مورد اشیاء تجاری ، روشی ساده اما قدرتمند برای درک آن است.
بیایید نگاهی دقیق تر به ساختار Ledger پارچه Hyperledger بیندازیم!
دفترچه
در پارچه Hyperledger ، یک دفترچه شامل دو بخش متمایز ، هرچند مرتبط است - یک وضعیت جهانی و یک blockchain. هر یک از اینها مجموعه ای از حقایق را در مورد مجموعه ای از اشیاء تجاری نشان می دهد.
اولاً، یک وضعیت جهانی وجود دارد - یک پایگاه داده که مقادیر فعلی مجموعه ای از وضعیت های دفتر را در خود دارد. حالت جهانی دسترسی مستقیم به مقدار فعلی یک وضعیت را برای یک برنامه آسان می کند تا اینکه مجبور باشد آن را با عبور از کل گزارش تراکنش محاسبه کند. حالت های Ledger به طور پیش فرض به صورت جفت های کلید-مقدار بیان می شوند و بعداً خواهیم دید که Hyperledger Fabric چگونه انعطاف پذیری را در این زمینه فراهم می کند. حالت جهانی می تواند به طور مکرر تغییر کند، زیرا ایالت ها می توانند ایجاد، به روز و حذف شوند.
در مرحله دوم، یک زنجیره بلوکی وجود دارد - یک گزارش تراکنش که تمام تغییراتی را که در وضعیت فعلی جهانی ایجاد شده است، ثبت می کند. تراکنش ها در داخل بلوک هایی جمع آوری می شوند که به بلاک چین اضافه می شوند - به شما امکان می دهد تاریخچه تغییراتی را که منجر به وضعیت فعلی جهانی شده است، درک کنید. ساختار داده های بلاک چین بسیار متفاوت از حالت جهانی است، زیرا پس از نوشتن، نمی توان آن را تغییر داد. تغییر ناپذیر است .

A Ledger L شامل بلاک چین B و حالت جهانی W است که بلاک چین B وضعیت جهانی W را تعیین می کند. همچنین می توانیم بگوییم که حالت جهانی W از بلاک چین B گرفته شده است.
فکر کردن به وجود یک دفتر کل منطقی در شبکه Hyperledger Fabric مفید است. در واقع، شبکه چندین نسخه از یک دفتر کل را حفظ می کند - که با هر نسخه دیگری از طریق فرآیندی به نام اجماع مطابقت دارند. اصطلاح فناوری دفتر کل توزیع شده (DLT) اغلب با این نوع دفتر مرتبط است - دفتری که از نظر منطقی منحصر به فرد است، اما دارای بسیاری از نسخه های ثابت در سراسر یک شبکه توزیع شده است.
حال بیایید وضعیت جهانی و ساختارهای داده بلاک چین را با جزئیات بیشتری بررسی کنیم.
دولت جهانی
حالت جهانی ارزش فعلی ویژگی های یک شی تجاری را به عنوان یک حالت دفتر کل منحصر به فرد در نظر می گیرد. این مفید است زیرا برنامه ها معمولاً به مقدار فعلی یک شی نیاز دارند. پیمایش کل بلاک چین برای محاسبه ارزش فعلی یک شی، دشوار خواهد بود شما فقط آن را مستقیماً از حالت جهانی دریافت می کنید.

یک دولت جهانی که شامل دو حالت است. حالت اول این است: key=CAR1 و value=Audi. حالت دوم مقدار پیچیده تری دارد: key=CAR2 و value=. هر دو حالت در نسخه 0 هستند.
یک حالت دفتر کل مجموعه ای از حقایق را در مورد یک شی تجاری خاص ثبت می کند. مثال ما حالت های دفتر را برای دو خودرو CAR1 و CAR2 نشان می دهد که هر کدام دارای یک کلید و یک مقدار هستند. یک برنامه کاربردی می تواند یک قرارداد هوشمند را فراخوانی کند که از API های دفتر کل ساده برای دریافت، قرار دادن و حذف حالت ها استفاده می کند. توجه کنید که چگونه یک مقدار حالت می تواند ساده (Audi…) یا مرکب (نوع:BMW…) باشد. اغلب از دولت جهانی برای بازیابی اشیاء با ویژگی های خاص سؤال می شود، به عنوان مثال برای یافتن همه BMW های قرمز.
دولت جهانی به عنوان یک پایگاه داده پیاده سازی شده است. این بسیار منطقی است زیرا یک پایگاه داده مجموعه ای غنی از عملگرها را برای ذخیره سازی و بازیابی کارآمد حالت ها فراهم می کند. بعداً خواهیم دید که Hyperledger Fabric را می توان برای استفاده از پایگاه های اطلاعاتی مختلف وضعیت جهانی برای رفع نیازهای انواع مختلف مقادیر حالت و الگوهای دسترسی مورد نیاز برنامه ها، برای مثال در پرس وجوهای پیچیده، پیکربندی کرد.
برنامه ها تراکنش هایی را ارسال می کنند که تغییراتی را در وضعیت جهانی ثبت می کنند و این تراکنش ها در نهایت به زنجیره بلوکی دفتر متعهد می شوند. برنامه ها از جزئیات این مکانیسم توافقی توسط Hyperledger Fabric SDK جدا شده اند. آنها صرفاً یک قرارداد هوشمند را فراخوانی می کنند و زمانی که تراکنش در زنجیره بلوک گنجانده شده است (اعم از معتبر یا نامعتبر) مطلع می شوند. نکته کلیدی طراحی این است که تنها تراکنش هایی که توسط مجموعه مورد نیاز از سازمان های تایید کننده امضا می شوند منجر به به روزرسانی وضعیت جهانی می شوند. اگر معامله ای توسط ظهرنویسان کافی امضا نشود، منجر به تغییر حالت جهانی نمی شود. می توانید درباره نحوه استفاده برنامه ها از قراردادهای هوشمند و نحوه توسعه برنامه ها بیشتر بخوانید.
همچنین متوجه خواهید شد که یک حالت دارای شماره نسخه است و در نمودار بالا، حالت های CAR1 و CAR2 در نسخه های اولیه خود، 0 هستند.. هر زمان که وضعیت به روزرسانی می شود، نسخه بررسی می شود تا مطمئن شود که حالت های فعلی با نسخه در زمان تأیید مطابقت دارد. این تضمین می کند که وضعیت جهان همانطور که انتظار می رود تغییر می کند. که به روز رسانی همزمان وجود نداشته است.
سرانجام ، هنگامی که یک دفترچه برای اولین بار ایجاد می شود ، وضعیت جهان خالی است. از آنجا که هر معامله ای که نشان دهنده یک تغییر معتبر در وضعیت جهانی باشد ، روی blockchain ثبت می شود ، این بدان معنی است که دولت جهان می تواند در هر زمان دوباره از blockchain تولید شود. این می تواند بسیار راحت باشد - برای مثال ، وضعیت جهان به طور خودکار هنگام ایجاد همسالان تولید می شود. علاوه بر این ، اگر یک همسالان به طور غیرطبیعی از بین برود ، قبل از پذیرش معاملات ، می توان دولت جهان را با شروع مجدد همسالان بازسازی کرد.
blockchain¶
بیایید اکنون توجه خود را از کشور جهان به blockchain تبدیل کنیم. در حالی که دولت جهان شامل مجموعه ای از حقایق مربوط به وضعیت فعلی مجموعه ای از اشیاء تجاری است ، blockchain یک سابقه تاریخی از حقایق در مورد چگونگی ورود این اشیاء به حالت های فعلی خود است. blockchain هر نسخه قبلی از هر حالت Ledger و نحوه تغییر آن را ضبط کرده است.
blockchain به عنوان سیاهه های متوالی بلوک های درهم تنیده ، که در آن هر بلوک شامل دنباله ای از معاملات است ، ساختار یافته است ، هر معامله ای که یک پرس و جو یا به روزرسانی را به حالت جهانی نشان می دهد. مکانیسم دقیق سفارش معاملات در جای دیگر مورد بحث قرار می گیرد. نکته مهم این است که توالی بلوک ، و همچنین توالی معاملات در بلوک ها ، هنگامی که بلوک ها برای اولین بار توسط یک مؤلفه پارچه Hyperledger به نام سرویس سفارش ایجاد می شوند ، ایجاد می شود.
هدر هر بلوک شامل هش از معاملات بلوک و همچنین هش از هدر بلوک قبلی است. به این ترتیب ، تمام معاملات موجود در دفترچه توالی و رمزنگاری شده با هم به هم پیوند می خورند. این هش و پیوند باعث می شود داده های دفترچه بسیار ایمن باشد. حتی اگر یک گره میزبان لجر با آن دستکاری شود ، قادر به متقاعد کردن تمام گره های دیگر نیست که دارای blockchain "صحیح" است زیرا دفترچه در سراسر شبکه ای از گره های مستقل توزیع می شود.
blockchain همیشه بر خلاف وضعیت جهان ، که از یک پایگاه داده استفاده می کند ، به عنوان یک پرونده اجرا می شود. این یک انتخاب طراحی معقول است زیرا ساختار داده blockchain به شدت نسبت به مجموعه بسیار کمی از عملیات ساده مغرضانه است. ضمیمه تا انتهای blockchain عملیات اصلی است و پرس و جو در حال حاضر یک عمل نسبتاً نادر است.
بیایید نگاهی به ساختار یک blockchain با کمی جزئیات بیشتر بیندازیم.

blockchain B حاوی بلوک های B0 ، B1 ، B2 ، B3. B0 اولین بلوک در blockchain ، بلوک پیدایش است.
در نمودار فوق می بینیم که بلوک B2 دارای داده بلوک D2 است که شامل تمام معاملات آن است: T5 ، T6 ، T7.
از همه مهمتر ، B2 دارای یک هدر بلوک H2 است که حاوی هش رمزنگاری شده از تمام معاملات در D2 و همچنین هش H1 است. به این ترتیب ، بلوک ها به طور غیرقابل توصیف و غیرقابل توصیف با یکدیگر مرتبط هستند ، که اصطلاح blockchain آنقدر مرتب ضبط می شود!
سرانجام ، همانطور که در نمودار مشاهده می کنید ، اولین بلوک در blockchain بلوک پیدایش نامیده می شود. این نقطه شروع برای دفترچه است ، هرچند که هیچگونه معاملات کاربر را شامل نمی شود. در عوض ، شامل یک معامله پیکربندی حاوی حالت اولیه کانال شبکه (نشان داده نشده است). ما وقتی در مورد شبکه blockchain و کانال های موجود در مستندات بحث می کنیم ، در مورد بلوک پیدایش با جزئیات بیشتری بحث می کنیم.
بلوک ها
بیایید نگاهی دقیق تر به ساختار یک بلوک بیندازیم. از سه بخش تشکیل شده است
هدر بلوک
این بخش شامل سه قسمت است که هنگام ایجاد یک بلوک نوشته شده است.
- شماره بلوک: یک عدد صحیح از 0 (بلوک پیدایش) شروع می شود و برای هر بلوک جدیدی که به blockchain اضافه شده است 1 افزایش یافته است.
- کنونی بلوک هش: هش کلیه معاملات موجود در بلوک فعلی.
- هش هش بلوک قبلی: هش از عنوان بلوک قبلی.
این زمینه ها به صورت داخلی توسط رمزنگاری داده های بلوک به دست می آیند. آنها اطمینان می دهند که هر بلوک به طور غیرقابل توصیف با همسایه خود مرتبط است و منجر به یک دفترچه تغییر ناپذیر می شود.

جزئیات هدر را بلوک کنید. هدر H2 بلوک B2 از بلوک شماره 2 ، هش CH2 از داده های بلوک فعلی D2 و هش از هدر بلوک قبلی H1 تشکیل شده است.
داده های انسداد
این بخش شامل لیستی از معاملات ترتیب داده شده به ترتیب است. وقتی بلوک توسط سرویس سفارش ایجاد می شود ، نوشته می شود. این معاملات دارای یک ساختار غنی اما سر راست هستند که بعداً در این موضوع شرح می دهیم.
ابرداده بلوک
این بخش شامل گواهی و امضای سازنده بلوک است که برای تأیید بلوک توسط گره های شبکه استفاده می شود. پس از آن ، Block Committer یک شاخص معتبر/نامعتبر را برای هر معامله به یک مپیک که در ابرداده بلوک نیز ساکن است ، اضافه می کند ، و همچنین هش از بروزرسانی های حالت تجمعی تا زمان و از جمله آن بلوک ، برای تشخیص چنگال حالت. بر خلاف داده های بلوک و زمینه های هدر ، این بخش ورودی محاسبات هش بلوک نیست.
معاملات
همانطور که دیدیم ، یک معامله در دولت جهان تغییراتی ایجاد می کند. بیایید نگاهی به ساختار دقیق blockdata که شامل معاملات در یک بلوک است ، نگاهی بیندازیم.

جزئیات معاملهمعامله T4 در BlockData D1 بلوک B1 شامل عنوان معامله ، H4 ، امضای معامله ، S4 ، پیشنهاد معامله P4 ، پاسخ معامله ، R4 و لیستی از تأییدیه ها ، E4 است.
در مثال بالا می توانیم زمینه های زیر را مشاهده کنیم:
سرتیتر
این بخش که توسط H4 نشان داده شده است ، برخی از ابرداده های اساسی را در مورد معامله ضبط می کند - به عنوان مثال ، نام کد زنجیره ای مربوطه و نسخه آن.
امضاء
این بخش ، که توسط S4 نشان داده شده است ، حاوی امضای رمزنگاری است که توسط برنامه مشتری ایجاد شده است. این قسمت برای بررسی اینکه جزئیات معامله با آن دستکاری نشده است ، استفاده می شود ، زیرا به کلید خصوصی برنامه برای تولید آن نیاز دارد.
پیشنهاد
این زمینه ، که توسط P4 نشان داده شده است ، پارامترهای ورودی را که توسط یک برنامه به قرارداد هوشمند ارائه می شود ، رمزگذاری می کند که به روزرسانی Ledger پیشنهادی را ایجاد می کند. هنگامی که قرارداد هوشمند اجرا می شود ، این پیشنهاد مجموعه ای از پارامترهای ورودی را ارائه می دهد ، که در ترکیب با دولت جهان فعلی ، وضعیت جهان جدید را تعیین می کند.
واکنش
این بخش که توسط R4 نشان داده شده است ، ارزش های قبل و بعد از دولت جهان را به عنوان یک مجموعه نوشتن خوانده شده (RW-SET) ضبط می کند. این خروجی یک قرارداد هوشمند است و اگر معامله با موفقیت تأیید شود ، برای به روزرسانی دولت جهان به دفترچه اعمال می شود.
تصویب
همانطور که در E4 نشان داده شده است ، این لیستی از پاسخ های معامله امضا شده از هر سازمان مورد نیاز برای برآورده کردن خط مشی تأیید است. توجه خواهید کرد که ، در حالی که فقط یک پاسخ معامله در معامله گنجانده شده است ، چندین تأیید وجود دارد. این امر به این دلیل است که هر تأیید به طور موثری پاسخ معامله خاص سازمان خود را رمزگذاری می کند - به این معنی که نیازی به پاسخ معامله ای نیست که با تأیید کافی مطابقت نداشته باشد زیرا به عنوان نامعتبر رد می شود و وضعیت جهان را به روز نمی کند.
این نتیجه گیری مهمترین زمینه های معامله است - موارد دیگری نیز وجود دارد ، اما این موارد اساسی است که شما باید درک کنید تا درک کاملی از ساختار داده های دفترچه داشته باشید.
گزینه های پایگاه داده ایالتی جهان
دولت جهان از نظر جسمی به عنوان یک بانک اطلاعاتی ، برای تأمین ذخیره سازی ساده و کارآمد و بازیابی دولت های دفترچه ، اجرا می شود. همانطور که دیدیم ، کشورهای دفترچه می توانند مقادیر ساده یا مرکب داشته باشند و برای این کار ، اجرای بانک اطلاعاتی ایالتی جهان می تواند متفاوت باشد و این امکان را می دهد تا این مقادیر به طور کارآمد اجرا شوند. گزینه های پایگاه داده ایالتی جهانی در حال حاضر شامل LevelDB و CouchDB است.
LevelDB به طور پیش فرض است و به ویژه در مواردی که لجر ها جفت با ارزش کلیدی ساده هستند مناسب است. یک پایگاه داده LevelDB با گره همسالان مستقر است-در همان فرآیند سیستم عامل تعبیه شده است.
CouchDB یک انتخاب خاص مناسب است که دولت های Ledger به عنوان اسناد JSON ساختار یافته باشند زیرا COUCHDB از سؤالات غنی و به روزرسانی انواع غنی تر داده ها که اغلب در معاملات تجاری یافت می شود ، پشتیبانی می کند. CouchDB از نظر پیاده سازی ، در یک فرآیند سیستم عامل جداگانه اجرا می شود ، اما هنوز یک رابطه 1: 1 بین یک گره همکار و یک نمونه CouchDB وجود دارد. همه اینها برای یک قرارداد هوشمند نامرئی است. برای کسب اطلاعات بیشتر در مورد CouchDB ، CouchDB را به عنوان اعلام شده SEETATABASE مشاهده کنید.
در LevelDB و CouchDB ، ما جنبه مهمی از پارچه هایپرلر را مشاهده می کنیم - این قابل پلاگین است. بانک اطلاعاتی ایالت جهانی می تواند یک فروشگاه داده رابطه ای یا یک فروشگاه نمودار یا یک پایگاه داده زمانی باشد. این امر انعطاف پذیری زیادی را در انواع حالت های دفترچه فراهم می کند که می توانند به طور کارآمد به آن دسترسی پیدا کنند ، به پارچه هایپرلر اجازه می دهد تا انواع مختلفی از مشکلات را برطرف کند.
Ledger مثال: انتقال دارایی اساسی
با پایان دادن به این موضوع در دفترچه ، اجازه دهید نگاهی به یک دفترچه نمونه بیندازیم. اگر برنامه اصلی انتقال دارایی را اجرا کرده اید ، این دفترچه را ایجاد کرده اید.
برنامه نمونه اصلی مجموعه ای از 6 دارایی را با هویت منحصر به فرد ایجاد می کند. یک رنگ ، اندازه ، مالک و ارزش ارزیابی شده متفاوت. این همان چیزی است که دفترچه پس از ایجاد چهار دارایی اول به نظر می رسد.

Ledger ، L ، شامل یک کشور جهانی ، W و یک blockchain ، B. W شامل چهار ایالت با کلید است: Asset1 ، Asset2 ، Asset3 و Asset4. B شامل دو بلوک ، 0 و 1 است. بلوک 1 شامل چهار معاملات است: T1 ، T2 ، T3 ، T4.
ما می توانیم ببینیم که دولت جهانی حاوی کشورهایی است که مطابق با Asset1 ، Asset2 ، Asset3 و Asset4 است. Asset1 دارای مقداری است که نشان می دهد آبی با اندازه 5 است که در حال حاضر متعلق به Tomoko است و ما می توانیم حالت ها و مقادیر مشابه را برای سایر اتومبیل ها مشاهده کنیم. علاوه بر این ، ما می توانیم ببینیم که تمام حالت های اتومبیل در نسخه 0 قرار دارند ، نشان می دهد که این شماره نسخه اولیه آنها است - از زمان ایجاد آنها به روز نشده اند.
همچنین می توانیم ببینیم که blockchain شامل دو بلوک است. بلوک 0 بلوک پیدایش است ، اگرچه هیچ معامله ای مربوط به اتومبیل ها را شامل نمی شود. بلوک 1 با این حال ، شامل معاملات T1 ، T2 ، T3 ، T4 است و این مربوط به معاملات است که حالت های اولیه را برای Asset1 به Asset4 در دولت جهان ایجاد کرده است. می توانیم ببینیم که بلوک 1 به بلوک 0 مرتبط است.
ما زمینه های دیگر را در بلوک ها یا معاملات ، به طور خاص هدرها و هش نشان نداده ایم. اگر به جزئیات دقیق این موارد علاقه مند هستید ، یک موضوع مرجع اختصاصی در جای دیگر در اسناد پیدا خواهید کرد. این یک نمونه کاملاً کار شده از یک بلوک کامل با معاملات آن با جزئیات باشکوه را به شما می دهد - اما در حال حاضر ، شما به یک درک مفهومی جامد از دفترچه پارچه Hyperledger رسیده اید. آفرین!
نام های نام
حتی اگر ما دفترچه را ارائه داده ایم که انگار یک کشور جهان واحد و مجرد مجرد است ، اما این یک کمی ساده سازی بیش از حد است. در واقعیت ، هر کد زنجیره ای وضعیت جهانی خود را دارد که از همه کد های زنجیره ای دیگر جدا است. کشورهای جهان در یک فضای نام قرار دارند به طوری که فقط قراردادهای هوشمند در همان کد زنجیره ای می توانند به یک فضای نام معین دسترسی پیدا کنند.
یک blockchain نامگذاری نشده است. این شامل معاملات بسیاری از نام های مختلف نام قرارداد هوشمند است. در این موضوع می توانید اطلاعات بیشتر در مورد نام های نام های زنجیره ای را بخوانید.
حال بیایید ببینیم که چگونه مفهوم فضای نام در یک کانال پارچه ایپرلرگر اعمال می شود.
کانال ها
در پارچه Hyperledger ، هر کانال دارای یک دفترچه کاملاً جداگانه است. این به معنای یک blockchain کاملاً جداگانه و کشورهای کاملاً جداگانه جهان ، از جمله مناطق نام است. برای برنامه های کاربردی و قراردادهای هوشمند امکان برقراری ارتباط بین کانال ها وجود دارد تا بتوانند به اطلاعات دفترچه ای بین آنها دسترسی پیدا کنند.
می توانید اطلاعات بیشتری در مورد نحوه کار نگهبانان با کانال ها در این موضوع بخوانید.
اطلاعات بیشتر¶
جریان معامله ، معناشناسی تنظیم شده و CouchDB را به عنوان مباحث بیان شده برای شیرجه عمیق تر در جریان معاملات ، کنترل همزمانی و بانک اطلاعاتی ایالت جهانی مشاهده کنید.
© کپی رایت Hyperledger 2020-2022.
این کار تحت عنوان Creative Commons Attribution 4. 0 مجوز بین المللی تجدید نظر F642A5A9 مجوز دارد.
تحليلات الفوركس...
ما را در سایت تحليلات الفوركس دنبال می کنید
برچسب :
نویسنده : یکتا ناصر
بازدید : <-PostHit->
تاريخ : چهارشنبه
2 فروردين
1402 ساعت: 11:07