Bài học 3

โครงสร้างเทคนิคของ Monad

โมดูลนี้ให้ภาพรวมทางเทคนิคลึกลึกเกี่ยวกับสถาปัตยกรรมของ Monad โดยครอบคลุมถึงวิธีการทำให้โปรโตคอลมีประสิทธิภาพสูงและ laten ต่ำ หัวข้อรวมถึงเครื่องยนต์การประมวลผลขนาดใหญ่, โมเดลการประมวลผลแบบไม่สม่ำเสมอ, การตกลง MonanBFT และชั้นเก็บข้อมูล MonadDB ที่ออกแบบมาเพื่อสนับสนุนแอปพลิเคชัน on-chain ที่ซับซ้อนและมีขนาดใหญ่

การดำเนินการแบบพรีเซ็น

หนึ่งในนวัตกรรมที่กำหนดความเฉพาะเจาะจงของบล็อกเชน Monad คือโมเดลการดำเนินการแบบพาราเลลที่เชื่อมโยง วิธีการนี้ทำให้ต้องคิดใหม่เกี่ยวกับว่า รายการธุรกรรมถูกประมวลผลอย่างไรในระดับโปรโตคอล แก้ไขข้อจำกัดสำคัญของบล็อกเชนแบบดั้งเดิม: การดำเนินการตามลำดับ บนแพลตฟอร์มเช่น Ethereum รายการธุรกรรมถูกประมวลผลทีละรายการ ซึ่งทำให้มั่นใจได้ในความสอดคล้องของสถานะ แต่จำกัดการผ่านของข้อมูลและประสิทธิภาพโดยรวมอย่างมาก

เครื่องจำลองเสมือนของ Monad ใช้การขนานในการถือว่าธุรกรรมในบล็อกส่วนใหญ่เป็นอิสระและไม่มีปฏิสัมพันธ์กับส่วนเดียวกันของสถานะบล็อกเชน โดยขึ้นอยู่กับการสมมติฐานนี้ ธุรกรรมถูกจัดกลุ่มและกำหนดตารางเวลาให้ทำงานพร้อมกันในหลายเส้นประมวลผล สิ่งที่เพิ่มประสิทธิภาพการปฏิบัติบนเซิร์ฟเวอร์อย่างมาก โดยเฉพาะในขณะที่มีภาระงานเครือข่ายสูง โดยใช้หลักการทำงานของโปรเซสเซอร์หลายไฟ มากกว่าโมเดลแบบลำดับ

อย่างไรก็ตาม การทำพร้อมกัน ทำให้เกิดความเสี่ยงในการชนกันของข้อมูล เช่น การเรียกใช้ธุรกรรมสองรายการพยายามแก้ไขบัญชีหรือสัญญาเดียวกัน Monad แสดงถึงการรวบรวมระบบตรวจจับและแก้ไขความขัดแย้ง หลังจากที่ธุรกรรมถูกดำเนินการพร้อมกัน ระบบจะตรวจสอบความไม่สอดคล้อง หากพบความขัดแย้ง จะมีการดำเนินการใหม่หรือเรียงลำดับของธุรกรรมที่ได้รับผลกระทบเท่านั้น สิ่งนี้ทำให้บล็อกเชนรักษาความถูกต้องและการเปลี่ยนแปลงสถานะที่แน่นอน ในขณะที่ยังได้รับประโยชน์จากความมีประสิทธิภาพของการประมวลผลพร้อมกัน

โมเดลนี้คล้ายกับการควบคุมการประพันธ์แบบเชิงบวกในระบบฐานข้อมูลรุ่นใหม่ ๆ โดยที่การดำเนินการส่วนใหญ่ถูกสันนิษฐานว่าไม่ขัดแย้งกันและถูกจัดการพร้อมกัน ในกรณีขอบเขตเท่านั้นที่ระบบจะเข้ามาเกี่ยวข้อง ผลลัพธ์คือชั้นการดำเนินการที่มีประสิทธิภาพและเชื่องชาญที่เหมาะสำหรับแอปพลิเคชันที่มีปริมาณธุรกรรมสูงและภารกิจที่หลากหลาย

