การกระจายโหลดระหว่างเซิร์ฟเวอร์
ดูวิธีกระจายทราฟฟิกเพื่อให้บริการยังตอบสนองได้ดี
การกระจายโหลดระหว่างเซิร์ฟเวอร์ เป็นบทเรียน Cloud & IT Cert Prep ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cloud & IT Cert Prep และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน
ความหมายของการกระจายภาระงาน
การกระจายภาระงานคือการกระจายการรับส่งข้อมูลขาเข้าไปยังเซิร์ฟเวอร์หลายเครื่อง เพื่อไม่ให้เซิร์ฟเวอร์เครื่องใดเครื่องหนึ่งทำงานหนักเกินไป แทนที่จะปล่อยให้เซิร์ฟเวอร์เครื่องเดียวทำงานจนช้าลง เซิร์ฟเวอร์หลายเครื่องจะแบ่งงานกัน ทำให้ประสิทธิภาพและความน่าเชื่อถือดีขึ้น อุปกรณ์หรือบริการที่เรียกว่าตัวกระจายภาระงานจะอยู่ด้านหน้าเซิร์ฟเวอร์และกระจายคำขอไปยังเซิร์ฟเวอร์เหล่านั้น ทำให้กลุ่มเซิร์ฟเวอร์ดูเสมือนเป็นบริการที่รวดเร็วเพียงหนึ่งเดียว
เหตุใดจึงต้องกระจายภาระงาน
การกระจายภาระงานให้ประโยชน์สำคัญสองประการ ได้แก่ ความสามารถในการขยายระบบ และ ความพร้อมใช้งาน การเพิ่มเซิร์ฟเวอร์ไว้หลังตัวกระจายภาระงานจะเพิ่มความสามารถในการรองรับการเติบโต และหากเซิร์ฟเวอร์เครื่องหนึ่งขัดข้อง ตัวกระจายภาระงานก็จะหยุดส่งทราฟฟิกไปยังเครื่องนั้น ทำให้ผู้ใช้ยังคงได้รับบริการ ระบบจึงเปลี่ยนจากเซิร์ฟเวอร์เดี่ยวที่เปราะบางเป็นกลุ่มเซิร์ฟเวอร์ที่ทนทานและขยายได้
บทบาทของตัวกระจายภาระงาน
ตัวกระจายภาระงานรับคำขอจากไคลเอ็นต์ผ่าน IP เสมือน (VIP) ที่ส่วนหน้าเพียงจุดเดียว แล้วส่งต่อคำขอแต่ละรายการไปยังเซิร์ฟเวอร์ส่วนหลังเครื่องใดเครื่องหนึ่ง ไคลเอ็นต์จะติดต่อกับ VIP เท่านั้น โดยไม่ทราบว่ามีเซิร์ฟเวอร์อยู่เบื้องหลังกี่เครื่อง ตัวกระจายภาระงานอาจเป็นอุปกรณ์ฮาร์ดแวร์เฉพาะหรือซอฟต์แวร์ และโดยตัวมันเองก็มักมีการทำให้ซ้ำซ้อนเพื่อป้องกันไม่ให้กลายเป็น SPOF
อัลกอริทึมการกระจาย
ตัวกระจายภาระงานใช้อัลกอริทึมเพื่อเลือกเซิร์ฟเวอร์ รอบวนจะสลับเลือกเซิร์ฟเวอร์ตามลำดับ จำนวนการเชื่อมต่อน้อยที่สุดจะเลือกเซิร์ฟเวอร์ที่มีเซสชันใช้งานอยู่น้อยที่สุด ส่วนวิธีแบบ ถ่วงน้ำหนักจะให้ความสำคัญกับเซิร์ฟเวอร์ที่มีประสิทธิภาพสูงกว่า การเลือกอัลกอริทึมที่เหมาะสมช่วยจับคู่ทราฟฟิกกับความสามารถของเซิร์ฟเวอร์ ทำให้กลุ่มเซิร์ฟเวอร์รับภาระได้สมดุลและมีประสิทธิภาพ
การตรวจสอบสภาพเซิร์ฟเวอร์
ตัวกระจายภาระงานจะเรียกใช้ การตรวจสอบสภาพเซิร์ฟเวอร์อย่างต่อเนื่อง โดยตรวจสอบแต่ละเซิร์ฟเวอร์เพื่อยืนยันว่าเซิร์ฟเวอร์ยังตอบสนองอยู่ หากเซิร์ฟเวอร์ไม่ผ่านการตรวจสอบ ตัวกระจายภาระงานจะหยุดส่งคำขอไปยังเซิร์ฟเวอร์นั้นจนกว่าจะกลับมาทำงานได้ นี่คือสิ่งที่ทำให้การกระจายภาระงานเป็นเครื่องมือด้านความพร้อมใช้งานสูงด้วย เซิร์ฟเวอร์ที่ขัดข้องจะถูกนำออกจากการหมุนเวียนโดยอัตโนมัติ ผู้ใช้จึงไม่ถูกส่งไปยังเซิร์ฟเวอร์ที่หยุดทำงาน
การคงอยู่ของเซสชัน
แอปพลิเคชันบางประเภทต้องให้คำขอของผู้ใช้ไปยัง เซิร์ฟเวอร์เดิมต่อไป เช่น เพื่อรักษาตะกร้าสินค้าที่เก็บอยู่ในหน่วยความจำของเซิร์ฟเวอร์นั้น การคงอยู่ของเซสชัน (หรือ "เซสชันแบบยึดติด") จะผูกไคลเอ็นต์ไว้กับเซิร์ฟเวอร์เครื่องหนึ่งตลอดช่วงเวลาของเซสชัน หากไม่มีสิ่งนี้ ผู้ใช้อาจถูกสลับไปมาระหว่างเซิร์ฟเวอร์และสูญเสียสถานะระหว่างทำงาน
เลเยอร์ 4 เทียบกับเลเยอร์ 7
ตัวกระจายภาระงานทำงานที่เลเยอร์ต่าง ๆ กัน ตัวกระจายภาระงาน เลเยอร์ 4 กระจายงานตาม IP และพอร์ต TCP/UDP จึงทำงานได้รวดเร็วแต่ไม่รับรู้เนื้อหา ส่วนตัวกระจายภาระงาน เลเยอร์ 7 จะอ่านข้อมูลของแอปพลิเคชัน เช่น URL ของ HTTP ทำให้กำหนดเส้นทางได้อย่างชาญฉลาด ตัวอย่างเช่น ส่ง /images ไปยังกลุ่มหนึ่ง และ /api ไปยังอีกกลุ่มหนึ่ง เลเยอร์ 7 มีความสามารถมากกว่า แต่ต้องประมวลผลงานต่อคำขอมากกว่า
การถ่ายโอนภาระ SSL/TLS
ตัวกระจายภาระงานมักทำ การถ่ายโอนภาระ SSL/TLS (การยุติการเชื่อมต่อ) โดยจัดการงานเข้ารหัสให้ไคลเอ็นต์และถอดรหัสทราฟฟิก เพื่อไม่ให้เซิร์ฟเวอร์ส่วนหลังต้องทำงานนี้ ช่วยคืนทรัพยากร CPU ของเซิร์ฟเวอร์ให้แอปพลิเคชัน และรวมการจัดการใบรับรองไว้ที่ตัวกระจายภาระงาน นี่เป็นเหตุผลทั่วไปที่องค์กรวางตัวกระจายภาระงานเลเยอร์ 7 อัจฉริยะไว้หน้าเซิร์ฟเวอร์เว็บ
ตัวกระจายภาระงานแบบซ้ำซ้อน
หากทราฟฟิกทั้งหมดไหลผ่านตัวกระจายภาระงานเพียงเครื่องเดียว ตัวกระจายภาระงานนั้นจะกลายเป็น จุดเสียหายจุดเดียว ดังนั้นจึงมักติดตั้งตัวกระจายภาระงานเป็น คู่ ในรูปแบบทำงานพร้อมกันทั้งคู่หรือทำงานสลับกัน พร้อมมีกลไกเปลี่ยนไปใช้อีกเครื่องเมื่อเครื่องหนึ่งขัดข้อง เครื่องมือที่ให้ความพร้อมใช้งานต้องมีความพร้อมใช้งานสูงด้วย ตัวกระจายภาระงานแบบคู่ซ้ำซ้อนช่วยให้ส่วนหน้าทั้งหมดทนทาน
การกระจายภาระงานบนคลาวด์
ผู้ให้บริการคลาวด์นำเสนอการกระจายภาระงานในรูปแบบบริการที่มีการจัดการและปรับขนาดตามความต้องการโดยอัตโนมัติ เมื่อทำงานร่วมกับกลุ่มเซิร์ฟเวอร์ที่ปรับขนาดอัตโนมัติ คลาวด์สามารถเพิ่มและนำเซิร์ฟเวอร์ออกจากกลุ่มหลังตัวกระจายภาระงานตามปริมาณงาน แล้วกระจายทราฟฟิกไปยังเซิร์ฟเวอร์ที่กำลังทำงานอยู่ โมเดลแบบยืดหยุ่นนี้เป็นเหตุผลสำคัญที่ทำให้แอปพลิเคชันบนคลาวด์รองรับทราฟฟิกปริมาณมหาศาลที่เปลี่ยนแปลงได้อย่างราบรื่น
การกระจายภาระงานและ HA ร่วมกัน
การกระจายภาระงานและความซ้ำซ้อนทำงานร่วมกันเพื่อประสิทธิภาพและความพร้อมใช้งานสูง ความซ้ำซ้อนจัดเตรียมความสามารถและส่วนประกอบสำรอง ส่วนการกระจายภาระงานจะใช้ความสามารถนั้นโดยกระจายงานและกำหนดเส้นทางหลบเลี่ยงความขัดข้องแบบเรียลไทม์ ทั้งสองสิ่งช่วยให้บริการยังคงรวดเร็วเมื่อมีภาระงานสูง และยังคงทำงานได้เมื่อเซิร์ฟเวอร์บางเครื่องขัดข้อง ซึ่งเป็นรากฐานสำคัญของการออกแบบระบบที่ทนทาน
ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความรู้เกี่ยวกับการกระจายภาระงานของคุณ
สรุปทบทวน
คุณได้เรียนรู้เรื่องการกระจายภาระงานแล้ว ประเด็นสำคัญ:
- กระจายทราฟฟิกไปยังเซิร์ฟเวอร์หลายเครื่องเพื่อความสามารถในการขยายระบบและความพร้อมใช้งาน
- ไคลเอ็นต์เข้าถึง IP เสมือน แล้วตัวกระจายภาระงานจะเลือกเซิร์ฟเวอร์ส่วนหลัง
- อัลกอริทึมประกอบด้วยรอบวน จำนวนการเชื่อมต่อน้อยที่สุด และแบบถ่วงน้ำหนัก
- การตรวจสอบสภาพเซิร์ฟเวอร์จะนำเซิร์ฟเวอร์ที่ขัดข้องออก ส่วน การคงอยู่จะทำให้เซสชันยึดติดกับเซิร์ฟเวอร์เดิม
- เลเยอร์ 4 เทียบกับเลเยอร์ 7 และตัวกระจายภาระงานเองก็มีการทำให้ซ้ำซ้อน
คำถามที่พบบ่อย
บทเรียน “การกระจายโหลดระหว่างเซิร์ฟเวอร์” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การกระจายโหลดระหว่างเซิร์ฟเวอร์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cloud & IT Cert Prep ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การกระจายโหลดระหว่างเซิร์ฟเวอร์”
ดูวิธีกระจายทราฟฟิกเพื่อให้บริการยังตอบสนองได้ดี คุณปฏิบัติ Cloud & IT Cert Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cloud & IT Cert Prep หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cloud & IT Cert Prep บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “การกระจายโหลดระหว่างเซิร์ฟเวอร์” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Cloud & IT Cert Prep นี้ได้ไหม
ได้ บทเรียน Cloud & IT Cert Prep ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การออกแบบความซ้ำซ้อนและการสลับไปใช้ระบบสำรอง
- การกระจายโหลดระหว่างเซิร์ฟเวอร์
- คุณภาพการให้บริการสำหรับทราฟฟิกสำคัญ
- การสรุปภาพรวมเพื่อเตรียมสอบ