← Indonesian conversations
Indonesian · technology · advanced · 183 words · ~1 min

Arsitektur Layanan Mikro dalam Pengembangan Perangkat Lunak

สถาปัตยกรรม Microservices ในการพัฒนาซอฟต์แวร์
Microservices Architecture in Software Development

Two senior software engineers debate the trade-offs of adopting a microservices architecture.

Recorded narration All 12 sentences have audio clips — tap any line to start there.
Thai
Script
Software architecture workshop desk with one large plain wooden block and several smaller connected blocks beside a laptop with abstract service graph.
Software architecture workshop desk with one large plain wooden block and several smaller connected blocks beside a laptop with abstract service graph.
Andika
. ?
ฝ่ายบริหารขอให้เราย้ายจาก monolith ไปสู่ microservices คุณเห็นด้วยกับการตัดสินใจนี้ไหม
Sinta
. , .
ขึ้นอยู่กับบริบท Microservices ให้ความยืดหยุ่นในการ deploy และปรับขนาดได้รายบริการ แต่ความซับซ้อนในการดำเนินงานเพิ่มขึ้นอย่างมาก
Andika
? .
ความซับซ้อนที่ว่าเป็นอย่างไร ก็ deploy แต่ละบริการได้อิสระนี่
Sinta
, , , , .
ถูก แต่ตอนนี้คุณต้องจัดการ service discovery การทำ load balancing แบบกระจาย การ tracing ข้ามบริการ และ eventual consistency ระหว่างบริการหลายสิบตัว
Andika
.
ปัญหาเหล่านั้นแก้ได้ด้วยแพลตฟอร์มอย่าง Kubernetes และ service mesh อย่าง Istio
Sinta
, . ?
ได้ แต่มันเพิ่มเส้นโค้งการเรียนรู้และค่าโครงสร้างพื้นฐาน ทีมเราพร้อมด้านความสามารถแล้วหรือยัง
Andika
. .
ประเด็นที่ถูกต้อง กลยุทธ์การย้ายแบบค่อยเป็นค่อยไปอาจสมจริงกว่าการย้ายแบบทีเดียว
Sinta
. : , .
เห็นด้วย เริ่มด้วย Strangler Fig pattern: ห่อหุ้ม monolith เก่าไว้ แล้วค่อยแยกบริการทีละตัวตามโดเมนธุรกิจ
Several small network computing boxes with tidy cables on an office desk, monitor displaying separate rectangular services linked by arrows, gradual migration concept.
Several small network computing boxes with tidy cables on an office desk, monitor displaying separate rectangular services linked by arrows, gradual migration concept.
Andika
, ?
สำหรับการสื่อสารระหว่างบริการ เลือกแบบ synchronous ผ่าน REST หรือ asynchronous ผ่าน message broker อย่าง Kafka
Sinta
, .
ใช้แบบ synchronous สำหรับการดำเนินงานที่ต้องการตอบสนองทันที และ asynchronous สำหรับกระแสข้อมูลสูงและกระบวนการที่ทนต่อความล่าช้า
Andika
. .
ดีแล้ว เราร่างข้อเสนอทางเทคนิคพร้อมการวิเคราะห์ความเสี่ยงก่อนนำเสนอฝ่ายบริหาร
Sinta
. .
เห็นด้วย ใส่เกณฑ์ความสำเร็จที่ชัดเจนด้วยเพื่อให้การย้ายสามารถประเมินผลได้อย่างเป็นกลาง
colour key NounVerbAdjectiveAdverbPronounParticleConjunctionDeterminer