แผนงาน MultiChain 1.0 เบต้า 2 และ 2.0

โหนดต้นทาง: 1742567

วันนี้เราอยู่ที่ไหน พรุ่งนี้เราจะไปที่ไหน

วันนี้ เรามีความยินดีที่จะเปิดตัว MultiChain 1.0 รุ่นเบต้าที่สองสำหรับ Linux, Windows และ Mac (สำหรับตอนนี้ เวอร์ชัน Mac ต้องมีการรวบรวม) นี่เป็นการสรุปแผนการพัฒนา MultiChain 1.0 – ยกเว้นการแก้ไขข้อผิดพลาดใดๆ การเปิดตัว MultiChain 1.0 ครั้งสุดท้ายในช่วงฤดูร้อนจะไม่เปลี่ยนแปลง

เดือนนี้ยังเป็นวันครบรอบสองปีนับตั้งแต่การเปิดตัว MultiChain เวอร์ชันอัลฟ่าครั้งแรกในเดือนมิถุนายน 2015 เช่นเดียวกับผลิตภัณฑ์ใหม่ใดๆ เราไม่แน่ใจว่าตลาดจะตอบสนองอย่างไร และรู้ว่ามีเพียงวิธีเดียวที่จะค้นพบ – ปล่อย ผลิตภัณฑ์ที่มีศักยภาพขั้นต่ำหมายถึงเวอร์ชันเริ่มต้นซึ่งให้คุณค่าที่สำคัญแต่เป็นเบื้องต้นโดยการออกแบบ โชคดีที่ไม่เหมือนผลิตภัณฑ์ตัวแรกของเรา คอยน์สปาร์ค, MultiChain ได้รับการตอบรับเชิงบวกอย่างแข็งแกร่งในทันที สิ่งนี้มาพร้อมกับคำขอคุณสมบัติที่สมเหตุสมผลของคลื่นสึนามิ ซึ่งหลายรายการเราได้ดำเนินการแล้วในขณะนี้ ควบคู่ไปกับการพัฒนาผลิตภัณฑ์ การใช้งานก็เพิ่มขึ้นอย่างน่าทึ่งในทุกมาตรการ ตัวอย่างเช่น เว็บไซต์ MultiChain ได้รับผู้เข้าชมน้อยกว่า 3,000 คนในเดือนกรกฎาคม 2015 และขณะนี้มีผู้เข้าชมเป็นสิบเท่าต่อเดือน

ประสิทธิภาพของ MultiChain

ในช่วงสองปีที่ผ่านมา เราได้ทุ่มเทความพยายามอย่างมากในการเพิ่มประสิทธิภาพ MultiChain ซึ่งแยกจาก Bitcoin Coreการดำเนินการอ้างอิงสำหรับเครือข่าย bitcoin สาธารณะ ด้านล่างนี้คือการเปรียบเทียบปริมาณการประมวลผลของธุรกรรมสำหรับการตั้งค่าโหนดเดียวโดยใช้ผลิตภัณฑ์ห้าเวอร์ชัน:

.throughput td,.throughput th {การจัดตำแหน่งข้อความ:ขวา;}
ธุรกรรมทั้งหมด 1.0 อัลฟา 3 1.0 อัลฟา 21 1.0 อัลฟา 22 1.0 1 เบต้า 1.0 2 เบต้า
100 6.5 ช้อนชา 7.8 541.7 830.6 1465.7
1,000 7.0 7.6 583.9 889.4 1199.6
10,000 4.1 6.4 566.9 746.6 1071.2
100,000 - 6.6 558.0 771.9 1034.2
1,000,000 - - 548.6 773.6 1055.4

ธุรกรรมเฉลี่ยต่อวินาที รวมถึงค่าโสหุ้ย API และการสร้าง การลงนาม การขุด และการตรวจสอบธุรกรรมและบล็อก
การทดสอบดำเนินการโดยใช้ ab เครื่องมือเปรียบเทียบเซิร์ฟเวอร์ HTTP ส่งคำขอสองรายการพร้อมกันไปยัง sendtoaddress API
ข้อมูลจำเพาะของเซิร์ฟเวอร์: Intel Core i7-4770, 4 คอร์ @ 3.4 MHz, 32 GB RAM, Seagate 2 TB 7200 RPM SATA, CentOS 6.4

โดยธรรมชาติ การกระโดดครั้งใหญ่ที่สุดมาในอัลฟ่า 22 เมื่อเรา เปลี่ยน ไปยังกระเป๋าเงินที่ขับเคลื่อนด้วยฐานข้อมูล แต่ตั้งแต่เปิดตัวนั้น เราก็ได้เพิ่มความเร็วของ MultiChain ขึ้นเกือบสองเท่าอีกครั้ง เราหวังว่าเราได้แสดงให้เห็นแล้วว่าขีดจำกัดของ bitcoin ที่ 4 ธุรกรรมต่อวินาทีนั้นเกิดจากพารามิเตอร์เครือข่ายเฉพาะ และไม่มีความสัมพันธ์กับบล็อคเชนโดยทั่วไป

