ข้ามไปเนื้อหาหลัก
เครือข่าย· ~14 นาที· อัปเดตล่าสุด

ALB vs NLB vs GLB

โหลดบาลานเซอร์ 3 ประเภทหลัก ต่างกันยังไง

ประเภทของพนักงานโบกรถ

ALB (พนักงานส่งจดหมายฉลาด) เปิดอ่านซองจดหมายดูว่าจ่าหน้าซองหาแผนกไหน แล้วค่อยเลือกเส้นทางส่ง. NLB (พนักงานโบกรถไฟ) ไม่สนใจว่าข้างในจดหมายเขียนว่าอะไร รู้แค่ว่ามาจาก IP ไหน ส่งไปท่อไหน ไวทะลุนรก! GLB (ด่านตรวจความมั่นคง) กรองตรวจอาวุธทุกคันก่อนปล่อยเข้าสู่ตัวเมือง

AWS มีเครื่องมือกระจายโหลดให้เราเลือกใช้ตามเลเยอร์ (OSI Model) และเป้าหมายการทำงานที่แตกต่างกัน:

  • ALB (Application Load Balancer - กระจายโหลดระดับแอปพลิเคชัน) — ทำงานที่ Layer 7 (ระดับ HTTP/HTTPS) มันฉลาดถึงขั้นแกะอ่าน URL ของคำขอได้ เช่น ถ้าลูกค้าขอเปิดเว็บ URL .../video มันจะโยนไปให้เซิร์ฟเวอร์แก๊งทำวิดีโอ แต่ถ้า URL .../orders ก็โยนไปแก๊งจัดการออเดอร์ (Path-based routing)
  • NLB (Network Load Balancer - กระจายโหลดระดับเครือข่าย) — ทำงานที่ Layer 4 (ระดับ TCP/UDP) มันจะไม่อ่านเนื้อหาข้างในเลย แค่รับ IP ส่งต่อ IP ล้วนๆ ทำให้มันรองรับคำขอระดับ ล้านคำขอต่อวินาที (Millions of requests/sec) โคตรเร็วและมีความหน่วงต่ำสุดๆ
  • GLB (Gateway Load Balancer - กระจายโหลดระดับเกตเวย์) — ทำงานระดับ Layer 3/4 ออกแบบมาเฉพาะเพื่อใช้แทรก "อุปกรณ์ไฟร์วอลล์ (Third-party Firewall/IDS/IPS)" เป็นด่านตรวจเข้มก่อนปล่อยข้อมูลเข้าสู่เครือข่ายหลัก

สรุป Key Takeaways

  • ALB = Layer 7 (HTTP/HTTPS) ฉลาด เลี้ยวคิวตาม URL (path-based routing) ได้
  • NLB = Layer 4 (TCP/UDP) ไม่อ่านข้างใน เน้นความเร็วสูงสุด (ล้าน request/วิ)
  • GLB = Layer 3/4 ใช้ดักทราฟฟิกให้วิ่งผ่านอุปกรณ์ third-party firewall ตรวจก่อน

คำถามที่พบบ่อย

จะเลือก ALB หรือ NLB ดี ตัดสินใจจากอะไร

ถามคำถามเดียว: แอปคุยกันด้วย HTTP/HTTPS ไหม ถ้าใช่และอยากได้ routing ฉลาดๆ ตาม path หรือ hostname ให้ใช้ ALB แต่ถ้าเป็น TCP/UDP ล้วนๆ ต้องการ latency ต่ำสุดๆ หรือต้องการ static IP ให้ใช้ NLB

ALB ให้ Static IP ได้ไหม

ไม่ได้โดยตรง — ALB ให้เป็น DNS name ที่เบื้องหลัง IP เปลี่ยนได้ตลอด ถ้าโจทย์บังคับว่าต้องมี IP คงที่ ทางแก้คือเอา NLB (ซึ่งมี static IP ได้) วางไว้หน้า ALB หรือใช้ AWS Global Accelerator ครอบอีกชั้น — ประเด็นนี้ออกข้อสอบบ่อย

Gateway Load Balancer ใช้ในสถานการณ์ไหนจริงๆ

เมื่อองค์กรต้องการบังคับให้ traffic ทุกเส้นวิ่งผ่านอุปกรณ์ตรวจสอบของ third-party เช่น firewall, IDS/IPS ก่อนเข้าระบบ — GLB จะรับ traffic แล้วส่งต่อไปให้ fleet ของ appliance เหล่านั้นตรวจ (ผ่านโปรโตคอล GENEVE) แล้วค่อยปล่อยไปปลายทาง

Classic Load Balancer ยังต้องรู้ไหม

CLB เป็นรุ่นเก่าที่ AWS ไม่แนะนำให้ใช้กับงานใหม่แล้ว ข้อสอบ SAA-C03 แทบไม่ถามถึง ให้โฟกัสที่ ALB, NLB และ GLB เป็นหลัก

ลองทำ Quiz ท้ายบท

คำถามแนวข้อสอบของโมดูลนี้ 5 ข้อ · เฉลยทันที

อ่านจบแล้วอย่าลืมทำเครื่องหมาย