0Pricing
MLOps Academy · บทเรียน

เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health

แจ้งตัวจัดการระบบเมื่อบริการของคุณพร้อมให้บริการ

เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health เป็นบทเรียน MLOps Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MLOps Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MLOps Academy มีบทเรียนทั้งหมด 4 บทเรียน

คลัสเตอร์รู้ได้อย่างไร

เครื่องมือจัดการระบบอย่าง Kubernetes ต้องมีวิธีถามบริการของคุณว่า ยังทำงานอยู่หรือไม่ และพร้อมรับ traffic หรือไม่ endpoint health จะตอบคำถามนี้ 🩺

Liveness กับ Readiness

Liveness ตรวจสอบว่าโพรเซสกำลังทำงานอยู่หรือไม่ ส่วน Readiness ตรวจสอบว่าสามารถให้บริการคำขอได้จริงแล้วหรือยัง ทั้งสองอย่างเป็นคำถามคนละข้อกัน

เส้นทางตรวจสอบสถานะอย่างง่าย

การตรวจสอบที่ง่ายที่สุดคือ GET /health ซึ่งส่งคืนค่า ok หากโพรเซสตอบกลับได้ ก็ถือว่ายังทำงานอยู่เป็นอย่างน้อย

@app.get("/health")
def health():
    return {"status": "ok"}

Readiness ต้องใช้โมเดล

สำหรับ ML การทำงานอยู่เพียงอย่างเดียวยังไม่พอ การตรวจสอบ readiness ที่แท้จริงต้องยืนยันว่าโหลดโมเดลเสร็จแล้วก่อนรับ traffic สำหรับการทำนาย

ตรวจสอบโมเดลที่โหลดแล้ว

คุณตรวจสอบ app.state เพื่อดูว่ามีโมเดลอยู่หรือไม่ หากยังเป็น None แสดงว่าบริการยังไม่พร้อม

ready = app.state.model is not None

แจ้งว่ายังไม่พร้อมด้วย 503

เมื่อยังไม่ได้โหลดโมเดล ให้ส่งคืนสถานะ 503 เพื่อให้เครื่องมือจัดการระบบชะลอ traffic ไว้จนกว่าคุณจะพร้อม

from fastapi import HTTPException

raise HTTPException(status_code=503)

ประกอบทุกอย่างเข้าด้วยกัน

เส้นทาง /ready จะตรวจสอบโมเดลและส่งคืนค่า ready หรือส่งข้อผิดพลาด 503 การตรวจสอบนี้ยังคง รวดเร็ว และไม่มีงานหนัก

@app.get("/ready")
def ready(req: Request):
    if req.app.state.model is None:
        raise HTTPException(503)
    return {"ready": True}

เชื่อมต่อโพรบ

ใน Kubernetes ให้ชี้ readinessProbe ไปที่ /ready และชี้ livenessProbe ไปที่ /health แพลตฟอร์มจะเรียกตรวจสอบตามกำหนดเวลา

ทำให้การตรวจสอบเบา

โพรบทำงานบ่อย ดังนั้นการตรวจสอบสถานะต้องมีต้นทุน ต่ำ อย่าเรียกใช้การอนุมานจากโมเดลจริงหรือเชื่อมต่อฐานข้อมูลที่ช้าภายในนั้น

ปรับใช้โดยไม่หยุดให้บริการอย่างราบรื่น

การตรวจสอบ Readiness ทำให้สามารถอัปเดตแบบทยอยเปลี่ยนได้ โดยพ็อดใหม่จะได้รับ traffic เมื่อ ready แล้วเท่านั้น ผู้ใช้จึงไม่พบอินสแตนซ์ที่เริ่มทำงานไม่เสร็จ 🚦

เหตุผลที่เรื่องนี้สำคัญ

Endpoint health และ readiness ทำให้บริการโมเดลของคุณเป็น สมาชิกที่ดี ในทุกคลัสเตอร์ และช่วยให้ปรับขนาด เริ่มต้นใหม่ และปรับใช้ได้อย่างปลอดภัย ✅

ตรวจสอบอย่างรวดเร็ว

โมเดลของคุณยังโหลดไม่เสร็จและ readiness probe เรียก /ready endpoint ควรส่งคืนอะไร

ทบทวน

คุณแยก liveness ออกจาก readiness ส่งคืน 503 จนกว่าโมเดลจะโหลดเสร็จ และเชื่อมต่อโพรบเพื่อการปรับใช้อย่างปลอดภัย บริการของคุณพร้อมทำงานในคลัสเตอร์แล้ว! 🙌

คำถามที่พบบ่อย

บทเรียน “เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MLOps Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MLOps Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health”

แจ้งตัวจัดการระบบเมื่อบริการของคุณพร้อมให้บริการ คุณปฏิบัติ MLOps Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MLOps Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน MLOps Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน MLOps Academy นี้ได้ไหม

ได้ บทเรียน MLOps Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ปลายทาง /predict แรกของคุณ
  2. ตรวจสอบคำขอด้วย Pydantic
  3. โหลดโมเดลเพียงครั้งเดียวตอนเริ่มต้น
  4. เพิ่มการตรวจสอบความพร้อมใช้งานที่ /health
← กลับไปที่ MLOps Academy