แน่นอน การเพิ่มประสิทธิภาพการทำงานเป็นงานที่ไม่มีวันจบสิ้น และไม่มีเหตุผลว่าทำไม MultiChain จึงไม่สามารถเข้าถึง 10,000 tx/วินาทีบน โปรเซสเซอร์ 16-core ด้วยการเปลี่ยนแปลงทางสถาปัตยกรรมที่เหมาะสม อย่างไรก็ตาม จากการสนทนากับผู้ใช้และพันธมิตรของเรา ดูเหมือนว่ามีเพียงไม่กี่คนที่คาดว่าจะต้องการมากกว่า 1,000 tx/วินาทีในอีกไม่กี่ปีข้างหน้า ดังนั้นเราจึงปรับความพยายามในการพัฒนาคุณลักษณะใหม่ ซึ่งนำเราไปสู่หัวข้อของ MultiChain 2.0 อย่างดี

ภาพรวม MultiChain 2.0

MultiChain เวอร์ชัน 2.0 จะเป็นรุ่นแรกในสองรุ่น – Community (โอเพ่นซอร์ส) และ Enterprise (เชิงพาณิชย์) ฉันจะเน้นที่นี่ในรุ่น Community ฟรี เนื่องจากเราพูดถึงแต่รายละเอียดของ MultiChain Enterprise กับ พันธมิตรของเรา. ไม่ว่าในกรณีใด รุ่น Community และ Enterprise จะเข้ากันได้สูง โดยที่: (a) แอปพลิเคชันที่สร้างจากรุ่น Community จะทำงานโดยไม่มีการแก้ไขบน MultiChain Enterprise และ (b) ทั้งสองรุ่นจะสามารถเชื่อมต่อและทำธุรกรรมระหว่างกันได้ บนห่วงโซ่เดียวกัน

สามส่วนสำคัญของการทำงานที่ได้รับการปรับปรุงใน MultiChain 2.0 ทั้งสองรุ่นคือ:

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

เรามาพูดถึงรายละเอียดเหล่านี้กัน

โมเดลข้อมูลที่สมบูรณ์ยิ่งขึ้นสำหรับสตรีม

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

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

MultiChain 2.0 จะช่วยเสริมการทำงานของสตรีมนี้ได้หลายวิธี:

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

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

MultiChain 2.0 จะสนับสนุนออบเจ็กต์ JSON สำหรับข้อมูลเมตาของธุรกรรมดิบ (เช่น ไม่ใช่รายการสตรีม) เช่นเดียวกับข้อมูลเมตาสำหรับการออกสินทรัพย์และเหตุการณ์การสร้างสตรีม แทนที่จะเป็นคู่คีย์/ค่าแบบข้อความเท่านั้นที่ใช้ใน MultiChain 1.0 ดิ listassets API จะเสนอการรวม JSON ในเหตุการณ์การออกสินทรัพย์ทั้งหมด เพื่อให้ข้อมูลเมตาของการออกแต่ละรายการอัปเดตคำอธิบายสุดท้ายของเนื้อหาได้อย่างมีประสิทธิภาพ

ตัวกรองธุรกรรมที่กำหนดเอง

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

MultiChain 2.0 จะแนะนำกระบวนทัศน์ที่แตกต่างกันซึ่งเรียกว่าตัวกรองธุรกรรม ซึ่งตรวจสอบธุรกรรมแต่ละรายการโดยไม่ต้องอ้างอิงถึงสถานะสากลใดๆ เราคาดว่าตัวกรองจะถูกเขียนด้วยจาวาสคริปต์และดำเนินการภายในเอ็นจินรันไทม์แบบฝัง เช่น v8ซึ่งใช้ใน .ของ Google Chrome เบราว์เซอร์และ Node.js แพลตฟอร์ม. แน่นอน เราจำเป็นต้องตรวจสอบให้แน่ใจว่ารหัสตัวกรองทำงานเหมือนกันทุกโหนดในบล็อคเชน ซึ่งจะบล็อกทุก ๆ ตัว แหล่งที่มาของการไม่กำหนดขึ้น เช่น การอ่านเวลา การใช้ตัวเลขสุ่ม การเข้าถึงเครือข่ายหรือดิสก์ หรือการคำนวณทางคณิตศาสตร์ที่ขึ้นอยู่กับสถาปัตยกรรมของเซิร์ฟเวอร์โฮสต์ การสร้างสภาพแวดล้อมรันไทม์ Javascript ที่กำหนดขึ้นได้เป็นสิ่งที่ท้าทาย แต่ (โดยไม่ให้มากเกินไป) เราเชื่อว่ามันจะมีประโยชน์สำหรับคุณสมบัติ MultiChain อื่นๆ ในอนาคต

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

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

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

