Laboratoriya ishi no tizimda bir nechta tugun kerak bo'lsa, Consensus algoritmidan foydalaning Vazifa
Download 58.44 Kb. Pdf ko'rish
|
5-lab 2 blokchain
- Bu sahifa navigatsiya:
- Amaliy misol 1 4.1 Nazariy ma’lumotlar
- Mavzu
4 LABORATORIYA ISHI No 4 tizimda bir nechta tugun kerak bo'lsa, Consensus algoritmidan foydalaning Vazifa: Asosiy konsensus algoritmini amalga oshiring, meni yarating yana bir nechta so'nggi nuqtalar kerak: - URL ko'rinishidagi yangi tugunlar ro'yxatini qabul qilish uchun /tugunlar/register; - /tugunlar/resolve hal qiluvchi Consensus algoritmini amalga oshirish uchun tod tarmoqdagi markazlashtirilmagan tugunlarni ro'yxatdan o'tkazish uchun. blokcheyn tomoni tarmog'i. tugunning joylashganligini tasdiqlash bilan bog'liq har qanday nizolar Amaliy misol 1 4.1 Nazariy ma’lumotlar sizning zanjiringizda. Bundan tashqari, Blockchain sinf konstruktorini o'zgartirishingiz va qo'shishingiz kerak bo'ladi Shunday qilib, o'tgan ishlarda asosiy blokcheyn ishlab chiqildi, bu Yangi tugunlarni ro'yxatdan o'tkazish tranzaktsiyalarga ega va yangi bloklarni qazib olish imkoniyatini beradi. Ammo hamma narsa blokda Konsensus algoritmini amalga oshirish uchun siz berish yo'lini topishingiz kerak tugunlarni ro'yxatdan o'tkazish usuli: tarmoqdagi qo'shni tugunlarning mavjudligi haqida bilish uchun ma'lum bir tugun. Har bir tugun zanjiri shundaki, ular markazlashtirilmagan bo'lishi kerak. Va agar ular qaerda bo'lsa Mavzu: Blockchain prototipida konsensus tashkil etish bir xil zanjir? markazlashtirilgan, keyin ularning barchasi aks etishini qanday ta'minlash kerak Maqsad: Konsensus algoritmi bilan tanishish. Bu konsensus muammosi deb ataladi va endi biz uni amalga oshirishimiz kerak ishchi zanjirda zanjirning boshqa tugunlari registrini o'z ichiga olishi kerak. Shunday qilib, """ 8 9 10 3 1 2 ta import soÿrovi ... ... Tugunlar ro'yxatiga yangi tugun qo'shing 4 :param manzili: ... 5-sinf blokcheyn (ob'ekt) ... :qaytish: Yo'q 6 7 self.nodes = set() """ urllib.parse import urlparse dan 1 2 parsed_url = urlparse(manzil) ... 3 4 5 6 sinf blokcheyn(ob'ekt): 12 def register_tugun (o'zini, manzili): ... 11 7 def __init__ (o'z-o'zidan): 13 14 15 16 17 18 19 20 21 self.nodes.add(parsed_url.netloc) ro'yxatga ma'lum bir tugun kiritilgan bo'lsa, u faqat bir marta sodir bo'ladi. bo'yin va joriy zanjir vakolatli. Boshqacha aytganda, eng uzun lan tugunlarning soni idempotent - bu necha marta bo'lishidan qat'iy nazar, degan ma'noni anglatadi boshqa tugun bilan bog'langan. Buni hal qilish uchun, topilgan joyda qoidani kiritamiz tugunlar ro'yxati. Bu yangilarini kiritishga ishonch hosil qilishning oson yo'li Ma'lumki, ziddiyat shundaki, bitta tugun zanjirga ega, po Esda tutingki, saqlash uchun set() usuli qo'llaniladi Ishchi tarmoq tugunlari o'rtasida konsensus. Download 58.44 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling