คำถามและคำตอบสัมภาษณ์ไมโครเซอร์วิส 25 อันดับแรก (2024)

ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์ของ Microservices สำหรับผู้สมัครใหม่และมีประสบการณ์เพื่อให้ได้งานในฝัน

 

คำถามและคำตอบในการสัมภาษณ์ Microservices สำหรับนักศึกษาใหม่

1) อธิบายไมโครเซอร์วิส Archiเทคเจอร์

ไมโครเซอร์วิส Architecture เป็นรูปแบบการพัฒนาสถาปัตยกรรมที่สร้างแอปพลิเคชันเป็นคอลเลกชันของบริการอัตโนมัติขนาดเล็กที่พัฒนาขึ้นสำหรับโดเมนธุรกิจ

มาดูตัวอย่างแอปพลิเคชันอีคอมเมิร์ซที่พัฒนาด้วย สถาปัตยกรรมไมโครเซอร์วิสในตัวอย่างสถาปัตยกรรมไมโครเซอร์วิสนี้ ไมโครเซอร์วิสแต่ละรายการจะเน้นที่ความสามารถทางธุรกิจเพียงอย่างเดียว การค้นหา การให้คะแนน และ Review และ Payment ต่างมีอินสแตนซ์ (เซิร์ฟเวอร์) และสื่อสารระหว่างกัน

👉 ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบสัมภาษณ์ Microservices >>


2) บอกชื่อเครื่องมือที่ใช้กันทั่วไปสามรายการสำหรับไมโครเซอร์วิส

1.) WireMock, 2.) Docker และ 3.) Hystrix เป็นเครื่องมือไมโครเซอร์วิสที่สำคัญ

Microservices Archiเทคเจอร์
Microservices Archiเทคเจอร์

3) เสาหินคืออะไร Archiเทคเจอร์?

สถาปัตยกรรมแบบโมโนลิธิกเปรียบเสมือนคอนเทนเนอร์ขนาดใหญ่ที่รวบรวมส่วนประกอบซอฟต์แวร์ทั้งหมดของแอปพลิเคชันไว้ในแพ็คเกจเดียว

มาหารือกันถึงตัวอย่างของร้านค้าอีคอมเมิร์ซในบริบทของสถาปัตยกรรมแบบโมโนลิธิก

เป็นเสาหิน Archiการสอนแอปพลิเคชันอีคอมเมิร์ซ

เป็นเสาหิน Archiการสอนแอปพลิเคชันอีคอมเมิร์ซ

ในแอปพลิเคชันอีคอมเมิร์ซ มีคุณสมบัติมาตรฐานบางอย่าง เช่น การค้นหา Revดูและการให้คะแนน และการชำระเงิน ลูกค้าสามารถเข้าถึงคุณลักษณะเหล่านี้ได้โดยใช้เบราว์เซอร์หรือแอปของตน เมื่อผู้พัฒนาไซต์อีคอมเมิร์ซปรับใช้แอปพลิเคชัน จะเป็นหน่วยเสาหินเดียว รหัสสำหรับคุณสมบัติต่างๆ เช่น การค้นหา Review & Ratings และ Payments อยู่บนเซิร์ฟเวอร์เดียวกัน หากต้องการปรับขนาดแอปพลิเคชัน คุณจะต้องเรียกใช้อินสแตนซ์ (เซิร์ฟเวอร์) ของแอปพลิเคชันเหล่านี้หลายอินสแตนซ์


4) ไมโครเซอร์วิสมีข้อดีอย่างไร?

นี่คือข้อดีที่สำคัญบางประการของการใช้ไมโครเซอร์วิส:

  • ความหลากหลายของเทคโนโลยี เช่น ไมโครเซอร์วิสสามารถผสมผสานกับเฟรมเวิร์ก ไลบรารี และฐานข้อมูลอื่นๆ ได้อย่างง่ายดาย
  • การแยกข้อผิดพลาด เช่น ความล้มเหลวของกระบวนการไม่ควรทำให้ทั้งระบบล่ม
  • การสนับสนุนที่มากขึ้นสำหรับทีมขนาดเล็กและทีมคู่ขนาน
  • การใช้งานที่เป็นอิสระ
  • ลดเวลาในการปรับใช้

5) สปริงคลาวด์คืออะไร?

Spring cloud เป็นซอฟต์แวร์บูรณาการที่ทำงานร่วมกับระบบภายนอก ช่วยให้เฟรมเวิร์กไมโครเซอร์วิสสามารถสร้างแอปพลิเคชันที่ประมวลผลข้อมูลได้ในจำนวนที่จำกัด

คำถามและคำตอบสัมภาษณ์ไมโครเซอร์วิส


6) หารือเกี่ยวกับการใช้รายงานและแดชบอร์ดในสภาพแวดล้อมของไมโครเซอร์วิส

รายงานและแดชบอร์ดช่วยในการติดตามและดูแลรักษาไมโครเซอร์วิส เครื่องมือตรวจสอบแอปพลิเคชันมากมายช่วยในเรื่องนี้