เราคาดว่าแอปพลิเคชันยอดนิยมสำหรับตัวกรองจะตรวจสอบความถูกต้องของรายการสตรีม ตัวอย่างเช่น ตัวกรองสามารถมั่นใจได้ว่าฟิลด์บางฟิลด์ในรายการ JSON ของสตรีมมีตัวเลขในช่วงที่กำหนด ใน MultiChain 1.0 การตรวจสอบความถูกต้องประเภทนี้จะต้องทำที่ระดับแอปพลิเคชัน ไม่ว่าจะเป็นเมื่อเขียนรายการสตรีม (หากแหล่งที่มาเชื่อถือได้) หรือเมื่ออ่าน ในทางตรงกันข้าม MultiChain 2.0 จะทำให้กฎเหล่านี้สามารถฝังตัวอยู่ภายในตัวบล็อกเชนเองได้ เหมือนกับ ตรวจสอบข้อ จำกัด ในฐานข้อมูลเชิงสัมพันธ์

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

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

อัพเดทบล็อคเชน

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

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

พารามิเตอร์บล็อคเชนที่สามารถอัปเดตได้จะรวมถึง:

  • เวอร์ชันโปรโตคอล. ซึ่งจะทำให้บล็อกเชนที่สร้างขึ้นด้วย MultiChain เวอร์ชันเดียวสามารถอัปเกรดเพื่อรองรับคุณลักษณะในเวอร์ชันใหม่ เช่น รายการสตรีม JSON หรือตัวกรองธุรกรรม อันที่จริง เวอร์ชันโปรโตคอล 10008 ที่เปิดตัวใน MultiChain 1.0 alpha 29 (และใช้ในเบต้า) ได้รับการพิสูจน์แล้วในอนาคตด้วยการสนับสนุนที่ไม่มีเอกสารสำหรับการอัปเกรดประเภทนี้ เมื่อบล็อกเชน MultiChain 1.0 ได้รับการอัปเกรดเป็นโปรโตคอล 2.0 ก็จะเข้าถึงการเปลี่ยนแปลงพารามิเตอร์อื่นๆ ที่อธิบายไว้ที่นี่ได้เช่นกัน
  • สเกลบล็อคเชน. บล็อกเชนที่ได้รับความนิยมอาจเติบโตเร็วกว่าค่าเริ่มต้นที่กำหนดไว้สำหรับเวลายืนยันเป้าหมายหรือขนาดธุรกรรมและบล็อกสูงสุด MultiChain 2.0 จะช่วยให้ค่าเหล่านี้เพิ่มขึ้นหรือลดลงตามความจำเป็น
  • รูปแบบการอนุญาต. MultiChain 2.0 จะอนุญาตให้อัปเดตพารามิเตอร์ต่างๆ ที่เกี่ยวข้องกับการอนุญาตและการกำกับดูแล ซึ่งรวมถึง: (a) anyone-can-* พารามิเตอร์ที่ควบคุมวิธีการเปิดหรือปิดบล็อคเชน (b) admin-consensus-* พารามิเตอร์ที่กำหนดระดับฉันทามติของผู้ดูแลระบบที่จำเป็นสำหรับการดำเนินการบางอย่าง และ (c) mining-diversity พารามิเตอร์ที่ควบคุมความเข้มงวดของอัลกอริธึมฉันทามติแบบปัดเศษ

เมื่อใช้งานฟังก์ชันการอัปเดตนี้แล้ว ไม่ควรมีเหตุผลใดที่บล็อคเชนที่สร้างขึ้นใน MultiChain ไม่สามารถทำงานได้เป็นเวลาหลายทศวรรษหรือมากกว่านั้น

มองไปข้างหน้า

เราได้เริ่มทำงานบน MultiChain 2.0 แล้ว และหวังว่าจะได้ดำเนินการตามแผนงานนี้ ไม่ต้องสงสัยเลยว่าจะมีการปรับปรุงอื่นๆ ด้วย เช่นเดียวกับ MultiChain 1.0 เราจะมีรุ่นอัลฟ่าระหว่างทาง เพื่อให้นักพัฒนาสามารถใช้และเรียนรู้คุณลักษณะใหม่ๆ เมื่อมีการใช้งาน (และแน่นอน รายงานปัญหาหรือข้อบกพร่องใดๆ ก็ตาม) โดยปกติ เราจะยังคงรักษาเวอร์ชัน 1.0 ไว้ตลอดช่วงเวลานี้ โดยแก้ไขจุดบกพร่องที่ปรากฏ

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

กรุณาโพสต์ความคิดเห็นใด ๆ ใน LinkedIn.

ประทับเวลา:

เพิ่มเติมจาก มัลติเชน