แก๊สคืออะไร
การจ่ายค่าการคำนวณ
แก๊สคืออะไร เป็นบทเรียน Web3 & DApp Development Fundamentals ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Web3 & DApp Development Fundamentals และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Web3 & DApp Development Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดการคำนวณจึงมีค่าใช้จ่าย
การดำเนินการทุกอย่างบน Ethereum ทำงานบนโหนดนับพันทั่วโลก เพื่อป้องกันการใช้งานในทางที่ผิดและชำระค่าการทำงานนี้ เครือข่ายจึงเรียกเก็บแก๊ส
แก๊สคือหน่วยที่ใช้วัดความพยายามในการคำนวณ
แก๊สคืออะไร
แก๊สคือหน่วยวัดปริมาณงานที่ต้องใช้เพื่อดำเนินการบน EVM
การส่ง ETH การเรียกใช้สัญญา หรือการจัดเก็บข้อมูล ล้วนใช้แก๊สในปริมาณเฉพาะตามความซับซ้อนของการดำเนินการ
หน่วยแก๊สต่อการดำเนินการ
การดำเนินการแต่ละประเภทมีค่าแก๊สแตกต่างกัน การดำเนินการง่าย ๆ มีราคาถูก ส่วนการจัดเก็บข้อมูลมีราคาแพง
ADD -> 3 gas
MUL -> 5 gas
SLOAD -> 2100 gas (read storage)
SSTORE -> 20000 gas (new storage)
base tx -> 21000 gasแก๊สเทียบกับราคาแก๊ส
ควรแยกแนวคิดสองอย่างนี้ออกจากกัน:
- แก๊สที่ใช้ — ปริมาณการคำนวณที่ธุรกรรมต้องใช้ (หน่วย)
- ราคาแก๊ส — จำนวนเงินที่จ่ายต่อหน่วย โดยวัดเป็น gwei
ค่าธรรมเนียมทั้งหมด = แก๊สที่ใช้คูณด้วยราคาแก๊ส
Gwei: หน่วยค่าธรรมเนียม
ราคาค่าแก๊สระบุเป็น กเวย์ ซึ่งเป็นเศษส่วนขนาดเล็กมากของ ETH โดยหนึ่งกเวย์เท่ากับหนึ่งในพันล้านของ ETH (10^-9)
การระบุราคาเป็นกเวย์ช่วยให้ตัวเลขอ่านง่าย แทนการเขียนเลขศูนย์นำหน้าจำนวนมาก
1 ETH = 1,000,000,000 gwei
1 gwei = 1,000,000,000 wei
1 wei = smallest unit of ETHการคำนวณค่าธรรมเนียม
ค่าธรรมเนียมธุรกรรมคำนวณได้ไม่ซับซ้อน เพียงนำปริมาณแก๊สที่ธุรกรรมของคุณใช้ คูณด้วยราคาที่คุณจ่ายต่อหน่วยแก๊ส
gasUsed = 21000
gasPrice = 20 gwei
fee = 21000 * 20 = 420000 gwei
= 0.00042 ETHเหตุผลที่มีแก๊ส
แก๊สมีจุดประสงค์สองประการ:
- การป้องกันสแปม — ผู้โจมตีไม่สามารถส่งคำขอจำนวนมหาศาลไปยังเครือข่ายได้ฟรี
- การกำหนดราคาทรัพยากร — การคำนวณที่ใช้ทรัพยากรมากมีค่าใช้จ่ายสูงกว่า จึงส่งเสริมให้เขียนโค้ดอย่างมีประสิทธิภาพ
วิธีแก้ปัญหาการหยุดทำงาน
แก๊สยังช่วยหยุดลูปไม่รู้จบ แต่ละขั้นตอนใช้แก๊ส และเมื่อธุรกรรมใช้แก๊สหมด การประมวลผลจะหยุดลง
สิ่งนี้รับประกันว่า EVM จะสิ้นสุดการทำงานเสมอ — คุณไม่สามารถทำให้เครือข่ายค้างด้วยลูปที่ทำงานไม่หยุดได้
while (true) {
// each iteration burns gas
}
// eventually: OUT OF GAS -> revertsใครได้รับค่าธรรมเนียม
ค่าธรรมเนียมแก๊สเป็นค่าตอบแทนแก่ผู้ตรวจสอบความถูกต้องที่นำธุรกรรมของคุณเข้าไปในบล็อกและประมวลผลธุรกรรมนั้น
ภายใต้ EIP-1559 ค่าธรรมเนียมส่วนหนึ่งจะถูกเผา (ทำลาย) และทิปจำนวนเล็กน้อยจะมอบให้ผู้ตรวจสอบความถูกต้อง เราจะอธิบายเรื่องนี้ในบทเรียนถัดไป
แก๊สและสัญญาอัจฉริยะ
การเรียกใช้สัญญาอัจฉริยะที่ซับซ้อนใช้แก๊สมากกว่าการโอนแบบง่าย เนื่องจากต้องดำเนินการหลายขั้นตอน
โค้ดสัญญาที่มีประสิทธิภาพช่วยลดค่าใช้จ่ายของผู้ใช้โดยตรง — การปรับให้ใช้แก๊สน้อยลงเป็นทักษะสำคัญสำหรับนักพัฒนา Solidity
สรุปภาพรวม
แก๊สใช้วัดงานด้านการคำนวณ ส่วนราคาค่าแก๊ส (ในหน่วยกเวย์) ใช้กำหนดต้นทุนต่อหน่วย ผลคูณของทั้งสองค่าคือค่าธรรมเนียมของคุณ
แก๊สช่วยป้องกันสแปม กำหนดราคาทรัพยากรอย่างเป็นธรรม และรับประกันว่าการประมวลผลจะสิ้นสุดลงเสมอ
ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความเข้าใจของคุณเกี่ยวกับแก๊ส
ทบทวน: แก๊สคืออะไร
คุณได้เรียนรู้ว่า:
- แก๊สใช้วัดงานด้านการคำนวณบน EVM
- ราคาค่าแก๊สจ่ายต่อหน่วยในหน่วยกเวย์
- ค่าธรรมเนียม = แก๊สที่ใช้ คูณด้วยราคาค่าแก๊ส
- แก๊สช่วยป้องกันสแปมและหยุดลูปไม่รู้จบ
ถัดไป: วงจรชีวิตทั้งหมดของธุรกรรม
เรียนรู้ 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 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “แก๊สคืออะไร”
การจ่ายค่าการคำนวณ คุณปฏิบัติ Web3 & DApp Development Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Web3 & DApp Development Fundamentals หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Web3 & DApp Development Fundamentals บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “แก๊สคืออะไร” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Web3 & DApp Development Fundamentals นี้ได้ไหม
ได้ บทเรียน Web3 & DApp Development Fundamentals ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