MCP Deployment: ஹோஸ்டிங்கின் உண்மையான செலவு

பெரும்பாலான பயிற்சிகள் (tutorials) ஒரு MCP சர்வரை உள்ளூர் முறையில் (locally) எவ்வாறு உருவாக்குவது என்பதைக் காட்டுகின்றன. அவை endpoints மற்றும் authentication பற்றி உங்களுக்குக் கற்பிக்கின்றன. ஆனால் உங்கள் சர்வரை 24/7 எவ்வாறு இயங்க வைப்பது என்பதை அவை கற்பிப்பதில்லை.

எனது தனிப்பட்ட அறிவுத் தளத்திற்காக (personal knowledge base) ஒரு MCP சர்வரை உருவாக்க நான் மூன்று மாதங்கள் செலவிட்டேன். Deployment தான் உண்மையான சிரமங்கள் தொடங்கும் இடம் என்பதை நான் கஷ்டப்பட்டு கற்றுக்கொண்டேன்.

உங்கள் AI உதவியாளர்கள் மொபைல், இணையம் அல்லது கிளவுட் கிளையண்ட்கள் மூலம் செயல்பட வேண்டுமென்றால், நீங்கள் localhost-ஐ மட்டும் நம்பியிருக்க முடியாது. நீங்கள் ஒரு பொதுவான ஹோஸ்டிற்கு (public host) deployment செய்ய வேண்டும்.

உண்மையான தயாரிப்புச் சோதனைகளின் (production testing) அடிப்படையில் ஹோஸ்டிங் விருப்பங்களின் எனது பகுப்பாய்வு இதோ:

  • Heroku நன்மைகள்: எளிதான deployment மற்றும் தானியங்கி HTTPS. தீமைகள்: இலவசத் திட்டம் (Free tier) 30 நிமிடங்களுக்குப் பிறகு உறக்க நிலைக்குச் (sleep) சென்றுவிடும். இது 10 முதல் 30 வினாடிகள் வரை தாமதத்தை ஏற்படுத்தும். இந்த நேரத்தில் MCP கிளையண்ட்கள் பெரும்பாலும் timeout ஆகி தோல்வியடையும். தீர்ப்பு: 3/10. சோதனைகளுக்கு நல்லது, தினசரி பயன்பாட்டிற்குத் தகுதியற்றது.

  • Fly.io நன்மைகள்: வேகமான deployment மற்றும் உலகளாவிய நெட்வொர்க். உங்கள் கோப்புகளுக்கான persistent volumes-ஐ ஆதரிக்கிறது. தீமைகள்: இலவசத் திட்ட செயலிகள் ஒரு வார கால செயலற்ற நிலைக்குப் பிறகு நின்றுவிடும். அவற்றை இயங்க வைப்பதற்கு உங்களுக்கு ஒரு cron job தேவைப்படும். தீர்ப்பு: 6/10. பெரும்பாலான பயனர்களுக்கு ஒரு சிறந்த தேர்வு.

  • Serverless (எ.கா., Tencent Cloud SCF) நன்மைகள்: குறைந்த டிராஃபிக் (traffic) இருந்தால் மிகவும் மலிவானது. சீனா போன்ற குறிப்பிட்ட பிராந்தியங்களில் இருந்தால் மிகக் குறைந்த லேட்டன்சி (latency) இருக்கும். தீமைகள்: Cold starts சில வினாடிகள் எடுக்கும். நீங்கள் stateless architecture-க்காக வடிவமைக்க வேண்டும். தீர்ப்பு: 7.5/10. குறைந்த பயன்பாடு கொண்ட தனிப்பட்ட பக்கத் திட்டங்களுக்கு (side projects) சிறந்தது.

  • VPS (Virtual Private Server) நன்மைகள்: முழுமையான கட்டுப்பாடு மற்றும் உறக்க நிலைக்குச் செல்லாத சர்வர்கள். கணிக்கக்கூடிய மாதாந்திரச் செலவுகள். தீமைகள்: பாதுகாப்பு, அப்டேட்கள் மற்றும் SSL ஆகியவற்றை நீங்களே நிர்வகிக்க வேண்டும். தீர்ப்பு: பல பயனர்கள் அல்லது அதிக டிராஃபிக் உள்ளவர்களுக்கு சிறந்தது.

பல மணிநேர debugging நேரத்தைச் சேமிக்க மூன்று பாடங்கள்:

  • timeouts-ஐ அமைக்கவும்: MCP கிளையண்ட்கள் பொறுமையற்றவை. உங்கள் தேடல் 10 வினாடிகளுக்கு மேல் எடுத்தால், கிளையண்ட் இணைப்பைத் துண்டித்துவிடும். உங்கள் சர்வர் கான்ஃபிகரேஷனில் (server config) ஒரு கண்டிப்பான connection timeout-ஐ அமைக்கவும்.

  • ஒரு health check-ஐச் சேர்க்கவும்: உங்கள் ஆப் இயங்கிக் கொண்டிருப்பதை அறிய கிளவுட் வழங்குநர்களுக்கு ஒரு வழி தேவை. ஒரு எளிய /health endpoint-ஐ உருவாக்கவும்.

  • CORS-ஐச் சரிசெய்யவும்: Authentication பெரும்பாலும் CORS preflight கோரிக்கைகளைத் (requests) துண்டித்துவிடும். உங்கள் கான்ஃபிகரேஷன், authentication இல்லாமலேயே OPTIONS கோரிக்கைகளை அனுமதிக்கிறதா என்பதை உறுதிப்படுத்தவும்.

எனது பணிப்பாய்வு (workflow):

  1. உள்ளூர் முறையில் உருவாக்கவும் (Build locally).
  2. தொலைதூர கிளையண்ட்களுடன் (remote clients) சோதிக்க ngrok-ஐப் பயன்படுத்தவும்.
  3. நிலைத்தன்மை பெற்றவுடன் Fly.io அல்லது VPS-க்கு deployment செய்யவும்.

Deployment என்பது கவர்ச்சிகரமானது அல்ல, ஆனால் அது அவசியம். உங்கள் AI கிளையண்டால் அதனுடன் இணைய முடியாவிட்டால், ஒரு சிறந்த சர்வர் பயனற்றதுதான்.

உங்கள் MCP சர்வர்களை ஹோஸ்ட் செய்ய நீங்கள் எதைப் பயன்படுத்துகிறீர்கள்? கருத்துகளில் (comments) எனக்குத் தெரியப்படுத்துங்கள்.

Source: https://dev.to/kevinten10/mcp-deployment-what-they-dont-tell-you-about-hosting-your-mcp-server-from-3-months-of-production-nb8

Optional learning community: https://t.me/GyaanSetuAi