“ทำไม VPS ของฉันจึงช้า?” วิธีดึงประสิทธิภาพสำหรับ Solana ออกมาให้มากขึ้น

“ทำไม VPS ของฉันจึงช้า?” วิธีดึงประสิทธิภาพสำหรับ Solana ออกมาให้มากขึ้น

“ทำไม VPS ของฉันจึงช้า?” วิธีดึงประสิทธิภาพสำหรับ Solana ออกมาให้มากขึ้น
ที่ ERPC เรายินดีที่ได้ต้อนรับผู้ใช้ใหม่จำนวนมากทุกวัน และได้รับคำถามทางเทคนิคหลากหลายประเภท เมื่อเทรดเดอร์และโปรเจกต์ขยายตัวจนแอปพลิเคชันมีข้อกำหนดที่เข้มงวดมากขึ้นเรื่อย ๆ
แม้ตัวเราเองจะเป็นนักพัฒนา ไม่ใช่เทรดเดอร์ แต่ลักษณะของบริการ Solana RPC ทำให้เทรดเดอร์ความถี่สูงมักมอบความคิดเห็นอันทรงคุณค่าที่ช่วยชี้นำการพัฒนาของเรา เทรดเดอร์เหล่านี้ทำงานภายใต้สภาวะที่เข้มข้นทุกวัน จึงให้ข้อมูลเชิงลึกคุณภาพสูงซึ่งช่วยให้เราปรับปรุงบริการได้อย่างมาก และส่งผลให้เรากลายเป็นผู้ให้บริการผลิตภัณฑ์สตรีมข้อมูลแบบเรียลไทม์ที่เร็วที่สุดในระบบนิเวศ Solana
บทความนี้จัดทำขึ้นสำหรับผู้ที่ใช้ VPS แต่รู้สึกว่ายังไม่ได้ประสิทธิภาพตามต้องการ เราจะอธิบายขั้นตอนถัดไปเพื่อให้ได้สภาพแวดล้อมประสิทธิภาพสูงอย่างแท้จริง

ทำไมการเลือกเซิร์ฟเวอร์ Bare Metal จึงจำเป็นต่อความเร็วสูงสุด

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

VPS คือ Virtual Machine

ตัว “V” ใน VPS ย่อมาจาก “Virtual” เซิร์ฟเวอร์เสมือนจะแบ่งเซิร์ฟเวอร์จริงหนึ่งเครื่องออกเป็น instance เสมือนหลายชุด ตัวอย่างเช่น เซิร์ฟเวอร์จริงหนึ่งเครื่องอาจแบ่งเป็น VPS 100 instance หากอธิบายอย่างง่าย VPS แต่ละ instance อาจมีกำลังประมวลผลประมาณ 1/100 ของเซิร์ฟเวอร์เดิม สายเครือข่ายยังถูกใช้ร่วมกันระหว่างเซิร์ฟเวอร์เสมือนเหล่านี้ จึงอาจทำให้ประสิทธิภาพลดลงในช่วงที่มีการใช้งานสูงสุด (แม้ความเป็นจริงจะซับซ้อนกว่านี้เล็กน้อย ดังที่จะอธิบายต่อไป)
CPU สำหรับดาต้าเซ็นเตอร์สมัยใหม่ได้รับการออกแบบมาเพื่อลดการสูญเสียประสิทธิภาพจาก virtualization แต่ข้อจำกัดทางกายภาพยังคงมีอยู่

แนวคิดเรื่อง Overcommitment

ผู้ให้บริการ VPS มักจัดสรรทรัพยากรเกินกว่าจำนวนคอร์ CPU และ RAM ที่มีอยู่จริง แนวทางนี้เรียกว่า “overcommitment”
ตัวอย่างเช่น CPU ที่มี 64 คอร์และ 128 thread อาจดูเหมือนรองรับ VPS ที่มี 2 vCPU ได้ 64 instance แต่ในความเป็นจริง ผู้ให้บริการอาจเสนอ instance ขนาด 2 vCPU บนฮาร์ดแวร์ดังกล่าวถึง 512 instance หรือมากกว่า คุณอาจสงสัยว่า “สร้าง VPS 512 instance ได้อย่างไร ในเมื่อมีคอร์จริงเพียง 64 คอร์?” เหตุผลคือ VPS แต่ละ instance แทบไม่ทำงานเต็มกำลังสูงสุดพร้อมกัน ผู้ให้บริการจึงอาศัยความผันแปรนี้ในการจัดสรรทรัพยากร
ระดับของ overcommitment ส่งผลต่อประสิทธิภาพอย่างมาก และผู้ให้บริการคลาวด์บางรายใช้อัตรา overcommitment แปดเท่าหรือสูงกว่าเป็นประจำ
นอกจากนี้ ทรัพยากรเครือข่ายมักมีจำกัด Virtual Machine หลายพันเครื่องอาจใช้สายเครือข่ายจริงร่วมกันเพียงไม่กี่เส้น ทำให้การรับประกัน bandwidth ที่เสถียรเป็นเรื่องยากและต้องใช้ทรัพยากรเพิ่มเติมในการทำ load balancing ซึ่งท้ายที่สุดเพิ่ม latency อย่างมาก
ที่ ERPC เราจำกัดระดับ overcommitment ไว้อย่างมากเพื่อลดปัญหาด้านประสิทธิภาพเหล่านี้

