ขีดจำกัดแก๊สและค่าธรรมเนียม
พื้นฐาน EIP-1559
ขีดจำกัดแก๊สและค่าธรรมเนียม เป็นบทเรียน Web3 & DApp Development Fundamentals ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Web3 & DApp Development Fundamentals และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Web3 & DApp Development Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
ควบคุมจำนวนเงินที่คุณใช้
คุณเป็นผู้ตัดสินใจว่าจะอนุญาตให้คำนวณได้มากเพียงใดและจะจ่ายเท่าใด ตัวควบคุมสำคัญสองอย่างคือขีดจำกัดแก๊สและพารามิเตอร์ค่าธรรมเนียม
บทเรียนนี้ครอบคลุมทั้งสองเรื่อง รวมถึงรูปแบบค่าธรรมเนียม EIP-1559
ขีดจำกัดแก๊ส
ขีดจำกัดแก๊สคือปริมาณแก๊สสูงสุดที่คุณอนุญาตให้ธุรกรรมใช้ได้
การโอน ETH แบบง่ายต้องใช้ 21000 ส่วนการเรียกใช้สัญญาที่ซับซ้อนต้องใช้มากกว่านั้น หากตั้งค่าต่ำเกินไป ธุรกรรมจะย้อนกลับเนื่องจากแก๊สหมด
simple transfer: gasLimit = 21000
token transfer: gasLimit ~ 65000
complex DeFi swap: gasLimit ~ 200000+แก๊สหมด
หากการประมวลผลใช้แก๊สมากกว่าขีดจำกัด ธุรกรรมจะหยุดและย้อนกลับการเปลี่ยนแปลงสถานะทั้งหมด
สิ่งสำคัญคือ คุณยังต้องจ่ายค่าแก๊สที่ถูกใช้ไปแล้ว — แก๊สหมดไม่ได้ทำให้คุณได้รับเงินคืน
ขีดจำกัดแก๊สของบล็อก
แต่ละบล็อกยังมีขีดจำกัดแก๊สของบล็อก ซึ่งเป็นปริมาณแก๊สรวมที่ธุรกรรมทั้งหมดในบล็อกนั้นอาจใช้ได้
ขีดจำกัดนี้จำกัดปริมาณการคำนวณที่ใส่ในหนึ่งบล็อกได้ ทำให้การประมวลผลบล็อกทั่วเครือข่ายรวดเร็ว
ก่อน EIP-1559
เดิมที ค่าธรรมเนียมทำงานเหมือนการประมูลแบบไม่เปิดเผยข้อมูล คุณเสนอราคาค่าแก๊ส แล้วผู้ตรวจสอบความถูกต้องเลือกข้อเสนอที่สูงที่สุด
วิธีนี้ทำให้ผู้ใช้จ่ายเงินเกินจริงและค่าธรรมเนียมไม่แน่นอนในช่วงเครือข่ายหนาแน่น EIP-1559 จึงปรับปรุงระบบนี้ในปี 2021
EIP-1559: ค่าธรรมเนียมพื้นฐาน
EIP-1559 เพิ่มค่าธรรมเนียมพื้นฐาน ซึ่งเป็นค่าธรรมเนียมต่อบล็อกที่โพรโทคอลกำหนดโดยอัตโนมัติตามความต้องการของเครือข่าย
ค่าธรรมเนียมพื้นฐานจะเพิ่มขึ้นเมื่อบล็อกเต็ม และลดลงเมื่อบล็อกว่าง ทำให้ค่าธรรมเนียมคาดการณ์ได้ง่ายขึ้น
block full -> base fee rises
block empty -> base fee falls
target: blocks ~50% fullการเผาค่าธรรมเนียมพื้นฐาน
ค่าธรรมเนียมพื้นฐานจะถูกเผา — ทำลายอย่างถาวรแทนที่จะจ่ายให้ผู้ตรวจสอบความถูกต้อง
วิธีนี้ลดแรงจูงใจที่ผู้ตรวจสอบความถูกต้องจะทำให้ค่าธรรมเนียมสูงขึ้นโดยเจตนา และทำให้ ETH มีภาวะเงินฝืดเล็กน้อยเมื่อมีการใช้งานสูง
ค่าธรรมเนียมลำดับความสำคัญ (ทิป)
เพื่อสร้างแรงจูงใจให้ผู้ตรวจสอบความถูกต้อง คุณจะเพิ่มค่าธรรมเนียมลำดับความสำคัญหรือทิปไว้เหนือค่าธรรมเนียมพื้นฐาน
ทิปที่สูงขึ้นจะจูงใจให้ผู้ตรวจสอบความถูกต้องนำธุรกรรมของคุณเข้าไปในบล็อกเร็วขึ้นในช่วงที่เครือข่ายหนาแน่น
totalFee = base fee + priority fee
base fee -> burned
priority fee (tip) -> validatorค่าธรรมเนียมสูงสุดต่อหน่วยแก๊ส
คุณกำหนดmaxFeePerGas ซึ่งเป็นจำนวนเงินรวมสูงสุดที่คุณจะจ่ายต่อหน่วยแก๊ส และยังกำหนดmaxPriorityFeePerGasสำหรับทิปด้วย
หากค่าธรรมเนียมพื้นฐานต่ำกว่าค่าสูงสุดของคุณ คุณจะได้รับส่วนต่างคืน และจะไม่มีทางจ่ายเกินเพดานที่กำหนด
maxFeePerGas = 50 gwei
maxPriorityFeePerGas = 2 gwei
actual base fee = 30 gwei
paid = 30 + 2 = 32 gwei (refunded 18)การประมาณแก๊ส
กระเป๋าเงินและเครื่องมือจะเรียกใช้ eth_estimateGas เพื่อคาดการณ์ว่าธุรกรรมต้องใช้แก๊สมากเพียงใด
การประมาณที่ดีช่วยหลีกเลี่ยงความล้มเหลวจากแก๊สหมด โดยไม่กันแก๊สไว้มากเกินความจำเป็น
สรุปภาพรวม
ขีดจำกัดแก๊สจำกัดปริมาณการคำนวณ ส่วน EIP-1559 แบ่งราคาออกเป็นค่าธรรมเนียมพื้นฐานที่ถูกเผาและทิปของผู้ตรวจสอบความถูกต้อง
maxFeePerGasช่วยป้องกันการจ่ายเกินจริง พร้อมรับประกันว่าธุรกรรมจะถูกนำเข้าไปในบล็อก
ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความรู้ของคุณเกี่ยวกับ EIP-1559
ทบทวน: ขีดจำกัดแก๊สและค่าธรรมเนียม
คุณได้เรียนรู้ว่า:
- ขีดจำกัดแก๊สจำกัดปริมาณแก๊สที่ธุรกรรมอาจใช้
- เมื่อแก๊สหมด ธุรกรรมจะย้อนกลับแต่คุณยังคงต้องเสียค่าใช้จ่าย
- EIP-1559 ใช้ค่าธรรมเนียมพื้นฐานที่ถูกเผา บวกกับทิปของผู้ตรวจสอบความถูกต้อง
- maxFeePerGasจำกัดต้นทุนรวมต่อหน่วยของคุณ
ถัดไป: นอนซ์และลำดับ
เรียนรู้ Web3 & DApp Development Fundamentals ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 29
- บทเรียน
- 105
คำถามที่พบบ่อย
บทเรียน “ขีดจำกัดแก๊สและค่าธรรมเนียม” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ขีดจำกัดแก๊สและค่าธรรมเนียม” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Web3 & DApp Development Fundamentals ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Web3 & DApp Development Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ขีดจำกัดแก๊สและค่าธรรมเนียม”
พื้นฐาน EIP-1559 คุณปฏิบัติ Web3 & DApp Development Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Web3 & DApp Development Fundamentals หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Web3 & DApp Development Fundamentals บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “ขีดจำกัดแก๊สและค่าธรรมเนียม” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Web3 & DApp Development Fundamentals นี้ได้ไหม
ได้ บทเรียน Web3 & DApp Development Fundamentals ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- แก๊สคืออะไร
- วงจรชีวิตธุรกรรม
- ขีดจำกัดแก๊สและค่าธรรมเนียม
- นอนซ์และลำดับ