ก่อน deploy ทีมต้องแยก configuration ตามสภาพแวดล้อมและตรวจความลับ จึงถามว่า ข้อใดอธิบายข้อดีและข้อเสียของ Microservices Architecture เปรียบเทียบกับ Monolithic Architecture ได้ถูกต้องและสมดุลที่สุด

Monolithic Architecture เหมาะกับระบบขนาดใหญ่มากกว่า Microservices เพราะจัดการ transaction ข้ามโมดูลได้ง่าย และสามารถ scale แต่ละส่วนได้อิสระโดยไม่กระทบส่วนอื่น
Microservices ทำให้ระบบทั้งหมด deploy พร้อมกันได้ง่ายกว่า Monolithic และลดความซับซ้อนของโค้ด แต่มีข้อเสียคือไม่สามารถใช้ภาษาโปรแกรมหลายภาษาร่วมกันในระบบเดียวได้
Microservices ช่วยให้แต่ละส่วนพัฒนาและ deploy ได้อิสระ รองรับการ scale เฉพาะส่วนได้ดี แต่มีความซับซ้อนในการจัดการการสื่อสารระหว่าง service และต้องการทีมที่มีความเชี่ยวชาญสูง
Microservices ทำให้การทดสอบระบบโดยรวมง่ายกว่า Monolithic เพราะแต่ละ service แยกจากกัน และลดปัญหาการ deploy ที่ล้มเหลว เนื่องจากไม่มีการพึ่งพากันระหว่าง service เลย

เฉลยอธิบาย

ข้อ A อธิบายได้ถูกต้องและสมดุล คือ Microservices มีข้อดีที่แต่ละ service พัฒนา ทดสอบ และ deploy ได้อิสระ สามารถ scale เฉพาะส่วนที่ต้องการได้ แต่มีข้อเสียคือความซับซ้อนในการจัดการการสื่อสารระหว่าง service เช่น API gateway, service discovery และต้องการทีมที่มีทักษะสูง ส่วนตัวเลือกอื่นมีข้อมูลที่ไม่ถูกต้อง เช่น ข้อ B ที่บอกว่า deploy พร้อมกันง่ายกว่า ซึ่งตรงข้ามกับความเป็นจริง ข้อ C สลับข้อดีของ Microservices ไปให้ Monolithic และข้อ D อธิบายผิดเพราะ Microservices ยังมีการพึ่งพากันผ่าน API

ข้อสอบอื่นในวิชาความรู้เกี่ยวกับการพัฒนาโปรแกรมระบบงานในลักษณะ Web Application

ดูข้อสอบวิชานี้ทั้งหมด →