ในสถาปัตยกรรม Cloud Computing การเลือกระหว่าง 'Vertical Scaling' (Scale Up) และ 'Horizontal Scaling' (Scale Out) มีผลต่อระบบอย่างไร และสถานการณ์ใดควรเลือกแต่ละแบบ
เฉลยอธิบาย
Vertical Scaling (Scale Up) หมายถึงการเพิ่มขีดความสามารถของเซิร์ฟเวอร์เดิม เช่น เปลี่ยนซีพียูเร็วขึ้น เพิ่มแรม มีข้อจำกัดคือมี Upper Limit ของฮาร์ดแวร์ และมักต้องหยุดระบบระหว่างอัปเกรด เหมาะกับ Database Server แบบ Monolithic ที่แบ่งออกยาก Horizontal Scaling (Scale Out) หมายถึงการเพิ่มจำนวนเซิร์ฟเวอร์แล้วกระจายภาระด้วย Load Balancer ไม่มีขีดจำกัดทางทฤษฎี รองรับ Fault Tolerance ดีกว่า เหมาะกับ Stateless Web Service, Microservices ข้อเสียคือต้องออกแบบแอปพลิเคชันให้รองรับการกระจาย ตัวเลือก A ผิดเพราะ Vertical มีขีดจำกัด B สลับความหมาย และ D ผิดเพราะผลลัพธ์แตกต่างกันในด้าน Fault Tolerance, Scalability และการออกแบบระบบ ควรพิจารณาความต้องการงาน ความเข้ากันได้ ประสิทธิภาพ การสนับสนุน/อัปเดต ความปลอดภัย และการสำรองที่กู้คืนได้ ไม่ยึดชื่อรุ่นโดยไม่มีบริบท; ตรวจทานกับเอกสาร Microsoft ปัจจุบันและแนวทางพื้นฐานของ NIST