Đây là bài 5 của chương 7: Healthcheck và quan sát, thuộc khóa demo Docker & CI/CD. Nội dung được dùng để trải nghiệm cấu trúc chương trình học; hãy thực hành trên dữ liệu và môi trường thử nghiệm riêng. Trong dự án xuyên suốt, bạn sẽ xây dựng môi trường ứng dụng có web, database, pipeline kiểm tra và quy trình khôi phục.
Mục tiêu cụ thể
Healthcheck phản ánh khả năng phục vụ một tác vụ xác định. Log cho sự kiện, metrics cho xu hướng và trace cho đường đi của request; mỗi nguồn trả lời câu hỏi khác nhau.
Bộ câu hỏi tự kiểm tra
- Vì sao healthcheck và quan sát cần được xem xét riêng trong dự án Docker & CI/CD?
- Giải thích bằng lời của bạn: Healthcheck phản ánh khả năng phục vụ một tác vụ xác định. Log cho sự kiện, metrics cho xu hướng và trace cho đường đi của request; mỗi nguồn trả lời câu hỏi khác nhau.
- Phát hiện vấn đề trong tình huống: HTTP 200 ở trang tĩnh không chứng minh kết nối DB tốt. Tránh endpoint health làm quá nhiều việc hoặc lộ thông tin nội bộ.
- Bạn sẽ giữ bằng chứng gì để chứng minh giải pháp hoạt động?
Tiêu chí chấm
- Có tín hiệu để biết lỗi ở lớp nào
- Không lộ cấu hình trong health response
- Phân biệt liveness và readiness
Bài mở rộng
Bắt đầu từ yêu cầu Xây checklist quan sát khi ứng dụng chậm: trạng thái service, log gần nhất, CPU/RAM và thời gian phản hồi. Thay đổi quy mô, độ dài dữ liệu hoặc thứ tự thao tác. Chọn đúng một biến thể phù hợp với chương rồi dự đoán tác động trước khi thử. Ví dụ là công cụ để hiểu nguyên lý, không phải đáp án duy nhất.
Gợi ý tự đánh giá
- Mức 1: nhắc lại được khái niệm nhưng chưa tự thực hiện.
- Mức 2: tự hoàn thành ví dụ và giải thích các bước.
- Mức 3: xử lý được trường hợp biên và giải thích lựa chọn khác.
Nếu chưa đạt mức 2, quay lại bài thực hành thay vì chỉ đọc đáp án. Khi đã đạt mức 3, ghi lại một cách giải khác và so sánh độ đơn giản, khả năng kiểm chứng và giới hạn của hai phương án.
Lưu bằng chứng
Tạo bảng gồm ca thử, đầu vào, kết quả mong đợi, kết quả thực tế và kết luận. Chỉ đánh dấu hoàn thành sau khi từng tiêu chí có kết quả quan sát được; bài tự kiểm tra này không tự chấm điểm và không cấp chứng chỉ.