The Delivery Hero Reliability Manifesto (แปล)
(moonsub-kim.github.io)เนื้อหาแต่ละข้อสร้างความประทับใจมากจนสรุปออกมาได้ไม่ง่ายนัก เลยขอเพียงยกบางข้อที่โดนใจที่สุดขึ้นมาครับ
- อย่าละเมิด Manifesto แต่ให้ถกเถียงกันเพื่อเปลี่ยนกติกาและพัฒนา Manifesto ให้ดียิ่งขึ้น
- ทุกบริการต้องมีการจัดทำเอกสารเป็นแผนภาพสถาปัตยกรรมรวมถึง dependency และสถาปัตยกรรมต้องผ่านการรีวิว
- ผู้ผลิตข้อมูลต้องจัดทำเอกสารของข้อมูลที่ตนผลิตด้วย
- การ deploy ในวันศุกร์ก็ต้องทำงานได้อย่างเสถียร
- ต้องมีการป้องกันสำหรับสถานการณ์ล้มเหลว เช่น timeout, retry, circuit breaker, fallback, throttling, idempotency เป็นต้น
- สร้าง dashboard ที่ทำให้เห็นสถานะของบริการได้ (จำนวนคำขอต่อนาที, อัตราข้อผิดพลาด, เวลาในการตอบสนองของเซิร์ฟเวอร์, business metric) แล้วเฝ้าติดตาม
- เขียนวิธีวิเคราะห์และจำลองปัญหาเป็น runbook และเชื่อมเข้ากับ alert เพื่อลดเวลาในการกู้คืนให้ต่ำที่สุด
- เมื่อเกิดปัญหา ให้ลุยช่วยแก้ไขปัญหาอย่างเต็มที่
- การสนทนาทั้งหมดที่เป็นข้อความ ขอให้ตีความโดยตั้งต้นว่ามีเจตนาที่ดีต่อกันเสมอ
- เพื่อสะท้อน action ด้านความปลอดภัยเป็นผลงานของทีม ให้สร้างและเปิดเผยตารางคะแนนความปลอดภัยแยกตามทีม
- เมื่อจำนวนออเดอร์ในระบบเพิ่มขึ้น ต้นทุนต่อออเดอร์ควรลดลง จะดีมากหากต้นทุนต่อออเดอร์ลดลง 10% ทุกไตรมาส
- เฝ้าติดตาม lead time (เวลาตั้งแต่เริ่มพัฒนาจน deploy ขึ้น production), ความถี่ในการ deploy, เวลาในการกู้คืน และอัตราข้อผิดพลาดระหว่างช่วงเวลากู้คืน
นอกจากนี้ยังมีเนื้อหาอีกมาก แต่ยิ่งอ่านก็ยิ่งสงสัยว่าต้องมีผู้คนมากมายขนาดไหนที่ร่วมกันสร้างสิ่งนี้ขึ้นมาได้ถึงระดับนี้.. เป็นบทความที่ทำให้รู้สึกทึ่งและน่าเกรงขามอย่างแท้จริง
ยังไม่มีความคิดเห็น