Phase 17: Infrastructure & Production

خدمات LLM چند منطقه ای و محل ذخیره سازی KV

تعادل بار راوند رابین فعالانه برای نتیجه گیری LLM ذخیره شده مضر است. یک درخواست که در گره ای که پیشگویی آن را نگه دارد فرود نمی آید هزینه کامل پر کردن را پرداخت می کند تقریباً 800 ms در P50 در یک پیام کوتاه طولانی در مقابل ~ 80 ms با ضربه کش. در سال 2026 الگوی تولید یک روتر آگاه از کش (vLLM Router in Rust، llm-d router) است که رویدادهای KV-cache و مسیرهای مربوط به پیشگویی-هاش را مصرف می کند. تحقیقات اخیر (GORGO) باعث می شود که تاخیر شبکه های بین منطقه ای یک اصطلاح صریح در هدف رویت باشد. پیشنهادات تجاری "تبلیغات بین منطقه" (تبلیغات بین منطقه Bedrock، دروازه های چندگروه GKE) تبلیغات را به عنوان نامشفق می دانند آنها در مورد دسترسی، نه TTFT، مدیریت می کنند. "ج.پي.مorgan" و "مايو کلينيک" در نوامبر 2024 با 22 دقيقه از "مشرق-1" بازيابي کرد واقعیت DR: 32 درصد از شکست های LLM DR به این دلیل است که تیم ها وزن پشتیبان می گیرند اما فایل های توکن یا تنظیمات کوانتاسیون را فراموش می کنند.

Type: Learn

Languages: Python (stdlib, toy prefix-cache-aware router simulator)

Prerequisites: Phase 17 · 04 (vLLM Serving), Phase 17 · 06 (SGLang RadixAttention)

Time: ~60 minutes

اهداف یادگیری

  • توضیح دهید که چرا تعادل بار را به صورت دور و عقب از نتیجه گیری ذخیره شده و مجازات TTFT را مقداری کنید.
  • یک روتر آگاه از کیش را نمودار کنید: ورودی (حوادث کیش KV) ، الگوریتم (مقابله پیش فرض هاش) ، ربط شکافی (استفاده از GPU).
  • راننده 32٪ DR شکست برای LLMs (فایل های توکنایزر / پیکربندی های کوانتزیشن گم شده) را نام دهید و یک لیست چک DR سه فایل را بیان کنید.
  • ارائه های تجاری بین منطقه ای (Bedrock CRI، GKE Multi-Cluster Gateway) را از رویتینگ KV آگاه تر کنید.

مشکل

خدمات شما در US-East-1، US-West-2 و EU-West-1 اجرا می شود. شما ALB را با round-robin در جلو قرار می دهید. نرخ ضربه پیش فرض در تولید به 8 درصد کاهش می یابد. TTFT P50 سه برابر می شود. ثبت نام vLLM شما نشان می دهد که هر درخواست هزینه کامل پر کردن را پرداخت می کند.

راوند رابین برای خدمات بی کشور مطلوب است. نتیجه گیری LLM با طراحی حالت است حافظه کش KV همه چیز را که مدل دیده است رمزگذاری می کند. روتینگ ناب به سمت حافظه کش اشتباه است.

به طور جداگانه، تیم شما یک برنامه DR دارد. شما وزن مدل را به S3 در منطقه های مختلف پشتیبان می گیرید. یک قطع منطقه ای رخ می دهد؛ شما تلاش می کنید شکست دهید؛ نسخه شروع نمی شود. شما tokenizer.json، پیکربندی کوانتاسیون و پیکربندی مقیاس RoPE را فراموش کرده اید که در یک سطل جداگانه ای قرار داده اید که هم وقت سازی نکرده اید.

خدمات LLM چند منطقه ای یک مشکل پیشگیری از داده، یک مشکل مسیر و یک مشکل بهداشت DR است نه یک مشکل تعادل بار.

مفهوم

راه اندازی با آگاهی از کیش

درخواست با یک پرامپت می آید. روتر پیشگویی را هاش می کند (بگو، اولین 512 توکن) ؛ از هر نسخه "آیا این پیشگویی ذخیره شده است؟" می پرسد. نسخه ها رویدادهای KV-کاش را در یک کانال pub / sub منتشر می کنند زیرا آنها بلوک ها را اختصاص می دهند و اخراج می کنند. روتر نسخه را با مطابقت انتخاب می کند، اگر هیچ کس انجام ندهد، به tie-breaker مبتنی بر GPU می افتد.

vLLM Router(Rust، 2026 تولید-پاک): اشتراک گذاری برای kv.cache.block_addedدر واقع، این برنامه به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام است، به عنوان یک برنامه ای که در حال انجام می شود.

llm-d router: همان الگوی، Kubernetes بومی. از طریق ControlPlane API رویدادها را منتشر می کند.

SGLang RadixAttention(فاز 17 · 06) معادل درون رپلیکا است.

اعداد

TTFT P50 در یک پیام 2K، Llama 3.3 70B FP8، H100:

  • ضربه ذخیره سازی (مثل نسخه، پیشگویی مستقر): ~80 ms.
  • گمشده شدن حافظه (پرداخت سرد): ~ 800 ms.

10x فاصله. اگر روتر شما 60-80% از پیش فرض حافظه را در سراسر نسخه ها، شما عملکرد تک نسخه را در ظرفیت N-replica تخمین می دهید. اگر 10٪ را به دست آورد، شما مقیاس ساده را تخمین می دهید.

منطقه های مختلف محدودیت جدیدی دارند

RTT بین منطقه:

  • US-East-1 US-West-2: ~65 ms
  • US-East-1 eu-west-1: ~75 ms
  • US-East-1 ap-southeast-1: ~ 220 ms