7) อะไรคือความแตกต่างที่สำคัญระหว่าง Microservices และ Monolithic Archiเทคเจอร์?

Microservices เป็นเสาหิน Archiเทคเจอร์
การเริ่มต้นบริการทำได้อย่างรวดเร็ว การเริ่มต้นบริการต้องใช้เวลา
ไมโครเซอร์วิสเป็นสถาปัตยกรรมที่มีการเชื่อมโยงกันอย่างหลวมๆ สถาปัตยกรรมแบบเสาเดียวส่วนใหญ่จะมีการเชื่อมโยงกันอย่างแน่นหนา
การเปลี่ยนแปลงที่ทำในโมเดลข้อมูลเดียวจะไม่ส่งผลต่อไมโครเซอร์วิสอื่นๆ การเปลี่ยนแปลงใด ๆ ในตัวแบบข้อมูลจะส่งผลต่อฐานข้อมูลทั้งหมด
Microservices มุ่งเน้นไปที่ผลิตภัณฑ์ ไม่ใช่โครงการ เสาหินเน้นย้ำทั่วทั้งโครงการ

8) ความท้าทายที่ต้องเผชิญขณะใช้ไมโครเซอร์วิสคืออะไร?

  • ไมโครเซอร์วิสต้องพึ่งพาซึ่งกันและกันเสมอ ดังนั้นพวกเขาจึงต้องสื่อสารระหว่างกัน
  • เนื่องจากเป็นระบบแบบกระจาย จึงเป็นโมเดลที่เกี่ยวข้องอย่างมาก
  • หากคุณใช้สถาปัตยกรรม Microservice คุณต้องพร้อมสำหรับค่าใช้จ่ายการดำเนินงาน
  • คุณต้องมีผู้เชี่ยวชาญที่มีทักษะเพื่อรองรับไมโครเซอร์วิสที่กระจายแบบหลากหลาย

9) ในกรณีใดสถาปัตยกรรมไมโครเซอร์วิสเหมาะสมที่สุด

สถาปัตยกรรมไมโครเซอร์วิสเหมาะที่สุดสำหรับเดสก์ท็อป เว็บ อุปกรณ์เคลื่อนที่ สมาร์ททีวี อุปกรณ์สวมใส่ ฯลฯ


10) บอกชื่อบริษัทที่มีชื่อเสียงบางแห่งที่ใช้สถาปัตยกรรม Microservice

เว็บไซต์ขนาดใหญ่ส่วนใหญ่เช่น Twitter, Netflix, Amazonได้ก้าวหน้าจากสถาปัตยกรรมแบบโมโนลิธิกไปเป็นสถาปัตยกรรมไมโครเซอร์วิส


คำถามสัมภาษณ์ไมโครเซอร์วิสสำหรับผู้มีประสบการณ์

11) ไมโครเซอร์วิสมีคุณลักษณะอย่างไร?

  • กรอบข้อความที่จำเป็น
  • การปกครองแบบกระจายอำนาจ
  • ระบบอัตโนมัติโครงสร้างพื้นฐานที่ง่ายดาย
  • การออกแบบเพื่อความล้มเหลว
  • ระบบอัตโนมัติโครงสร้างพื้นฐาน

12) สงบคืออะไร?

การโอนสถานะการเป็นตัวแทน (REST)/บริการเว็บ RESTful เป็นรูปแบบสถาปัตยกรรมที่ช่วยให้ระบบคอมพิวเตอร์สื่อสารกันผ่านอินเทอร์เน็ตได้ บริการเว็บเหล่านี้ทำให้เข้าใจและใช้งานไมโครเซอร์วิสได้ง่ายขึ้น


13) อธิบายการทดสอบไมโครเซอร์วิสสามประเภท?

ในสถาปัตยกรรมไมโครเซอร์วิส การทดสอบจะถูกแบ่งออกเป็น 3 ประเภทกว้างๆ:

  • ที่การทดสอบระดับล่างสุด เราสามารถทำการทดสอบทั่วไป เช่น การทดสอบประสิทธิภาพและการทดสอบหน่วย การทดสอบประเภทนี้เป็นแบบอัตโนมัติทั้งหมด
  • ในระดับกลาง เราสามารถทำการทดสอบเชิงสำรวจ เช่น การทดสอบความเครียด และการทดสอบการใช้งาน
  • ในระดับสูงสุด เราสามารถดำเนินการทดสอบการยอมรับซึ่งส่วนใหญ่มีจำนวนน้อยกว่า นอกจากนี้ยังช่วยให้ผู้ถือผลประโยชน์ทราบเกี่ยวกับคุณลักษณะซอฟต์แวร์ต่างๆ

14) ใบรับรองไคลเอ็นต์คืออะไร?

ใบรับรองไคลเอ็นต์คือใบรับรองดิจิทัลที่ใช้เพื่อสร้างคำขอที่มีการรับรองความถูกต้องไปยังเซิร์ฟเวอร์ระยะไกล มันถูกเรียกว่าเป็นใบรับรองไคลเอ็นต์