การดำเนินการขนาดใหญ่พร้อมกันอย่างเชื่อมั่นมีประโยชน์มากโดยเฉพาะสำหรับการใช้งานเช่น DeFi, เกม และตลาด NFT - ที่ผู้ใช้หลายคนมีปฏิสัมพันธ์กันพร้อมกันแต่มักไม่ได้ใช้ข้อมูลเดียวกัน Monad สามารถจัดการกับการดำเนินการเหล่านี้พร้อมกัน ลดการแออัด และเพิ่มประสิทธิภาพการตอบสนองของแอปพลิเคชันที่ไม่มีความจำเป็นต้องใช้ชั้นเลเยอร์การขยายออกจากเครือข่าย

ประโยชน์สำคัญอีกอย่างคือความง่ายในการใช้งานของนักพัฒนา สภาพแวดล้อมที่เข้ากันได้กับ EVM ของ Monad ทำให้สัญญาอัจฉริยะที่เขียนด้วย Solidity สามารถทำงานได้ตามปกติโดยไม่ต้องให้นักพัฒนาจัดการความสามารถพร้อมกันเอง โปรโตคอลจัดการตรรกะการดำเนินการอย่างลับ ๆ อยู่เบื้องหลัง ทำให้ประสบการณ์ของนักพัฒนาดูแล้วมีประสิทธิภาพขึ้น

การดำเนินการแบบไม่สะพรึง

เสริมสร้างโมเดลการดำเนินการแบบขนานของมานาด มานาดนำการดำเนินการแบบไม่ซิงค์โครนัสมาตรฐานที่แยกการดำเนินการของธุรกรรมจากระบบความเห็น ในบล็อกเชนแบบดั้งเดิมความเห็นและการดำเนินการเชื่อมโยงอย่างแน่นและผู้ตรวจสอบจำเป็นต้องเรียกใช้ธุรกรรมทั้งหมดก่อนที่จะเห็นด้วยและทำให้บล็อกสามารถสร้างได้อย่างรวดเร็ว

Monad จะแยกฟังก์ชันเหล่านี้โดยการทำให้ลำดับของธุรกรรมเสร็จก่อน ผ่านความเห็นร่วม แล้วจึงดำเนินการดำเนินการหลังจากนั้น การออกแบบนี้ช่วยให้ชั้น consensus ทำงานอย่างอิสระและต่อเนื่อง ในขณะที่การดำเนินการทำงานข้างหลัง ช่วยเพิ่มประสิทธิภาพของ validator และลดเวลาบล็อก โดย validator ไม่ต้องถูกความจำกัดจากเวลาที่ใช้คำนวณผลลัพธ์ของทุกธุรกรรม

ระบบรักษาความเฉื่อยและความปลอดภัยโดยการให้แน่ใจว่าโหนดทั้งหมดทำธุรกรรมเหมือนกันอย่างแน่นอน ในลำดับที่ตกลงกันเดียวกัน แม้ว่าการทำงานจะเกิดขึ้นในเวลาที่แตกต่างกัน สิ่งนี้รับรองถึงความสอดคล้องในเครือข่ายและป้องกันการแตกต่างในสถานะบล็อกเชน

การดำเนินการแบบไม่ซึ่งซ้อนกันยังเสริมสร้างเติบโตของ Monad ในการทำงานแบบพร้อมพาราเลลลิสต์ ในขณะที่ความเห็นร่วมกำลังเดินหน้า และบล็อกใหม่ถูกจบการทำงานอย่างรวดเร็ว การดำเนินการเกิดขึ้นพร้อมกันในหลายเส้นใย แก้ข้อขัดแย้งเมื่อจำเป็นเท่านั้น การผสมผสานแบบพร้อมพาราเลลลิสต์และแบบไม่ซึ่งซ้อนกันนี้ ทำให้การใช้ทรัพยากรและความเป็นไปได้ของระบบสูงสุด โดยไม่เสียความถูกต้อง

จากมุมมองของผู้ใช้และผู้พัฒนา สถาปัตยกรรมนี้ทำให้การรวมธุรกรรมเร็วขึ้น การใช้งานแอปพลิเคชันที่ตอบสนองได้มากขึ้น และขยายขอบเขตการใช้งานได้ดีขึ้น มักยืดสายตรวจสอบยังได้รับประโยชน์จากการลดข้อขัดข้อง นำไปสู่เครือข่ายที่มีประสิทธิภาพและกระจายได้ดีขึ้น

