> dYdX V4 จะเป็นบล็อกเชน L1 อิสระที่มีสมุดคำสั่งซื้อนอกเชนแบบกระจายอำนาจเต็มรูปแบบและเครื่องมือจับคู่** เขียนโดย: **** dYdX ****เรียบเรียง: IBCL**dYdX Chain V4 เป็นการทำซ้ำล่าสุดของโปรโตคอล dYdX ซึ่งจะประกอบด้วยซอฟต์แวร์โอเพ่นซอร์ส เวอร์ชันที่ใช้งานจริงในปัจจุบันเรียกว่า v3, v3 และเวอร์ชันก่อนหน้าของ dYdX มีสัญญาอัจฉริยะหลักที่ปรับใช้กับเชนที่มีอยู่รวมกับบริการส่วนกลางที่โฮสต์ในระบบคลาวด์v4 จะเป็นบล็อกเชน L1 อิสระที่มีสมุดคำสั่งซื้อนอกเชนแบบกระจายศูนย์อย่างสมบูรณ์และเครื่องมือจับคู่ ห่วงโซ่ dYdX จะขึ้นอยู่กับ Cosmos SDK และโปรโตคอลฉันทามติ CometBFT PoSเมื่อเราเข้าใกล้การเปิดตัว v4 mainnet มากขึ้น เราอยากให้คุณเห็นคร่าวๆ ว่าทีม dYdX กำลังสร้างอะไรอยู่ บทความนี้แสดงภาพรวมระดับสูงของสถาปัตยกรรม v4 เนื่องจาก v4 ยังอยู่ระหว่างการพัฒนาอาจมีการเปลี่ยนแปลง## **สถาปัตยกรรมระบบ v4**dYdX v4 ได้รับการออกแบบมาให้มีการกระจายอำนาจจากต้นทางถึงปลายทางอย่างสมบูรณ์ ส่วนประกอบหลักอย่างกว้างๆ ได้แก่ โปรโตคอล ตัวสร้างดัชนี และส่วนหน้า แต่ละองค์ประกอบเหล่านี้จะถูกจัดเตรียมไว้เป็นซอฟต์แวร์โอเพ่นซอร์ส dYdX Trading Inc. จะไม่เรียกใช้ส่วนประกอบใดๆ###### **ข้อตกลง**โปรโตคอลคือบล็อกเชน L1 ที่สร้างขึ้นบน CometBFT และใช้ CosmosSDK ซอฟต์แวร์โหนดเขียนด้วย Go และคอมไพล์เป็นไบนารี่เดียว เช่นเดียวกับบล็อกเชน CosmosSDK ทั้งหมด v4 ใช้กลไกฉันทามติที่พิสูจน์การมีส่วนได้ส่วนเสียโปรโตคอลจะได้รับการสนับสนุนโดยเครือข่ายของโหนด โหนดมีสองประเภท:* เครื่องมือตรวจสอบความถูกต้อง: เครื่องมือตรวจสอบความถูกต้องมีหน้าที่รับผิดชอบในการจัดเก็บคำสั่งซื้อในสมุดคำสั่งซื้อในหน่วยความจำ (เช่น ออฟไลน์และไม่มีข้อผูกมัดกับความเห็นพ้องต้องกัน) ซุบซิบการทำธุรกรรมกับผู้ตรวจสอบความถูกต้องรายอื่น และสร้างบล็อกใหม่สำหรับห่วงโซ่ dYdX ผ่านกระบวนการที่เป็นเอกฉันท์ กระบวนการฉันทามติจะมีผู้ตรวจสอบความถูกต้องผลัดกันเป็นผู้เสนอบล็อกใหม่ในแบบถ่วงน้ำหนักแบบปัดเศษ (ถ่วงน้ำหนักโดยจำนวนโทเค็นที่เดิมพันกับโหนดของพวกเขา) ผู้เสนอมีหน้าที่เสนอเนื้อหาของบล็อกถัดไป เมื่อจับคู่คำสั่งซื้อแล้ว ผู้เสนอจะเพิ่มลงในบล็อกที่เสนอและเริ่มรอบฉันทามติ บล็อกจะถือว่าคอมมิตและเพิ่มลงในบล็อกเชนหากผู้ตรวจสอบ ⅔ ขึ้นไป (ตามน้ำหนักเดิมพัน) อนุมัติ ผู้ใช้จะส่งธุรกรรมโดยตรงไปยังผู้ตรวจสอบความถูกต้อง* โหนดแบบเต็ม: โหนดแบบเต็มแสดงถึงกระบวนการที่เรียกใช้แอปพลิเคชัน v4 ที่ไม่เข้าร่วมในฉันทามติ เป็นโหนดที่มีน้ำหนักเดิมพันเป็น 0 ซึ่งจะไม่ส่งข้อเสนอหรือลงคะแนนให้กับพวกเขา อย่างไรก็ตาม โหนดแบบเต็มจะเชื่อมต่อกับเครือข่ายของ Validator มีส่วนร่วมในข่าวซุบซิบของธุรกรรม และประมวลผลแต่ละบล็อกที่ส่งเข้ามาใหม่ โหนดแบบเต็มมีมุมมองที่สมบูรณ์ของเชน dYdX และประวัติของมัน และได้รับการออกแบบมาเพื่อรองรับตัวสร้างดัชนี บางฝ่ายอาจตัดสินใจ (ด้วยเหตุผลด้านประสิทธิภาพหรือต้นทุน) เพื่อเรียกใช้โหนดแบบเต็มและ/หรือตัวสร้างดัชนีของตนเอง###### **ตัวสร้างดัชนี**Indexer คือชุดของบริการแบบอ่านอย่างเดียวที่มีวัตถุประสงค์เพื่อจัดทำดัชนีและให้บริการข้อมูลบล็อกเชนสำหรับผู้ใช้อย่างมีประสิทธิภาพและเป็นมิตรกับเว็บไซต์ สิ่งนี้ทำได้โดยใช้ข้อมูลตามเวลาจริงจากโหนดเต็ม v4 เก็บไว้ในฐานข้อมูล และทำให้ข้อมูลนั้นพร้อมใช้งานสำหรับผู้ใช้ปลายทางผ่านคำขอ websocket และ RESTในขณะที่โปรโตคอล v4 เองนั้นสามารถเปิดเผยจุดสิ้นสุดให้กับการค้นหาบริการเกี่ยวกับข้อมูลพื้นฐานบนเครือข่าย การสืบค้นเหล่านี้มักจะช้าเนื่องจากตัวตรวจสอบความถูกต้องและโหนดแบบเต็มไม่ได้รับการปรับให้เหมาะสมเพื่อจัดการอย่างมีประสิทธิภาพ นอกจากนี้ การสอบถามผู้ตรวจสอบมากเกินไปอาจทำให้ความสามารถในการมีส่วนร่วมในฉันทามติลดลง ด้วยเหตุนี้ ตัวตรวจสอบความถูกต้องของ Cosmos จำนวนมากจึงต้องการปิดใช้งาน API เหล่านี้ในการผลิต ด้วยเหตุนี้การสร้างและบำรุงรักษาตัวสร้างดัชนีและโหนดแบบเต็มจึงเป็นสิ่งสำคัญโดยแยกจากตัวตรวจสอบความถูกต้องเครื่องมือสร้างดัชนีจะใช้ฐานข้อมูล Postgres สำหรับการจัดเก็บข้อมูลแบบออนเชน Redis สำหรับการจัดเก็บข้อมูลแบบออฟไลน์ และ Kafka สำหรับการใช้ข้อมูลแบบออนเชน/ออฟเชน และการสตรีมไปยังบริการตัวสร้างดัชนีต่างๆ### **ส่วนหน้า**เพื่อสร้างประสบการณ์การกระจายอำนาจแบบ end-to-end dYdX กำลังสร้างส่วนหน้าแบบโอเพ่นซอร์สสามส่วน: เว็บแอปพลิเคชัน แอปพลิเคชัน iOS และแอปพลิเคชัน Android* Web Application: เว็บไซต์จะสร้างโดยใช้ Java และ React เว็บไซต์จะโต้ตอบกับ Indexer ผ่าน API เพื่อรับข้อมูลหนังสือคำสั่งซื้อนอกเครือข่ายและส่งการซื้อขายโดยตรงบนเครือข่าย dYdX จะเปิดซอร์สโค้ดส่วนหน้าและสคริปต์การปรับใช้ที่เกี่ยวข้อง สิ่งนี้จะช่วยให้ทุกคนปรับใช้และเข้าถึงฟรอนต์เอนด์ dYdX ไปยัง/จากโดเมน/โซลูชันโฮสต์ของตนเองได้อย่างง่ายดายผ่านเกตเวย์ IPFS/Cloudflare* มือถือ: แอพ iOS และ Android สร้างขึ้นโดยใช้ Swift และ Kotlin ดั้งเดิมตามลำดับ แอพมือถือจะโต้ตอบกับตัวทำดัชนีในลักษณะเดียวกับเว็บแอพและส่งธุรกรรมโดยตรงไปยังเชน แอปพลิเคชันมือถือจะเป็นโอเพ่นซอร์ส ทำให้ทุกคนสามารถปรับใช้แอปพลิเคชันมือถือกับ App Store หรือ Play Store โดยเฉพาะอย่างยิ่งสำหรับร้านแอป ผู้ปรับใช้จำเป็นต้องมีบัญชีนักพัฒนาซอฟต์แวร์และบัญชี Bitrise เพื่อดำเนินขั้นตอนการส่งแอปให้เสร็จสมบูรณ์###### **วงจรชีวิตการสั่งซื้อ**ตอนนี้เรามีความเข้าใจที่ดีขึ้นเกี่ยวกับส่วนประกอบแต่ละส่วนของ dYdX v4 แล้ว มาดูกันว่าส่วนประกอบทั้งหมดเข้ากันได้อย่างไรเมื่อทำการสั่งซื้อ เมื่อทำการสั่งซื้อใน v4 จะทำตามขั้นตอนต่อไปนี้:1. ผู้ใช้ทำธุรกรรมบนส่วนหน้าแบบกระจายศูนย์ (เช่น เว็บไซต์) หรือผ่าน API2. คำสั่งซื้อถูกส่งไปยังตัวตรวจสอบความถูกต้อง โปรแกรมตรวจสอบความถูกต้องนั้นซุบซิบเกี่ยวกับธุรกรรมกับโปรแกรมตรวจสอบความถูกต้องอื่น ๆ และโหนดทั้งหมดเพื่ออัปเดตสมุดคำสั่งซื้อด้วยคำสั่งซื้อใหม่3. กระบวนการฉันทามติเลือกผู้ตรวจสอบความถูกต้องเป็นผู้เสนอ ตัวตรวจสอบความถูกต้องที่เลือกตรงกับคำสั่งซื้อและเพิ่มไปยังบล็อกที่เสนอถัดไป4. บล็อกที่เสนอดำเนินต่อไปผ่านกระบวนการฉันทามติ ก. หาก⅔ของผู้ตรวจสอบความถูกต้องลงคะแนนเพื่อยืนยันการบล็อก การบล็อกจะถูกผูกมัดและบันทึกลงในฐานข้อมูลออนเชนของผู้ตรวจสอบทั้งหมดและโหนดทั้งหมด ข. หากบล็อกที่เสนอไม่ผ่านเกณฑ์ ⅔ บล็อกนั้นจะถูกปฏิเสธ5. หลังจากคอมมิตบล็อกแล้ว ข้อมูลออนเชน (และออฟเชน) ที่อัปเดตจะถูกสตรีมจากโหนดทั้งหมดไปยังตัวสร้างดัชนี จากนั้นตัวสร้างดัชนีจะให้ข้อมูลนี้ผ่าน API และ Websockets ไปยังส่วนหน้าและ/หรือบริการภายนอกอื่นๆ ที่สืบค้นข้อมูลนี้ขั้นตอนด้านบนเป็นภาพรวมระดับสูงของวิธีการที่คำสั่งซื้อ/ข้อมูลเคลื่อนผ่าน v4 เมื่อการเปิดตัว mainnet v4 ใกล้เข้ามา เราจะเจาะลึกเพิ่มเติมเกี่ยวกับโปรโตคอล ตัวสร้างดัชนี และโครงสร้างพื้นฐานส่วนหน้าต่างๆ ในโพสต์บล็อกต่อๆ ไป
อธิบายสถาปัตยกรรมทางเทคนิค dYdX V4 โดยสังเขป
** เขียนโดย: **** dYdX **
เรียบเรียง: IBCL
dYdX Chain V4 เป็นการทำซ้ำล่าสุดของโปรโตคอล dYdX ซึ่งจะประกอบด้วยซอฟต์แวร์โอเพ่นซอร์ส เวอร์ชันที่ใช้งานจริงในปัจจุบันเรียกว่า v3, v3 และเวอร์ชันก่อนหน้าของ dYdX มีสัญญาอัจฉริยะหลักที่ปรับใช้กับเชนที่มีอยู่รวมกับบริการส่วนกลางที่โฮสต์ในระบบคลาวด์
v4 จะเป็นบล็อกเชน L1 อิสระที่มีสมุดคำสั่งซื้อนอกเชนแบบกระจายศูนย์อย่างสมบูรณ์และเครื่องมือจับคู่ ห่วงโซ่ dYdX จะขึ้นอยู่กับ Cosmos SDK และโปรโตคอลฉันทามติ CometBFT PoS
เมื่อเราเข้าใกล้การเปิดตัว v4 mainnet มากขึ้น เราอยากให้คุณเห็นคร่าวๆ ว่าทีม dYdX กำลังสร้างอะไรอยู่ บทความนี้แสดงภาพรวมระดับสูงของสถาปัตยกรรม v4 เนื่องจาก v4 ยังอยู่ระหว่างการพัฒนาอาจมีการเปลี่ยนแปลง
สถาปัตยกรรมระบบ v4
dYdX v4 ได้รับการออกแบบมาให้มีการกระจายอำนาจจากต้นทางถึงปลายทางอย่างสมบูรณ์ ส่วนประกอบหลักอย่างกว้างๆ ได้แก่ โปรโตคอล ตัวสร้างดัชนี และส่วนหน้า แต่ละองค์ประกอบเหล่านี้จะถูกจัดเตรียมไว้เป็นซอฟต์แวร์โอเพ่นซอร์ส dYdX Trading Inc. จะไม่เรียกใช้ส่วนประกอบใดๆ
ข้อตกลง
โปรโตคอลคือบล็อกเชน L1 ที่สร้างขึ้นบน CometBFT และใช้ CosmosSDK ซอฟต์แวร์โหนดเขียนด้วย Go และคอมไพล์เป็นไบนารี่เดียว เช่นเดียวกับบล็อกเชน CosmosSDK ทั้งหมด v4 ใช้กลไกฉันทามติที่พิสูจน์การมีส่วนได้ส่วนเสีย
โปรโตคอลจะได้รับการสนับสนุนโดยเครือข่ายของโหนด โหนดมีสองประเภท:
ตัวสร้างดัชนี
Indexer คือชุดของบริการแบบอ่านอย่างเดียวที่มีวัตถุประสงค์เพื่อจัดทำดัชนีและให้บริการข้อมูลบล็อกเชนสำหรับผู้ใช้อย่างมีประสิทธิภาพและเป็นมิตรกับเว็บไซต์ สิ่งนี้ทำได้โดยใช้ข้อมูลตามเวลาจริงจากโหนดเต็ม v4 เก็บไว้ในฐานข้อมูล และทำให้ข้อมูลนั้นพร้อมใช้งานสำหรับผู้ใช้ปลายทางผ่านคำขอ websocket และ REST
ในขณะที่โปรโตคอล v4 เองนั้นสามารถเปิดเผยจุดสิ้นสุดให้กับการค้นหาบริการเกี่ยวกับข้อมูลพื้นฐานบนเครือข่าย การสืบค้นเหล่านี้มักจะช้าเนื่องจากตัวตรวจสอบความถูกต้องและโหนดแบบเต็มไม่ได้รับการปรับให้เหมาะสมเพื่อจัดการอย่างมีประสิทธิภาพ นอกจากนี้ การสอบถามผู้ตรวจสอบมากเกินไปอาจทำให้ความสามารถในการมีส่วนร่วมในฉันทามติลดลง ด้วยเหตุนี้ ตัวตรวจสอบความถูกต้องของ Cosmos จำนวนมากจึงต้องการปิดใช้งาน API เหล่านี้ในการผลิต ด้วยเหตุนี้การสร้างและบำรุงรักษาตัวสร้างดัชนีและโหนดแบบเต็มจึงเป็นสิ่งสำคัญโดยแยกจากตัวตรวจสอบความถูกต้อง
เครื่องมือสร้างดัชนีจะใช้ฐานข้อมูล Postgres สำหรับการจัดเก็บข้อมูลแบบออนเชน Redis สำหรับการจัดเก็บข้อมูลแบบออฟไลน์ และ Kafka สำหรับการใช้ข้อมูลแบบออนเชน/ออฟเชน และการสตรีมไปยังบริการตัวสร้างดัชนีต่างๆ
ส่วนหน้า
เพื่อสร้างประสบการณ์การกระจายอำนาจแบบ end-to-end dYdX กำลังสร้างส่วนหน้าแบบโอเพ่นซอร์สสามส่วน: เว็บแอปพลิเคชัน แอปพลิเคชัน iOS และแอปพลิเคชัน Android
วงจรชีวิตการสั่งซื้อ
ตอนนี้เรามีความเข้าใจที่ดีขึ้นเกี่ยวกับส่วนประกอบแต่ละส่วนของ dYdX v4 แล้ว มาดูกันว่าส่วนประกอบทั้งหมดเข้ากันได้อย่างไรเมื่อทำการสั่งซื้อ เมื่อทำการสั่งซื้อใน v4 จะทำตามขั้นตอนต่อไปนี้:
ขั้นตอนด้านบนเป็นภาพรวมระดับสูงของวิธีการที่คำสั่งซื้อ/ข้อมูลเคลื่อนผ่าน v4 เมื่อการเปิดตัว mainnet v4 ใกล้เข้ามา เราจะเจาะลึกเพิ่มเติมเกี่ยวกับโปรโตคอล ตัวสร้างดัชนี และโครงสร้างพื้นฐานส่วนหน้าต่างๆ ในโพสต์บล็อกต่อๆ ไป