15) อธิบายการใช้ PACT ในสถาปัตยกรรมไมโครเซอร์วิส

เป็นเครื่องมือโอเพ่นซอร์สที่ช่วยให้สามารถทดสอบปฏิสัมพันธ์ระหว่างผู้ให้บริการและผู้บริโภคได้ แต่จะแยกออกจากสัญญาที่ทำขึ้น สิ่งนี้จะเพิ่มความน่าเชื่อถือของแอปพลิเคชันไมโครเซอร์วิส


16) OAuth มีความหมายว่าอย่างไร?

OAuth หมายถึงโปรโตคอลการอนุญาตแบบเปิด โปรโตคอลนี้ช่วยให้คุณเข้าถึงแอปพลิเคชันไคลเอนต์บน HTTP สำหรับผู้ให้บริการบุคคลที่สาม GitHub, Facebook ฯลฯ ซึ่งช่วยให้คุณแบ่งปันทรัพยากรที่จัดเก็บไว้ในไซต์หนึ่งกับไซต์อื่นโดยไม่จำเป็นต้องใช้ข้อมูลประจำตัว


17) การทดสอบไมโครเซอร์วิสแบบครบวงจรคืออะไร

การทดสอบแบบ end-to-end จะตรวจสอบว่าทุกกระบวนการในเวิร์กโฟลว์ทำงานได้อย่างถูกต้อง นอกจากนี้ยังช่วยให้แน่ใจว่าระบบทำงานร่วมกันโดยรวมและตอบสนองความต้องการทั้งหมด


18) เหตุใดจึงมีการใช้คอนเทนเนอร์ในไมโครเซอร์วิส

คอนเทนเนอร์เป็นวิธีที่ง่ายและมีประสิทธิภาพในการจัดการแอปพลิเคชันที่ใช้ไมโครเซอร์วิส นอกจากนี้ยังช่วยให้คุณพัฒนาและปรับใช้เป็นรายบุคคลอีกด้วย นักเทียบท่ายังอนุญาตให้คุณห่อหุ้มไมโครเซอร์วิสของคุณไว้ในอิมเมจคอนเทนเนอร์พร้อมกับการขึ้นต่อกัน ไมโครเซอร์วิสสามารถใช้องค์ประกอบเหล่านี้ได้โดยไม่ต้องพยายามเพิ่มเติม


19) ความหมายของการตรวจสอบความหมายในสถาปัตยกรรมไมโครเซอร์วิสคืออะไร

การตรวจสอบความหมายรวมการทดสอบอัตโนมัติเข้ากับการตรวจสอบแอปพลิเคชัน ช่วยให้คุณค้นหาสาเหตุที่ธุรกิจของคุณไม่ได้รับผลกำไรมากขึ้น


20) CDC คืออะไร?

CDC คือสัญญาที่ขับเคลื่อนโดยผู้บริโภค เป็นรูปแบบการพัฒนาไมโครเซอร์วิสเพื่อให้ระบบภายนอกสามารถใช้งานได้


คำถามสัมภาษณ์ Microservices สำหรับประสบการณ์ 10 ปีขึ้นไป

21) Docker มีประโยชน์อย่างไร?

นักเทียบท่าเสนอสภาพแวดล้อมคอนเทนเนอร์ที่สามารถใช้เพื่อโฮสต์แอปพลิเคชันใดก็ได้ แอปพลิเคชันซอฟต์แวร์นี้และการขึ้นต่อกันที่รองรับซึ่งรวมเข้าด้วยกันอย่างแน่นหนา


22) Reactive Extensions ใน Microservices คืออะไร?

Reactive Extensions เรียกอีกอย่างว่า Rx เป็นรูปแบบการออกแบบที่ช่วยให้สามารถรวบรวมผลลัพธ์โดยการเรียกใช้บริการต่างๆ แล้วรวบรวมการตอบสนองแบบรวม Rx เป็นเครื่องมือยอดนิยมในระบบแบบกระจายซึ่งทำงานตรงข้ามกับโฟลว์แบบเดิมทุกประการ


23) อธิบายคำว่า 'การติดตามอย่างต่อเนื่อง'

การติดตามอย่างต่อเนื่องเป็นวิธีการที่ใช้ค้นหาปัญหาการปฏิบัติตามกฎระเบียบและความเสี่ยงที่เกี่ยวข้องกับสภาพแวดล้อมการทำงานและการเงินของบริษัท ซึ่งประกอบด้วยบุคลากร กระบวนการ และระบบการทำงานที่รองรับการดำเนินงานที่มีประสิทธิภาพและเป็นจริง


24) บริการไมโครอิสระสื่อสารกันอย่างไร?

ขึ้นอยู่กับความต้องการของโครงการของคุณ อย่างไรก็ตาม ในกรณีส่วนใหญ่ นักพัฒนาจะใช้ HTTP/REST กับ JSON หรือโปรโตคอล Binary อย่างไรก็ตาม พวกเขาสามารถใช้โปรโตคอลการสื่อสารใดก็ได้

คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)