กลไกการบรรลุข้อตกลง MonadBFT

ความเห็นร่วมใน Monad ได้ถูกบรรลุผ่าน MonadBFT ซึ่งเป็นการปรับทางที่กำหนดเองของโปรโตคอล HotStuff Byzantine Fault Tolerant (BFT) กลไกการเชื่อมั่นนี้ถูกปรับแต่งให้เหมาะสมสำหรับการทำงานทั้งในด้านประสิทธิภาพและความปลอดภัย รองรับวัตถุประสงค์ของ Monad ในเรื่องของความสามารถในการบอกความสมบูรณ์ที่มีความหน่วงต่ำและประสิทธิภาพที่สูง พร้อมทั้งยังสามารถเข้าถึงได้สำหรับผู้ตรวจสอบแบบกระจาย

HotStuff พัฒนาขึ้นเพื่อลดจำนวนรอบการสื่อสารที่ต้องใช้ในการสรุปบล็อก MonadBFT พัฒนาต่อจากนี้โดยการเปิดให้เกิดความสมบูรณ์แบบภายในสล็อตเดียว โดยที่บล็อกจะถูกสรุปเสร็จในรอบเดียวของการตกลงโดยไม่ต้องรอการยืนยันจากหลายรายการ ส่งผลให้การสรุปการทำธุรกรรมเป็นสิ้นสุดทันที ช่วยในการทำนายสำหรับแอปพลิเคชันและลดความเสี่ยงของการระงับเชื่อมต่อของเชือง

MonadBFT ใช้โมเดลที่มีผู้นำเป็นฐาน ในทุกรอบ ผู้ตรวจสอบหนึ่งคนเสนอบล็อกในขณะที่คนอื่นตรวจสอบและลงคะแนนเห็นด้วย หากสองในสามของมูลค่าของผู้ตรวจสอบรวมยืนยันบล็อก บล็อกนั้นจะถูกเสร็จสิ้น กระบวนการที่มีขั้นตอนน้อยน้อยนี้ช่วยลดภาระงานและเร่งกระบวนการผลิตบล็อกโดยเฉพาะอย่างยิ่งในเงื่อนไขการทำงานปกติ

เพื่อให้มั่นใจในความมีชีวิตชีวา MonadBFT รวมการหมุนผู้นำและกลยุทธ์การหมดเวลา หากผู้นำล้มเหลวในการเสนอบล็อก ผู้ตรวจสอบถัดไปในคิวจะเข้ามาดำเนินการโดยอัตโนมัติ ความทนทานนี้ทำให้โซ่ยังคงก้าวหน้าไปอย่างต่อเนื่อง แม้บางผู้ตรวจสอบจะออฟไลน์หรือไม่ตอบสนอง

จากมุมมองด้านความปลอดภัย MonadBFT ยึดถือตามเกณฑ์ BFT ทั่วไป ทนต่อผู้ตรวจสอบที่ไม่ดีเยี่ยมได้สูงสุดถึงหนึ่งในสามคนโดยไม่เสี่ยงความปลอดภัย หลังจากที่บล็อกถูกจบการตัดสินใจแล้ว มันถูกปิดกุญแจด้วยการใช้เทคโนโลยีเข้ารหัสและไม่สามารถย้อนกลับได้โดยไม่มีการคุกคามจากผู้กระทำที่ไม่ซื่อสัตย์ที่ควบคุมอำนาจของตัวตรวจสอบส่วนใหญ่

โปรโตคอลนี้ถูกผสานอย่างเข้มงวดกับโมเนดของMonad แบบไม่ซึ่งซื่อ โดยเนื่องจากบล็อกถูกสรุปก่อนการดำเนินการ ระบบสามารถดำเนินการต่อไปได้โดยไม่มีความล่าช้า ในขณะที่เลเยอร์ดำเนินการธุรกรรมอย่างอิสระ โครงสร้างนี้ช่วยลดภาระงานของผู้ตรวจสอบและทำให้ระบบสามารถรักษาประสิทธิภาพสูงโดยไม่ขึ้นอยู่กับบริการเรียงลำดับที่มีการจัดระเบียบและผู้กลายเป็นผู้ไว้วางใจ

MonadDB

