Tai Mắt Soi Mói (Observability) & mỏ hàn pprof chốn Go — Định Bệnh Xì RAM Lủng Máu, Bắt Mạch CPU & Đào GODEBUG
Điều kiện tiên quyết: Đây là Phần 10 của Khóa Học System Design. Mấy chương trước cắm đầu cắm cổ dựng giàn giáo cất nóc (architecture) — tới chương này tao sẽ chỉ cho mày cách banh mắt chui tọt vô ruột ngó ngoáy một cái hệ thống đang quẫy đạp sống nhăn và rà bắt mạch tận gốc ba cái bệnh hoạn ệch ạch (performance issues) chốn production. Answer-first: Đồ nghề mỏ hàn pprof (profiler) đúc liền xương tủy của Go dâng tận răng ngón nghề nhấp nháp nếm CPU (CPU sampling), mổ bụng săm soi đống mỡ phân lô (heap allocation analysis), lật nệm soi vết xếp chồng goroutine (goroutine stack inspection), và chỉ điểm ổ kẹt ngẽn (blocking profiler) — bưng bít sẵn sàng phơi ra như mấy cái cổng HTTP endpoints nhởn nhơ móc từ ba cái ổ dịch vụ production đang chạy ro ro mà cực kỳ héo hao tí tẹo tài nguyên (minimal overhead). Trò vác 2 bức hình chụp đống rác RAM (heap) ra cân đo đong đếm so lệch (Heap diff) là chiêu độc trị dứt điểm nhanh gọn lẹ lòi mặt chuột ổ rò rỉ RAM (memory leaks). ...