اگر مسیر یک درخواست از us-east-1 به یک پیشگویی داغ در ap-southeast-1 منتقل شود، پر کردن ذخیره شده (800 → 80 ms) با 440 ms دور و عقب کوچک می شود. GORGO (2026 تحقیق) این را واضح می کند حداقل کنید prefill_time + network_latencyاغلب پاسخ این است که مسیر را به صورت منطقه ای ادامه دهید مگر در پیشگویی های متعدد MB که در آن پیشگویی غالب است.

"تبصیر بین منطقه" تجاری در این زمینه کمک نمی کند

نتیجه گیری بین منطقه AWS Bedrock در هنگام فشار ظرفیت به طور خودکار درخواست ها را به مناطق دیگر هدایت می کند. این قابلیت را بهینه می کند، نه TTFT، و نتیجه گیری را غیر شفاف می کند. دروازه GKE Multi-Cluster همان سطح سرویس است، هیچ آگاهی از کیش KV نیست.

شما هنوز هم نیاز به یک برنامه لایه کش روتر حتی زمانی که از این استفاده می کنید. آنها در مورد "US-East-1 در آتش است" کار می کنند. روتر کش آگاه در مورد TTFT کار می کند.

بهداشت DR مشکل فایل های گمشده 32٪

آمار 2026 که به طور گسترده ای نقل شده است: 32 درصد از شکست های LLM DR به این دلیل اتفاق می افتد که تیم ها وزن پشتیبان می گیرند اما فراموش می کنند:

  • tokenizer.jsonیاtokenizer.model
  • تنظیمات کوانتزی (quantize_config.json, مقیاس AWQ, GPTQ نقاط صفر)
  • پیکربندی های خاص مدل (مقايض RoPE، ماسک توجه، قالب های چت)
  • پیکربندی موتور (vllm_config.yaml، نمونه گیری پیش فرض، آداپتور LoRA manifests)

اصلاح شده یک 3 فایل حداقل DR manif:

  1. تمام فایل ها تحت مدل HF repo (وزن + تنظیمات + توکن)
  2. تنظیمات مخصوص موتور
  3. مانیست انتشار (K8s YAML، Dockerfile، قفل وابستگی)

و علاوه بر اين، هر سه ماهه تمرینات DR رو انجام بده. تمرینات JPMorgan us-east-1 در نوامبر 2024 22 دقيقه بهبودي يافت فقط بخاطر اينکه کتاب بازي را تمرين کرد.

اقامت داده ها ارتگونال است

PHI مشتری اتحادیه اروپا نمی تواند اتحادیه اروپا را ترک کند. اگر روتر شما یک درخواست با اصل پاریس را به us-east-1 برای مطابقت پیش فرض ارسال کند، شما GDPR را بدون توجه به افزایش TTFT نقض کرده اید. روترها را قبل از بهینه سازی برای کش به حد اقامت تقسیم کنید.

شماره هایی که باید به یاد داشته باشی

  • فاصله Cache hit vs miss TTFT: ~ 10x (80 ms vs 800 ms در 2K prompt).
  • RTT بین منطقه ایالات متحده- اتحادیه اروپا: ~75 ms.
  • شکست DR: 32 درصد از توکنایزر/کوانتوم ها را از دست داده اند.
  • JPMorgan us-east-1 failover نوامبر 2024: 22 دقیقه (30 دقیقه SLA).

ازش استفاده کن

code/main.pyشبیه سازی سه استراتژی رویتینگ (رووند رابین، منطقه ای آگاه از کش، جهانی آگاه از کش) در یک بار کاری چند منطقه. گزارش نرخ ضربه کش، TTFT P50/P99 و بیل بین منطقه.

-باده

این درس به ما کمک می کندoutputs/skill-multi-region-router.mdبا توجه به مناطق، محدودیت های اقامت و SLA، یک برنامه مسیر را طراحی می کند.

تمرینات

  1. فرار کنcode/main.pyدر چه طول فوری رویتینگ بین منطقه از رویتینگ فقط محلی، با توجه به 75 ms RTT، بیشتر می شود؟
  2. نرخ ضربه هاي حافظه ي شما از 70 درصد به 12 درصد کاهش مياد.
  3. یک مانیست DR برای مدل 70B AWQ- کوانتزی که در vLLM با 5 آداپتور LoRA ارائه می شود طراحی کنید. هر فایل و پیکربندی را لیست کنید.
  4. بحث کنید که آیا نتیجه گیری بین منطقه بیدروک برای یک فن تکنالوژی با SLO TTFT سختگیرانه "فቂده" است. رفتار های خاص را ذکر کنید.
  5. درخواستي که از پاریس اومده با يک پيشگويي در شرق آمريکا مطابقت داره

اصطلاحات کلیدی

TermWhat people sayWhat it actually means
Cache-aware routing"smart LB"Route on prefix-hash match to KV-cache-holding replica
KV-cache events"cache pub-sub"Replicas publish block add/evict; router indexes
Prefix hash"cache key"Hash of first N tokens used as router lookup
GORGO"cross-region routing research"arXiv 2602.11688; network latency as explicit term
Cross-region inference"Bedrock CRI"AWS product; availability failover, not TTFT awareness
DR manifest"the backup list"Every file needed to restore — not just weights
Data residency"GDPR boundary"Legal constraint on which region sees user data
RTT"round-trip time"Network latency; 75 ms US-EU, 220 ms US-APAC
LLM-aware LB"cache-hit LB"Cache-aware router as a product category

خواندن بیشتر

This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.

Browse the complete course catalog or open this lesson on GitHub.