การดําเนินการที่มีประสิทธิภาพและฉันทามติขึ้นอยู่กับระบบการจัดการของรัฐที่มีประสิทธิภาพสูง ใน Monad บทบาทนี้ได้รับการเติมเต็มโดย MonadDB ซึ่งเป็นเลเยอร์การจัดเก็บสถานะที่กําหนดเองของบล็อกเชน MonadDB มีหน้าที่จัดเก็บข้อมูลแบบ on-chain ทั้งหมดรวมถึงยอดคงเหลือในบัญชีการจัดเก็บสัญญาและตัวแปรสถานะถาวรอื่น ๆ ได้รับการออกแบบมาให้รวดเร็วพร้อมกันและเข้ากันได้อย่างสมบูรณ์กับเอ็นจิ้นการดําเนินการแบบขนานของ Monad

MonadDB ใช้ระบบจัดเก็บคีย์-ค่าเวอร์ชันและต่ออายุ เพื่อทำให้สามารถรักษาสแนปช็อตหลายๆรูปแบบของสถานะพร้อมกัน ซึ่งเป็นสิ่งที่สำคัญสำหรับการสนับสนุนการดำเนินการโดยสมมติ ที่ทำให้การดำเนินการหลายรายการสามารถดำเนินการพร้อมๆกันและอาจถูกรีเวิร์ตหรือปรับเปลี่ยนตามข้อขัดแย้ง โดยการจัดเก็บเวอร์ชันต่างๆของสถานะ MonadDB ช่วยให้เครื่องยนต์การดำเนินการสามารถแยกแยะและแก้ไขข้อขัดแย้งข้อมูลอย่างมีประสิทธิภาพ

ในพื้นหลังของมัน, MonadDB ใช้โครงสร้างข้อมูล Merkle Patricia Trie - ต้นไม้ที่ปลอดภัยทางการเข้ารหัสที่ช่วยให้การยืนยันสถานะบล็อกเชนอย่างรวดเร็ว โครงสร้างต้นไม้นี้ทำให้มั่นใจได้ว่าการเปลี่ยนแปลงใด ๆ ในสถานะจะทำให้เกิดรากแฮชใหม่ซึ่งสามารถตรวจสอบได้โดยโหนดทั้งหมด มันสนับสนุนการซิงโครไนซ์โดยไม่มีความไว้วางใจ, ไคลเอ็นต์ที่เบาและการยืนยันสถานะที่ขึ้นอยู่กับพิสูจน์ที่เป็นพื้นฐานสำหรับการออกแบบบล็อกเชนที่ปลอดภัยและมีสเกล

เพื่อจัดการปริมาณการทำธุรกรรมที่คาดหวัง MonadDB ถูกออกแบบให้มีความเร็วในการอ่านและเขียนต่ำ มันรวมการเก็บข้อมูลชั่วคราว การควบคุมการเข้าถึงที่ปลอดภัยและการเก็บข้อมูลดิสก์ที่เร็ว เพื่อให้มั่นใจว่าการเรียกข้อมูลและการแก้ไขสถานะจะเร็ว การปรับปรุงเหล่านี้ช่วยให้เลเยอร์การดำเนินการสามารถทำงานในอัตราการผ่านข้อมูลสูงโดยไม่ถูกชะลอโดยความล่าช้าในการเข้าถึงข้อมูล

จากมุมมองของนักพัฒนาซอฟต์แวร์ MonadDB ถูกทำให้มีการแยกแยะอย่างสมบูรณ์ นักพัฒนาสัญญาฉลาดสามารถทำงานร่วมกับบล็อกเชนผ่านการสร้าง Solidity ที่คุ้นเคย โดยไม่จำเป็นต้องจัดการกับกลไกสถานะภายใน MonadDB รับประกันว่าสถานะจะได้รับการอัพเดตและเก็บรักษาไว้อย่างถูกต้อง แม้ในสภาวะภาระของการใช้งานสูง หรือขณะกระทำสัญญาที่ซับซ้อน

Tuyên bố từ chối trách nhiệm
* Đầu tư tiền điện tử liên quan đến rủi ro đáng kể. Hãy tiến hành một cách thận trọng. Khóa học không nhằm mục đích tư vấn đầu tư.
* Khóa học được tạo bởi tác giả đã tham gia Gate Learn. Mọi ý kiến chia sẻ của tác giả không đại diện cho Gate Learn.
Danh mục
Bài học 3

