Apricot Phase Five: P<>C Atomic Transfers, Atomic Transaction Batching, และการปรับปรุงประสิทธิภาพ Algorithm ของค่าธรรมเนียมบน C-Chain
Apricot Phase 5 จะเปิดทดสอบบน Fuji Testnet เวลา 3 p.m. UTC (22.00 น.) ในวันพุธ ที่ 24 พฤศจิกายน และการเปิดใช้จริงบน Avalanche Mainnet จะประกาศให้ทราบอีกครั้ง
เย็นวันนี้ code เวอร์ชัน pre-release จะถูกปล่อยสู่สาธารณะสำหรับระยะที่ 5 ของการอัพเกรดที่มีชื่อว่า Apricot Upgrade (“AP5”) ซึ่งจะเริ่มเวลา 3 p.m. UTC (22.00 น.) ในวันพุธ ที่ 24 พฤศจิกายน บน Fuji Testnet หมายเหตุ: code เวอร์ชัน pre-release นี้จะทำงานเฉพาะบน Fuji เท่านั้น หากคุณทำงานบน Mainnet จะเป็นการปิดการทำงานบนหน้า startup
เป็นการรอความสมบูรณ์ของการเปิดใช้งาน AP5 บน Fuji จากนั้นเวลาในการเปิดใช้งาน AP5 บน Avalanche Mainnet จะประกาศต่อไปภายหลัง และ AP5 AvalancheGo แบบเป็นทางการ (v1.7.0) ถึงจะถูกปล่อยออกมา
การอัพเกรดครั้งนี้จะรวมถึงการปรับปรุงประสิทธิภาพของ protocol ที่ไม่เข้ากันกับ AvalancheGo ตั้งแต่ version 1.7.0 ลงมา หากว่าทำการสั่งการ node บน Fujj Testnet มันจะแนะนำให้คุณทำการอัพเดทซอฟแวร์เป็น AvalancheGo ที่ใหม่กว่าหรือเท่ากับ v1.7.0 ก่อนที่จะเปิดใช้งานอันใหม่นี้บน Fuji หากคุณดูแล node บน Mainnet อยู่ ตอนนี้ไม่ต้องดำเนินการใด ๆ จนกว่าจะมีการประกาศโค้ดแบบทางการของ AvalancheGo@v1.7.0
P<>C Atomic Transfers
Avalanche ใช้ abstraction (การแสดงคุณลักษณะที่จำเป็น) เรียกว่า Shared Memory เพื่ออำนวยความสะดวกของการเคลื่อนย้าย AVAX และ ANT (Avalanche Native Tokens) ระหว่าง C-Chain, P-Chain และ X-Chain ใน Shared Memory การถ่ายโอนในทุก ๆ เที่ยวจะแสดงเป็น UTXOs (วิธีในการแสดงยอดเงินคงเหลือหลังจากที่มีการทำธุรกรรม) ที่สามารถใช้งานอย่าง asynchronous (ทำงานถัดไปได้โดยไม่ต้องรอคำสั่งก่อนหน้าให้เสร็จก่อน) โดยแล้วแต่ว่า chain ไหนจะเป็นเจ้าของ UTXO ที่ทำการเรียกคำสั่ง ‘ImportTx’ อย่างไรก็ตามยังมีข้อยกเว้นอันใหญ่อยู่หนึ่งประการ คือผู้ใช้งานสามารถข้ามไปมาได้แค่ระหว่าง X<>C หรือ X<>P นั่นหมายถึงการที่บางคนที่พยายามจะ Stake เหรียญ AVAX พวกเขาได้รับมันบน C-Chain ซึ่งจะต้องเดินทางผ่าน X-Chain เพื่อจะไปที่ P-Chain ขั้นตอนที่เพิ่มขึ้นมานี้จะไปเพิ่มค่าธรรมเนียม ความซ้ำซ้อน และ latency ในกระบวนการโอนย้ายของ C<>P (หนึ่งใน flow ทั่วไปที่พบเจอบ่อยที่สุดบน Primary Network)
การเริ่มต้นใน AP5 ผู้ใช้สามารถใช้ UTXOs ใน Shared Memory บน Chain ใด ๆ ก็ได้ สิ่งนี้หมายถึง ตอนนี้เราสามารถ export เงินทุนจาก C และ import โดยตรงเข้าไปที่ P และหรือตรงกันข้ามได้ ฟังก์ชันใหม่นี้ทำให้มันง่ายขึ้นในการสร้างกลไลแบบ cross-chain ซึ่งน่าสนใจบน Primary Network และทำให้ง่ายกว่าเดิมสำหรับ integrators ที่ไม่สามารถทำการ index DAG ของ X-Chain เพื่อรองรับการ stake
Atomic Transaction Batching
เมื่อ Avalanche Network เปิดใช้งาน จำนวนของ Atomic Transactions ที่สามารถประมวลผลได้ในบล็อคใด ๆ (ทั้งบน C-Chain และ P-Chain) ถูกกำหนดไว้สูงสุดที่ 1 เมื่อมี transaction รอดำนเนินการมากกว่า 1 รายการใน mempool, ผู้ใช้งานอาจพบเจอกับความล่าช้าที่ไม่เคยมีมาก่อน เนื่องจากท้ายที่สุดแล้วพวกเขารอให้ธุรกรรมของตนนั้นถูกจัดลำดับความสำคัญ (เรียงตาม AVAX ที่ถูกเผาทำลาย) และที่ถูกนำมารวมอยู่ในบล็อค ซึ่งปริมาณงาน (throughput) นี้เพียงพอสำหรับปีแรกของการดำรงอยู่ของเครือข่าย แต่มันก็ได้เริ่มเกิดเป็นคอขวดขึ้น ตั้งแต่ช่วงเริ่มต้นของ Avalanche Rush มันเพิ่มขึ้นประมาณ 7–8 เท่า ในจำนวนของ Atomic Transactions บน Primary Network ในแต่ละวัน (มักจะมาในรูปแบบการเพิ่มขึ้นอย่างรวดเร็ว)
การเริ่มต้นใน AP5 นั้นบล็อคของ C-Chain และ P-Chain จะประกอบไปด้วยหลาย ๆ atomic transactions เพราะในช่วงเริ่มต้นการเปิดใชังานนั้นจะจำกัดอยู่ที่ประมาณ 10 Atomic Transactions ต่อ block แต่สามารถทำให้เพิ่มขึ้นในการอัพเกรดย่อยเมื่อมีการใช้งานเพิ่มขึ้น การรองรับ Atomic Transaction ในการเชื่อมต่อกับ P<>C นั้นจะปรับปรุง UX ในด้านการโอนย้าย cross-chain เป็นอย่างมาก
การปรับปรุง Algorithm ค่าธรรมเนียม C-Chain
ใน Apricot Phase 3 นั้น dynamic fees ถูกเพิ่มไปที่ C-Chain โดยการใช้ algorithm เรียกว่า “Moderato” (ซึ่งจะไปกำหนดเป้าหมายเฉพาะของเครือข่ายเมื่อเวลาผ่านไป) algorithm นี้ถูกกำหนดค่าพารามิเตอร์ไว้ที่ 10ล้าน หน่วยของการใช้ gas ทุก ๆ 10 วินาที ใน Apricot Phase 4 ได้มีการเปิดตัว Snowman++ และ Block-Based fees เพื่อลดจำนวนของความขัดแย้งบนเครือข่าย (เวลามีข้อมูลเข้ามาพร้อม ๆ กัน) และเพื่อกระตุ้นให้ validators เพื่อทำการรวบรวมชุดธุรกรรม (batch transactions) ลงใน blocks ให้น้อยลง อย่างไรก็ตาม มัน ทำให้เป้าหมายของปริมาณการใช้ gas และอัตราการผลิต blocks คงที่ พวกเราได้ทำการจำลองเป็นจำนวนหลายครั้งมาก เพื่อสร้างพารามิเตอร์ไว้กำหนดการใช้งานใน AP4 และ AP5 แต่มันโลกแห่งความเป็นจริงไม่ได้เป็นไปตามนั้นสักเท่าไหร่!
ถึงแม้ว่า AP4 นั้นจะประสบความสำเร็จเป็นอย่างมากในการลดความขัดแย้งของข้อมูลบน C-Chain พวกเราได้เห็นราคาค่า gas ต่ำสุดนั้นแกว่งตัวในอัตราสูงกว่าในการจำลองของพวกเรา จาก 1 นาที ไปยังนาทีต่อไป พวกเราได้สังเกตเห็นการเปลี่ยนแปลง 20–50% สิ่งนี้ส่งผลกระทบโดยตรงต่อประสบการณ์ของผู้ใช้งานจำนวนหนึ่งที่ธุรกรรมของพวกเขา “หยุดนิ่งไป” เนื่องจากค่า gas ขั้นต่ำนั้นกระโดดขึ้นไปจากตอนที่ธุรกรรมของพวกเขาเข้าไปใน mempool ผู้ใช้งานเหล่านั้นจะจำเป็นที่ต้องรอคอยให้ค่า gas ขั้นต่ำลดลงมาก่อนที่จะเห็นธุรกรรมของพวกเขาถูกนำไปรวมไว้ใน block (เว้นแต่พวกเขาจะ “เร่วความเร็ว” กับธุรกรรมด้วยการใช้งาน wallet ของพวกเขา)
การเริ่มต้นของ AP5 นั้น Moderato ในตอนนี้ถูกกำหนดค่าพารามิเตอร์ให้เสถียรมากขึ้น ~66% มีเป้าหมาย 15 ล้านหน่วยของการใช้งาน gas ต่อ 10 วินาที และมีการควบคุมการ batch ของ block ที่ดีกว่า (block น้อยลง บรรจุข้อมูลให้เต็มมากขึ้น) ความเสถียรของค่า gas ที่เพิ่มขึ้นควรทำให้โครงสร้างของธุรกรรมนั้นมีความน่าเชื่อถือมากขึ้น และการเพิ่ม block batching ควรไปเพิ่มจำนวนของธุรกรรมที่ถูกนำไปประมวลผลในราคาค่า gas ที่กำหนด ต่อจากนี้อีกหลายเดือน พวกเราจะปรับปรุงประสิทธิภาพ EVM อย่างต่อเนื่อง ที่ชี้ให้เห็นถึงเป้าหมายของปริมาณการใช้ gas เพิ่มขึ้นต่อ ๆ ไป
ลิงค์ที่เป็นประโยชน์
- โค้ดของการอัพเกรด Apricot ระยะที่ 5 สามารถดูได้จาก ที่นี่
- วิธีการอัพเกรด node ของฉัน ที่นี่
- หากคุณมีคำถามใด ๆ กรุณาติดต่อกับทีมนักพัฒนา Ava Labs ได้ ที่นี่
FAQ (คำถามพบบ่อย)
เราจะสามารถอัพเกรด node ของเราได้อย่างไร?
กระบวนการอัพเกรดเป็น AvalancheGo v1.7.0 นั้นเหมือนกับทุกๆ ครั้งที่ผ่านมา หากคุณสร้างมันเองแต่ต้น ให้ใช้คำสั่งเหมือนตอนสร้าง script ในครั้งแรก หากว่าคุณใช้ pre-compiled binaries ให้ทำการ invoke เหมือนที่ผ่านมา หากว่าคุณใช้ตัวติดตั้ง script ก็ให้ใช้งานเหมือนกับตอนแรกที่เคยทำ
เมื่อคุณเริ่มใช้งาน AvalancheGo v1.7.0 คุณไม่จำเป็นจะต้องทำอะไรเพิ่มเติมอีกแล้ว ข้อมูลเพิ่มเติมสำหรับการอัพเดท node สามารถดูเพิ่มได้จาก ที่นี่ และเพื่อเตือนความจำ สิ่งที่ควรถือปฏิบัติ คือการสำรองข้อมูล ของ staking key/certificate.
ฉันใช้ Metamask จำเป็นจะต้องเปลี่ยนแปลงอะไรหรือไม่?
ไม่จำเป็น
ฉันจำเป็นจะต้องอัพเกรด Node หรือไม่?
หากคุณไม่ทำการอัพเกรด validator ของคุณเป็น v1.7.0 ก่อนวันที่เปิดใช้งานบน Avalanche Mainnet (ซึ่งจะนำมาแชร์ในอีกไม่กี่วันนี้) node ของคุณจะถูกมองว่าไร้การเชื่อมต่อ (offline) และ node อื่น ๆ จะรายงาน node ของคุณว่ามี uptime ที่ต่ำลง ซึ่งอาจเป็นอันตรายต่อผลตอบแทนจากการ stake
จำเป็นต้องเปลี่ยนแปลงอะไรสำหรับ hardware หรือไม่?
ไม่จำเป็น
การอัพเดทนี้จะไปลด uptime ของ validator ของฉันไหม?
ไม่จำเป็น และเพื่อเป็นการเตือนความจำ คุณสามารถตรวจสอบ uptime โดยประมาณของ validator โดยการใช้ `info.uptime` API call:
ฉันคิดว่าบางอย่างไม่ถูกต้อง ฉันควรทำอย่างไร?
ขั้นแรก ให้แน่ใจว่าได้อ่าน documentation อย่างละเอียด และได้ทำการค้นหา FAQs แล้ว มันอาจจะมีคำตอบของคำถามคุณก็เป็นได้ หากไม่พบคำตอบ ให้ไปที่ Discord server ของเรา และค้นหาคำถามของคุณ หากว่าไม่มีใครเคยถาม กรุณาโพสมันลงในช่องทางที่เหมาะสมที่สุด
เกี่ยวกับ Avalanche
Avalanche เป็นแพลตฟอร์ม smart contracts ที่เร็วที่สุดในอุตสาหกรรมบล็อคเชน นับจากเวลาในการปิดธุรกรรม มี validators มากที่สุด คอยทำการตรวจสอบกิจกรรมต่าง ๆ ของ protocol แบบ proof-of-stake, Avalanche มีความเร็วสูง ประหยัด และเป็นมิตรต่อสิ่งแวดล้อม อีกทั้ง Application ใด ๆ ที่รองรับ smart contract ก็สามารถมีข้อได้เปรียบเหล่านี้เหนือคู่แข่งได้ เมื่อใช้งานอยู่บน Avalanche ไม่เชื่อใช่ไหม? ลอง Avalanche วันนี้เลยสิ
Telegram ประเทศไทย | Twitter ประเทศไทย | Website | Whitepapers | Twitter | Discord | GitHub | Documentation | Forum | Avalanche-X | Telegram | Facebook | LinkedIn | Reddit | YouTube