อ่านบทความเรื่อง Why optimizing for MTTR over MTBF is better for business ?
จากบริษัท Grafana โดยทำการอธิบายว่า
ได้นำค่าของ MTTR (Mean Time to Recovery) มาใช้สำหรับการวัดผลการทำงาน
นั่นคือ เวลาในการแก้ไขปัญหารวมไปถึงทำให้ระบบงานกลับมาใช้งานได้นั่นเอง
โดยที่ค่า MTTR นั้นใช้สำหรับช่วยทำให้ระบบที่เราพัฒนาและดูแล
สามารถแก้ไขระบบกลับมาจากความผิดพลาดได้ดีขึ้น
นั่นหมายความว่า ทีมได้รับการสอนและเตรียมพร้อมสำหรับการแก้ไขปัญหา
มีความพร้อมทั้งเรื่องของคน
มีความพร้อมทั้งเรื่องของสิ่งแวดล้อม
มีความพร้อมทั้งในเรื่องของ process การทำงาน
มีความพร้อมทั้งในเรื่องของเครื่องมือต่าง ๆ
เนื่องจากเมื่อมีการเปลี่ยนแปลงใด ๆ แล้ว
มักจะมีเหตุการณ์ผิดพลาดที่ไม่คาดฝันหรือคาดหวังขึ้นมาเสมอ
สิ่งสำคัญกว่าปัญหาคือ
เรารู้และแก้ไขได้รวดเร็วเพียงใดต่างหาก
นั่นคือเป้าหมายของ MTTR นั่นเอง
MTTR นั้นจะวัดค่าได้ดีขึ้น เมื่อเราทำการ release บ่อย ๆ
นั่นคือสิ่งที่เราได้รับกลับมา แต่ถ้าเรากลัวการ release ก็จะได้ผลตรงกันข้าม
เนื่องจากเราจะไม่ได้เรียนรู้มากนักนั่นเอง
ดังนั้นถ้าเราเลือก MTTR แล้ว ก็มีความแนะนำในการปรับปรุงดังนี้
- ควรมีเครื่องมือในการ deploy และ release ที่ดี ยิ่งสามารถทำงานแบบอัตโนมัติได้ยิ่งดี เพราะจะทำให้เราทำงานได้บ่อย ๆ ยกตัวอย่างเช่น Kubeernetes เป็นต้น
- ควรมีเครื่องมือในการ monitoring ระบบที่ดีและเหมาะสม รวมทั้งยังช่วยเสริมสร้างความมั่นใจให้เราได้ด้วย เช่นเกิดปัญหาบน production แล้วสามารถระบบจุดหรือต้นเหตุของปัญหาได้เลย เช่น Grafana, Prometheus แบะ Loki เป็นต้น
- ควรมีเครื่องมือในการ track ในการ release ได้ รวมทั้ง integrate เข้ากับ feature และ issue ได้อีกด้วย
- ควรทำงานเป็นแบบ iteration เพื่อให้เราทำงาน release บ่อย ๆ อย่างต่อเนื่อง
เรียนรู้จากความผิดพลาด เพื่อพัฒนาและปรับปรุงให้ดีขึ้น
แต่ไม่ใช่ผิดที่เดิมแล้วซ้ำเล่านะครับ
ขอให้สนุกกับการ coding