โครงสร้างเทคนิคของ Monad

โมดูลนี้ให้ภาพรวมทางเทคนิคลึกลึกเกี่ยวกับสถาปัตยกรรมของ Monad โดยครอบคลุมถึงวิธีการทำให้โปรโตคอลมีประสิทธิภาพสูงและ laten ต่ำ หัวข้อรวมถึงเครื่องยนต์การประมวลผลขนาดใหญ่, โมเดลการประมวลผลแบบไม่สม่ำเสมอ, การตกลง MonanBFT และชั้นเก็บข้อมูล MonadDB ที่ออกแบบมาเพื่อสนับสนุนแอปพลิเคชัน on-chain ที่ซับซ้อนและมีขนาดใหญ่

การดำเนินการแบบพรีเซ็น

หนึ่งในนวัตกรรมที่กำหนดความเฉพาะเจาะจงของบล็อกเชน Monad คือโมเดลการดำเนินการแบบพาราเลลที่เชื่อมโยง วิธีการนี้ทำให้ต้องคิดใหม่เกี่ยวกับว่า รายการธุรกรรมถูกประมวลผลอย่างไรในระดับโปรโตคอล แก้ไขข้อจำกัดสำคัญของบล็อกเชนแบบดั้งเดิม: การดำเนินการตามลำดับ บนแพลตฟอร์มเช่น Ethereum รายการธุรกรรมถูกประมวลผลทีละรายการ ซึ่งทำให้มั่นใจได้ในความสอดคล้องของสถานะ แต่จำกัดการผ่านของข้อมูลและประสิทธิภาพโดยรวมอย่างมาก

เครื่องจำลองเสมือนของ Monad ใช้การขนานในการถือว่าธุรกรรมในบล็อกส่วนใหญ่เป็นอิสระและไม่มีปฏิสัมพันธ์กับส่วนเดียวกันของสถานะบล็อกเชน โดยขึ้นอยู่กับการสมมติฐานนี้ ธุรกรรมถูกจัดกลุ่มและกำหนดตารางเวลาให้ทำงานพร้อมกันในหลายเส้นประมวลผล สิ่งที่เพิ่มประสิทธิภาพการปฏิบัติบนเซิร์ฟเวอร์อย่างมาก โดยเฉพาะในขณะที่มีภาระงานเครือข่ายสูง โดยใช้หลักการทำงานของโปรเซสเซอร์หลายไฟ มากกว่าโมเดลแบบลำดับ

อย่างไรก็ตาม การทำพร้อมกัน ทำให้เกิดความเสี่ยงในการชนกันของข้อมูล เช่น การเรียกใช้ธุรกรรมสองรายการพยายามแก้ไขบัญชีหรือสัญญาเดียวกัน Monad แสดงถึงการรวบรวมระบบตรวจจับและแก้ไขความขัดแย้ง หลังจากที่ธุรกรรมถูกดำเนินการพร้อมกัน ระบบจะตรวจสอบความไม่สอดคล้อง หากพบความขัดแย้ง จะมีการดำเนินการใหม่หรือเรียงลำดับของธุรกรรมที่ได้รับผลกระทบเท่านั้น สิ่งนี้ทำให้บล็อกเชนรักษาความถูกต้องและการเปลี่ยนแปลงสถานะที่แน่นอน ในขณะที่ยังได้รับประโยชน์จากความมีประสิทธิภาพของการประมวลผลพร้อมกัน

โมเดลนี้คล้ายกับการควบคุมการประพันธ์แบบเชิงบวกในระบบฐานข้อมูลรุ่นใหม่ ๆ โดยที่การดำเนินการส่วนใหญ่ถูกสันนิษฐานว่าไม่ขัดแย้งกันและถูกจัดการพร้อมกัน ในกรณีขอบเขตเท่านั้นที่ระบบจะเข้ามาเกี่ยวข้อง ผลลัพธ์คือชั้นการดำเนินการที่มีประสิทธิภาพและเชื่องชาญที่เหมาะสำหรับแอปพลิเคชันที่มีปริมาณธุรกรรมสูงและภารกิจที่หลากหลาย

