สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น
แยกการส่งข้อมูล ตัวจัดการ และตรรกะทางธุรกิจออกจากกัน
สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น เป็นบทเรียน MCP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MCP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดไฟล์ใหญ่ไฟล์เดียวจึงเป็นปัญหา
เซิร์ฟเวอร์ที่ยัดทุกอย่างไว้ในไฟล์เดียวจะผสมการรับส่งข้อมูล ตรรกะเครื่องมือ และการเรียกข้อมูลเข้าด้วยกัน เมื่อเติบโตขึ้น การเปลี่ยนแปลงทุกครั้งก็เสี่ยงทำให้ส่วนที่อยู่ห่างไกลเสียหาย
คิดเป็นชั้น
เซิร์ฟเวอร์ที่เป็นระเบียบควรแบ่งเป็น ชั้น: ชั้นรับส่งข้อมูลอยู่ขอบนอก ตัวจัดการ MCP อยู่ตรงกลาง และตรรกะทางธุรกิจล้วนอยู่ด้านล่าง
ชั้นรับส่งข้อมูล
ชั้น รับส่งข้อมูล ด้านนอกมีหน้าที่เคลื่อนย้ายข้อความผ่าน stdio หรือ HTTP เท่านั้น ไม่ควรรู้ว่าเครื่องมือของคุณทำงานอย่างไร
ตัวจัดการคืออะแดปเตอร์แบบบาง
ตัวจัดการ เครื่องมือและทรัพยากรควรมีขนาดเล็ก ได้แก่ แยกวิเคราะห์อาร์กิวเมนต์ เรียกบริการ และจัดรูปผลลัพธ์ อย่าใส่การทำงานจริงไว้ในตัวจัดการ
@mcp.tool()
def summarize(text: str) -> str:
return service.summarize(text)ชั้นบริการทำงานจริง
ใส่ตรรกะจริงไว้ในโมดูล บริการ ธรรมดาที่ไม่มีการนำเข้า MCP โมดูลนี้เป็นเพียง Python ปกติที่คุณเรียกจากที่ใดก็ได้
def summarize(text: str) -> str:
return shorten(clean(text))เหตุใดการแบ่งจึงคุ้มค่า
เมื่อแยกตรรกะออกจาก MCP แล้ว คุณสามารถ ทดสอบ ได้โดยไม่ต้องเปิดเซิร์ฟเวอร์ และนำกลับมาใช้ใน CLI หรือแอปเว็บภายหลังได้
การพึ่งพาชี้เข้าด้านใน
รักษากฎทางเดียวไว้: ตัวจัดการอาจนำเข้าบริการได้ แต่บริการต้องไม่เคยนำเข้า ตัวจัดการ หรือชั้นรับส่งข้อมูลที่อยู่เหนือขึ้นไป
หนึ่งโฟลเดอร์ต่อหนึ่งหน้าที่
จับคู่ชั้นต่าง ๆ กับโฟลเดอร์ เพื่อให้ โครงสร้าง บอกภาพรวมได้ชัดเจน: จุดเริ่มต้นเซิร์ฟเวอร์ ตัวจัดการ บริการ และแบบจำลองควรมีที่อยู่ของตนเอง
src/
server.py
handlers/
services/
models.pyลงทะเบียน อย่านิยาม ในจุดเริ่มต้น
server.py ของคุณควรเชื่อมตัวจัดการเข้ากับอินสแตนซ์ FastMCP ไม่ใช่เก็บตรรกะไว้ในนั้น จุดนี้เป็นจุดประกอบส่วนต่าง ๆ ไม่ใช่ผู้ลงมือทำงาน
from handlers import register_tools
register_tools(mcp)ตัวช่วยที่ใช้ข้ามส่วนควรใช้ร่วมกัน
การบันทึก การตั้งค่า และการตรวจสอบความถูกต้องเป็นข้อกังวลที่ ใช้ร่วมกัน ควรจัดไว้ในโมดูลกลาง เพื่อให้ทุกชั้นใช้ตัวช่วยเดียวกัน
เติบโตได้โดยไม่ต้องเขียนใหม่
การแบ่งชั้นช่วยให้เซิร์ฟเวอร์ ขยายขนาด ได้ เพียงเพิ่มเครื่องมือใหม่ด้วยการเพิ่มตัวจัดการและบริการ โดยไม่ต้องแตะส่วนอื่น
ตรวจสอบอย่างรวดเร็ว
ตรรกะทางธุรกิจจริงของเครื่องมือควรอยู่ที่ใด
สรุป: การออกแบบแบบแบ่งชั้น
แบ่งเซิร์ฟเวอร์ของคุณเป็น ชั้นรับส่งข้อมูล ตัวจัดการแบบบาง และบริการล้วน โดยให้การพึ่งพาชี้เข้าด้านใน ต่อไป: การตั้งค่า 🧱
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MCP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น”
แยกการส่งข้อมูล ตัวจัดการ และตรรกะทางธุรกิจออกจากกัน คุณปฏิบัติ MCP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MCP Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน MCP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน MCP Academy นี้ได้ไหม
ได้ บทเรียน MCP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สถาปัตยกรรมเซิร์ฟเวอร์แบบแบ่งชั้น
- การกำหนดค่าและข้อมูลลับผ่านสภาพแวดล้อม
- เครื่องมือที่ทำซ้ำได้อย่างปลอดภัยและคำนึงถึงผลข้างเคียง
- การกำหนดรุ่นเครื่องมือและโครงสร้างข้อมูล