Keys สำคัญเอาชนะใจลูกค้ายุคแห่งการสร้าง Customer Experience ด้วย Microservices
Microservices ไม่เหมาะกับทุกองค์กรหรือทุกแอปพลิเคชัน หากดําเนินการไม่ถูกต้องสถาปัตยกรรม Microservices อาจส่งผลให้ต้นทุนสูงขึ้น ดังนั้นหากคุณกําลังคิดที่จะเริ่มที่จะมาใช้ Microservices ควรจะพิจารณาคําถามสําคัญเหล่านี้
สิ่งที่ควรทราบหากคุณกําลังพิจารณาสถาปัตยกรรม microservices
Microservice Checklists
- พร้อมที่จะกําจัดการทำงานแบบ Silo และมีทีมที่พอเพียงที่สร้างและให้บริการหรือไม่?
- สามารถใช้ Pipeline เข้ามาจัดการ Change Management แบบ automatic ได้หรือไม่?
- มีนักพัฒนาที่ให้ความร่วมมือที่จะพยายามมาใช้ไมโครเซอร์วิสทุกแอปพลิเคชันหรือไม่?
- แอปพลิเคชันหลักที่ต้องการเปลี่ยนให้บริการฟังก์ชั่นที่สําคัญทางธุรกิจหรือไม่?
- บริการของคุณทำงานแบบประสานกันหรือไม่?
- มีทีมงานที่อุทิศตนและงบประมาณในการลงทุนในไมโครเซอร์วิสหรือไม่?
- การแก้ไขหรืออัพเกรดเครื่องที่ระบบใช้งานอยู่ สามารถทำได้ยากหรือไม่?
- มันยากที่จะทําให้ Microservices หลายสิบเครื่องทันสมัย (Up to date) ด้วยการกําหนดค่าแอปพลิเคชันล่าสุดหรือไม่?
เริ่มต้นเปลี่ยน Monolithic มาเป็น Microservices
Step 1: เริ่มต้นด้วย Monolithic
เราเชื่อว่า Monolithic เป็นตัวเลือกที่เหมาะสมในการทำ application ในระยะแรก แต่เมื่อเวลาผ่านไปมีนักพัฒนาเริ่มใช้มากขึ้นเรื่อยๆ ทำให้ code เพิ่มขึ้นจนถึงจุดๆ หนึ่ง ปัญหาจะเริ่มขึ้น เกิดความซับซ้อน ทรัพยากรที่ใช้อยู่เริ่มแน่นเกินไป (ไม่พอ) และไม่ได้เรียนรู้ทักษะใหม่ๆ เพราะนักพัฒนาต้องคอยดูแลรักษาแอปพลิเคชันและโครงสร้างพื้นฐานดั้งเดิมไม่ให้เกิดปัญหา ซึ่งนั่นคือตอนที่องค์กรของคุณจะเริ่มหันไปหา Microservices
Step 2: ค้นหาสิ่งที่เกี่ยวข้องและแยกออกมา
กุญแจสําคัญในการเปลี่ยนจาก Monolithic มาเป็น Microservices คือการหา “ขอบเขต” ของแอปพลิเคชันเพื่อให้คุณรู้บริบท จากนั้นคุณต้องนําบริบทที่ถูกผูกไว้ออกจากแอปพลิเคชัน แต่ก่อนอื่นคุณต้องค้นหาว่าใครบ้างที่เข้ามาเรียก application และหาว่าใครกําลังเรียกขาเข้าและขาออก มีส่วนไหนบ้างที่สัมพันธ์กัน? ข้อจํากัดคืออะไร?
สิ่งเหล่านี้จะช่วยให้เข้าใจถึงการความสัมพันธ์และเหตุการณ์ที่เกี่ยวข้อง จากนั้นคุณสามารถเริ่มทำ API ของแต่ละ service และนำมาผูกไว้ออกไปยังแอปพลิเคชันของตัวเอง
Step 3: Refactoring code
Refactor Code ใน Monolithic Application เพื่อให้ส่วนที่จะแยก ไม่มี Dependency กับส่วนอื่นๆ ที่จะไม่ถูกแยกออกมา สําหรับการเปลี่ยนแปลงแต่ละครั้ง เรามักจะต้องค้นหาก่อนว่าอะไรที่เกี่ยวข้องที่จะทำให้เกิดข้อผิดพลาด (error) นี่เป็นวิธีแรกที่ช่วยในการแก้ปัญหาการรีแฟคเตอร์ การทําความเข้าใจผลลัพธ์ในแต่ละจุด
วิธีการปรับใช้ Microservices
- เลือกโครงสร้างพื้นฐานระบบคลาวด์หรือบริการ Kubernetes บนคลาวด์เพื่อเปิดใช้งานไมโครเซอร์วิส เชื่อมต่อกันด้วย REST API ดังนั้นไมโครเซอร์วิสจํานวนมากจึงสามารถทํางานร่วมกันได้ในแอปพลิเคชันเดียว
- เนื่องจากโปรแกรมประยุกต์ที่ใช้ไมโครเซอร์วิสเป็นระบบแบบกระจายที่โดยปกติจะทํางานมากกว่าหนึ่งกระบวนการ จึงเลือกโปรโตคอลการสื่อสาร (เช่น HTTP, AMQP หรือ TCP)
- หลีกเลี่ยงการพึ่งพาที่เก็บข้อมูลเดียวกันเพื่อลดความซับซ้อนและกระจายอํานาจของข้อมูล สิ่งนี้จะช่วยให้มั่นใจได้ว่าทุกแอปพลิเคชันจะไม่หยุดทํางานหากจําเป็นต้องอัพเกรดหรือแก้ไขฐานข้อมูล
- แยกวิธีการควบคุมรหัสเพื่อเพิ่มประสิทธิภาพ เมื่อคุณใช้ REST API ความปลอดภัยจะถูกสร้างขึ้นผ่าน SSL
- ใช้ CI/CD และการปรับใช้โครงสร้างพื้นฐานโดยอัตโนมัติ (Infrastructure as code) เพื่อ scale ระบบโดยอัตโนมัติ
- ตรวจสอบและแก้ไขปรับปรุง code ที่ใช้ในไมโครเซอร์วิสอย่างต่อเนื่อง
สนใจบริการหรือต้องการคำปรึกษาเพิ่มเติม
ติดต่อเราได้ที่ marketing@tangerine.co.th หรือเบอร์ 02-285-5511
ท่านจะได้รับคำตอบจากผู้เชี่ยวชาญที่ได้รับการรับรองมาตรฐาน
Share on social media
All and More
- All
- Apigee
- Application Development
- Business Transformation
- Cisco
- Converged Infrastructure
- Data Analytics
- Dell EMC
- Dell Technologies
- Dialogflow (Chatbot)
- Event
- G Suite
- Google Cloud
- Google Cloud Platform
- Google Maps Platform
- Google Workspace
- Highlight
- Huawei
- Hybrid Cloud & Multi Cloud
- Knowledge
- Networking
- Productivity & Work Transformation
- Security
- Smart Business Analytics & AI
- Storage & Data Protection
- Success Story
- Tenable
- Thales
- VMware
- All
- Apigee
- Application Development
- Business Transformation
- Cisco
- Converged Infrastructure
- Data Analytics
- Dell EMC
- Dell Technologies
- Dialogflow (Chatbot)
- Event
- G Suite
- Google Cloud
- Google Cloud Platform
- Google Maps Platform
- Google Workspace
- Highlight
- Huawei
- Hybrid Cloud & Multi Cloud
- Knowledge
- Networking
- Productivity & Work Transformation
- Security
- Smart Business Analytics & AI
- Storage & Data Protection
- Success Story
- Tenable
- Thales
- VMware
Protected: 2022 Gartner ประกาศผู้นำระบบ Security Service Edge
There is no excerpt because this is a protected post.
Protected: อนาคตของการพัฒนา Spaces ให้ทำงานร่วมกันกับ Currents
There is no excerpt because this is a protected post.
Protected: รู้หรือไม่ AppSheet ทำ Dynamic Email บน Gmail ได้
There is no excerpt because this is a protected post.
Protected: รับมือภัยคุกคาม Multi-cloud อย่างไรให้ปลอดภัยอย่างมีประสิทธิภาพ
There is no excerpt because this is a protected post.
Protected: การบริหารจัดการอุปกรณ์เครือข่ายบนระบบ Cloud ด้วย Cisco Cloud Monitoring for Catalyst
There is no excerpt because this is a protected post.