การดำเนินการขนาดใหญ่พร้อมกันอย่างเชื่อมั่นมีประโยชน์มากโดยเฉพาะสำหรับการใช้งานเช่น DeFi, เกม และตลาด NFT - ที่ผู้ใช้หลายคนมีปฏิสัมพันธ์กันพร้อมกันแต่มักไม่ได้ใช้ข้อมูลเดียวกัน Monad สามารถจัดการกับการดำเนินการเหล่านี้พร้อมกัน ลดการแออัด และเพิ่มประสิทธิภาพการตอบสนองของแอปพลิเคชันที่ไม่มีความจำเป็นต้องใช้ชั้นเลเยอร์การขยายออกจากเครือข่าย

ประโยชน์สำคัญอีกอย่างคือความง่ายในการใช้งานของนักพัฒนา สภาพแวดล้อมที่เข้ากันได้กับ EVM ของ Monad ทำให้สัญญาอัจฉริยะที่เขียนด้วย Solidity สามารถทำงานได้ตามปกติโดยไม่ต้องให้นักพัฒนาจัดการความสามารถพร้อมกันเอง โปรโตคอลจัดการตรรกะการดำเนินการอย่างลับ ๆ อยู่เบื้องหลัง ทำให้ประสบการณ์ของนักพัฒนาดูแล้วมีประสิทธิภาพขึ้น

การดำเนินการแบบไม่สะพรึง

เสริมสร้างโมเดลการดำเนินการแบบขนานของมานาด มานาดนำการดำเนินการแบบไม่ซิงค์โครนัสมาตรฐานที่แยกการดำเนินการของธุรกรรมจากระบบความเห็น ในบล็อกเชนแบบดั้งเดิมความเห็นและการดำเนินการเชื่อมโยงอย่างแน่นและผู้ตรวจสอบจำเป็นต้องเรียกใช้ธุรกรรมทั้งหมดก่อนที่จะเห็นด้วยและทำให้บล็อกสามารถสร้างได้อย่างรวดเร็ว

Monad จะแยกฟังก์ชันเหล่านี้โดยการทำให้ลำดับของธุรกรรมเสร็จก่อน ผ่านความเห็นร่วม แล้วจึงดำเนินการดำเนินการหลังจากนั้น การออกแบบนี้ช่วยให้ชั้น consensus ทำงานอย่างอิสระและต่อเนื่อง ในขณะที่การดำเนินการทำงานข้างหลัง ช่วยเพิ่มประสิทธิภาพของ validator และลดเวลาบล็อก โดย validator ไม่ต้องถูกความจำกัดจากเวลาที่ใช้คำนวณผลลัพธ์ของทุกธุรกรรม

ระบบรักษาความเฉื่อยและความปลอดภัยโดยการให้แน่ใจว่าโหนดทั้งหมดทำธุรกรรมเหมือนกันอย่างแน่นอน ในลำดับที่ตกลงกันเดียวกัน แม้ว่าการทำงานจะเกิดขึ้นในเวลาที่แตกต่างกัน สิ่งนี้รับรองถึงความสอดคล้องในเครือข่ายและป้องกันการแตกต่างในสถานะบล็อกเชน

การดำเนินการแบบไม่ซึ่งซ้อนกันยังเสริมสร้างเติบโตของ Monad ในการทำงานแบบพร้อมพาราเลลลิสต์ ในขณะที่ความเห็นร่วมกำลังเดินหน้า และบล็อกใหม่ถูกจบการทำงานอย่างรวดเร็ว การดำเนินการเกิดขึ้นพร้อมกันในหลายเส้นใย แก้ข้อขัดแย้งเมื่อจำเป็นเท่านั้น การผสมผสานแบบพร้อมพาราเลลลิสต์และแบบไม่ซึ่งซ้อนกันนี้ ทำให้การใช้ทรัพยากรและความเป็นไปได้ของระบบสูงสุด โดยไม่เสียความถูกต้อง

จากมุมมองของผู้ใช้และผู้พัฒนา สถาปัตยกรรมนี้ทำให้การรวมธุรกรรมเร็วขึ้น การใช้งานแอปพลิเคชันที่ตอบสนองได้มากขึ้น และขยายขอบเขตการใช้งานได้ดีขึ้น มักยืดสายตรวจสอบยังได้รับประโยชน์จากการลดข้อขัดข้อง นำไปสู่เครือข่ายที่มีประสิทธิภาพและกระจายได้ดีขึ้น

