เมื่อเปรียบเทียบสถาปัตยกรรมระบบสารสนเทศแบบ Monolithic กับ Microservices ข้อใดอธิบายความแตกต่างได้ถูกต้องที่สุด
กMicroservices ใช้ฐานข้อมูลร่วมกันทุก Service เพื่อให้การสื่อสารระหว่างกันง่ายขึ้น ต่างจาก Monolithic ที่แต่ละ Module มีฐานข้อมูลแยกกัน
ขMonolithic มีความยืดหยุ่นสูงกว่า Microservices เนื่องจากสามารถขยายระบบได้อิสระในแต่ละ Module โดยไม่กระทบส่วนอื่น
คMicroservices แต่ละ Service ทำงานอิสระจากกัน สามารถพัฒนาและ Deploy แยกส่วนได้ ในขณะที่ Monolithic รวมทุกส่วนไว้ในแอปพลิเคชันเดียว
งMonolithic เหมาะสมกับระบบขนาดใหญ่ที่มีผู้ใช้จำนวนมากมากกว่า Microservices เนื่องจากใช้ทรัพยากรเซิร์ฟเวอร์น้อยกว่า
เฉลยอธิบาย
Microservices คือสถาปัตยกรรมที่แบ่งแอปพลิเคชันออกเป็น Service ย่อยๆ ที่ทำงานอิสระจากกัน สามารถพัฒนา ทดสอบ และ Deploy แยกกันได้ แต่ละบริการควรควบคุมขอบเขตข้อมูลของตน แต่รูปแบบจัดเก็บจริงขึ้นกับการออกแบบ ในขณะที่ Monolithic รวมทุกส่วนของแอปพลิเคชันไว้ในโค้ดชุดเดียวกัน ทำให้การ Deploy ต้องทำทั้งระบบพร้อมกัน ตัวเลือก B ผิดเพราะ Monolithic ขยายได้ยากกว่า ตัวเลือก C ผิดเพราะ Microservices ควรมีฐานข้อมูลแยกกัน และตัวเลือก D เหมารวมเกินไป เพราะความเหมาะสมขึ้นกับขนาดทีม โดเมน ภาระการขยาย และต้นทุนการปฏิบัติการ