คุณภาพของ CPU, RAM และ SSD ที่ใช้

โดยทั่วไปบริการ VPS ให้ความสำคัญกับอัตราส่วนความคุ้มค่ามากกว่าประสิทธิภาพเพียงอย่างเดียว จึงแทบไม่ใช้ CPU, RAM และ SSD รุ่นล่าสุด
อย่างไรก็ตาม ERPC ตระหนักว่าลูกค้าของเราให้ความสำคัญกับประสิทธิภาพเหนือสิ่งอื่นใด ดังนั้น ขณะที่ยังรักษาสมดุลด้านต้นทุน เราจึงนำ CPU, RAM และ SSD รุ่นล่าสุดที่มีคุณภาพสูงมาใช้อย่างจริงจัง หากต้องการประสิทธิภาพใกล้เคียงกันจากบริการคลาวด์ทั่วไปจะมีค่าใช้จ่ายสูงกว่าราวห้าเท่า และด้วยข้อจำกัดโดยธรรมชาติ บริการเหล่านั้นก็อาจยังให้ประสิทธิภาพได้ไม่เทียบเท่า

การกำหนดค่า RAID และผลกระทบต่อประสิทธิภาพ

เซิร์ฟเวอร์ส่วนใหญ่ใช้การกำหนดค่า RAID เพื่อป้องกันข้อมูลสูญหายด้วยการกระจายข้อมูลไปยังดิสก์หลายลูก อย่างไรก็ตาม การตั้งค่านี้ต้องแลกกับประสิทธิภาพที่ลดลง
สำหรับแอปพลิเคชันบล็อกเชน โดยเฉพาะ Solana ข้อมูลเปิดเผยต่อสาธารณะ และข้อมูลสำคัญถูกทำสำเนาไว้ในหลายโหนดจากโครงสร้างระบบแบบกระจายศูนย์ ดังนั้น จึงมักแนะนำให้ให้ความสำคัญกับประสิทธิภาพมากกว่าความซ้ำซ้อนของข้อมูล (“No RAID”) ข้อกำหนด validator อย่างเป็นทางการของ Solana ก็แนะนำการตั้งค่าแบบ No RAID และมีรายงานอยู่บ่อยครั้งว่าการกำหนดค่า RAID เป็นสาเหตุของปัญหาด้านประสิทธิภาพ
โดยทั่วไป ERPC แนะนำ No RAID สำหรับลูกค้าที่ให้ความสำคัญกับประสิทธิภาพ อย่างไรก็ตาม เราสามารถจัดเตรียมการกำหนดค่า RAID สำหรับแผน Dedicated Node ตามข้อกำหนดเฉพาะของลูกค้าได้ โปรดติดต่อเราเพื่อปรึกษาความต้องการของคุณได้ทุกเมื่อ

ความใกล้กับโหนด Solana

ผู้ให้บริการ VPS และคลาวด์ทั่วไปไม่ได้ให้บริการ Solana RPC Endpoint ซึ่งหมายความว่าข้อมูลต้องเดินทางผ่านเส้นทางอินเทอร์เน็ตภายนอกเสมอ ดังนั้น latency จึงขึ้นอยู่กับระยะทางกายภาพและสภาพเครือข่ายอย่างมาก
ERPC บริหารโครงสร้างพื้นฐานทั้งหมดภายในเครือข่ายของเราเอง การสื่อสารระหว่าง Dedicated VPS กับ Dedicated Solana Endpoint จึงไม่ต้องวิ่งผ่านอินเทอร์เน็ตภายนอก การตั้งค่านี้ทำให้ latency ในการสื่อสารภายในแทบเป็นศูนย์ โดยมีค่า ping ต่ำสุดประมาณ 0.1 ms

ข้อจำกัดและค่าใช้จ่ายของเครือข่าย

ผู้ให้บริการ VPS และคลาวด์จำนวนมากจำกัด network bandwidth ซึ่งอาจทำให้มีค่าใช้จ่ายสูงเมื่อใช้ข้อมูลปริมาณมาก ประสบการณ์ที่สั่งสมจากการทำงานกับผู้ให้บริการ public cloud รายใหญ่ช่วยให้เราเข้าใจปัญหาด้านประสิทธิภาพและราคาเหล่านี้อย่างลึกซึ้ง
โครงสร้างพื้นฐานของ ERPC ออกแบบมาโดยเฉพาะเพื่อรองรับความต้องการเครือข่ายมหาศาลของ validator Solana ซึ่งอยู่ที่ประมาณ 150 TB ต่อโหนดต่อเดือน เราใช้ประสบการณ์นี้พัฒนาแพลตฟอร์ม VPS ประสิทธิภาพสูงที่เป็นกรรมสิทธิ์ของเราเอง
เรามั่นใจว่าสามารถมอบประสิทธิภาพที่โดดเด่นในระดับราคาของเรา รับคำสั่งซื้อผ่าน Discord อย่างเป็นทางการของ Validators DAO
ERPC VPS
เรายังคงมุ่งมั่นพัฒนาแพลตฟอร์มนวัตกรรมอย่างต่อเนื่อง ขอขอบคุณสำหรับการสนับสนุนเสมอมา