กลไกการบรรลุข้อตกลง MonadBFT

ความเห็นร่วมใน Monad ได้ถูกบรรลุผ่าน MonadBFT ซึ่งเป็นการปรับทางที่กำหนดเองของโปรโตคอล HotStuff Byzantine Fault Tolerant (BFT) กลไกการเชื่อมั่นนี้ถูกปรับแต่งให้เหมาะสมสำหรับการทำงานทั้งในด้านประสิทธิภาพและความปลอดภัย รองรับวัตถุประสงค์ของ Monad ในเรื่องของความสามารถในการบอกความสมบูรณ์ที่มีความหน่วงต่ำและประสิทธิภาพที่สูง พร้อมทั้งยังสามารถเข้าถึงได้สำหรับผู้ตรวจสอบแบบกระจาย

HotStuff พัฒนาขึ้นเพื่อลดจำนวนรอบการสื่อสารที่ต้องใช้ในการสรุปบล็อก MonadBFT พัฒนาต่อจากนี้โดยการเปิดให้เกิดความสมบูรณ์แบบภายในสล็อตเดียว โดยที่บล็อกจะถูกสรุปเสร็จในรอบเดียวของการตกลงโดยไม่ต้องรอการยืนยันจากหลายรายการ ส่งผลให้การสรุปการทำธุรกรรมเป็นสิ้นสุดทันที ช่วยในการทำนายสำหรับแอปพลิเคชันและลดความเสี่ยงของการระงับเชื่อมต่อของเชือง

MonadBFT ใช้โมเดลที่มีผู้นำเป็นฐาน ในทุกรอบ ผู้ตรวจสอบหนึ่งคนเสนอบล็อกในขณะที่คนอื่นตรวจสอบและลงคะแนนเห็นด้วย หากสองในสามของมูลค่าของผู้ตรวจสอบรวมยืนยันบล็อก บล็อกนั้นจะถูกเสร็จสิ้น กระบวนการที่มีขั้นตอนน้อยน้อยนี้ช่วยลดภาระงานและเร่งกระบวนการผลิตบล็อกโดยเฉพาะอย่างยิ่งในเงื่อนไขการทำงานปกติ

เพื่อให้มั่นใจในความมีชีวิตชีวา MonadBFT รวมการหมุนผู้นำและกลยุทธ์การหมดเวลา หากผู้นำล้มเหลวในการเสนอบล็อก ผู้ตรวจสอบถัดไปในคิวจะเข้ามาดำเนินการโดยอัตโนมัติ ความทนทานนี้ทำให้โซ่ยังคงก้าวหน้าไปอย่างต่อเนื่อง แม้บางผู้ตรวจสอบจะออฟไลน์หรือไม่ตอบสนอง

จากมุมมองด้านความปลอดภัย MonadBFT ยึดถือตามเกณฑ์ BFT ทั่วไป ทนต่อผู้ตรวจสอบที่ไม่ดีเยี่ยมได้สูงสุดถึงหนึ่งในสามคนโดยไม่เสี่ยงความปลอดภัย หลังจากที่บล็อกถูกจบการตัดสินใจแล้ว มันถูกปิดกุญแจด้วยการใช้เทคโนโลยีเข้ารหัสและไม่สามารถย้อนกลับได้โดยไม่มีการคุกคามจากผู้กระทำที่ไม่ซื่อสัตย์ที่ควบคุมอำนาจของตัวตรวจสอบส่วนใหญ่

โปรโตคอลนี้ถูกผสานอย่างเข้มงวดกับโมเนดของMonad แบบไม่ซึ่งซื่อ โดยเนื่องจากบล็อกถูกสรุปก่อนการดำเนินการ ระบบสามารถดำเนินการต่อไปได้โดยไม่มีความล่าช้า ในขณะที่เลเยอร์ดำเนินการธุรกรรมอย่างอิสระ โครงสร้างนี้ช่วยลดภาระงานของผู้ตรวจสอบและทำให้ระบบสามารถรักษาประสิทธิภาพสูงโดยไม่ขึ้นอยู่กับบริการเรียงลำดับที่มีการจัดระเบียบและผู้กลายเป็นผู้ไว้วางใจ

MonadDB

การดําเนินการที่มีประสิทธิภาพและฉันทามติขึ้นอยู่กับระบบการจัดการของรัฐที่มีประสิทธิภาพสูง ใน Monad บทบาทนี้ได้รับการเติมเต็มโดย MonadDB ซึ่งเป็นเลเยอร์การจัดเก็บสถานะที่กําหนดเองของบล็อกเชน MonadDB มีหน้าที่จัดเก็บข้อมูลแบบ on-chain ทั้งหมดรวมถึงยอดคงเหลือในบัญชีการจัดเก็บสัญญาและตัวแปรสถานะถาวรอื่น ๆ ได้รับการออกแบบมาให้รวดเร็วพร้อมกันและเข้ากันได้อย่างสมบูรณ์กับเอ็นจิ้นการดําเนินการแบบขนานของ Monad

MonadDB ใช้ระบบจัดเก็บคีย์-ค่าเวอร์ชันและต่ออายุ เพื่อทำให้สามารถรักษาสแนปช็อตหลายๆรูปแบบของสถานะพร้อมกัน ซึ่งเป็นสิ่งที่สำคัญสำหรับการสนับสนุนการดำเนินการโดยสมมติ ที่ทำให้การดำเนินการหลายรายการสามารถดำเนินการพร้อมๆกันและอาจถูกรีเวิร์ตหรือปรับเปลี่ยนตามข้อขัดแย้ง โดยการจัดเก็บเวอร์ชันต่างๆของสถานะ MonadDB ช่วยให้เครื่องยนต์การดำเนินการสามารถแยกแยะและแก้ไขข้อขัดแย้งข้อมูลอย่างมีประสิทธิภาพ

ในพื้นหลังของมัน, MonadDB ใช้โครงสร้างข้อมูล Merkle Patricia Trie - ต้นไม้ที่ปลอดภัยทางการเข้ารหัสที่ช่วยให้การยืนยันสถานะบล็อกเชนอย่างรวดเร็ว โครงสร้างต้นไม้นี้ทำให้มั่นใจได้ว่าการเปลี่ยนแปลงใด ๆ ในสถานะจะทำให้เกิดรากแฮชใหม่ซึ่งสามารถตรวจสอบได้โดยโหนดทั้งหมด มันสนับสนุนการซิงโครไนซ์โดยไม่มีความไว้วางใจ, ไคลเอ็นต์ที่เบาและการยืนยันสถานะที่ขึ้นอยู่กับพิสูจน์ที่เป็นพื้นฐานสำหรับการออกแบบบล็อกเชนที่ปลอดภัยและมีสเกล

เพื่อจัดการปริมาณการทำธุรกรรมที่คาดหวัง MonadDB ถูกออกแบบให้มีความเร็วในการอ่านและเขียนต่ำ มันรวมการเก็บข้อมูลชั่วคราว การควบคุมการเข้าถึงที่ปลอดภัยและการเก็บข้อมูลดิสก์ที่เร็ว เพื่อให้มั่นใจว่าการเรียกข้อมูลและการแก้ไขสถานะจะเร็ว การปรับปรุงเหล่านี้ช่วยให้เลเยอร์การดำเนินการสามารถทำงานในอัตราการผ่านข้อมูลสูงโดยไม่ถูกชะลอโดยความล่าช้าในการเข้าถึงข้อมูล

จากมุมมองของนักพัฒนาซอฟต์แวร์ MonadDB ถูกทำให้มีการแยกแยะอย่างสมบูรณ์ นักพัฒนาสัญญาฉลาดสามารถทำงานร่วมกับบล็อกเชนผ่านการสร้าง Solidity ที่คุ้นเคย โดยไม่จำเป็นต้องจัดการกับกลไกสถานะภายใน MonadDB รับประกันว่าสถานะจะได้รับการอัพเดตและเก็บรักษาไว้อย่างถูกต้อง แม้ในสภาวะภาระของการใช้งานสูง หรือขณะกระทำสัญญาที่ซับซ้อน

Tuyên bố từ chối trách nhiệm
* Đầu tư tiền điện tử liên quan đến rủi ro đáng kể. Hãy tiến hành một cách thận trọng. Khóa học không nhằm mục đích tư vấn đầu tư.
* Khóa học được tạo bởi tác giả đã tham gia Gate Learn. Mọi ý kiến chia sẻ của tác giả không đại diện cho Gate Learn.