Files
vibe-coding-college-specs/chapters/16-future-path/03-lesson-case-study-snapp/spec.md

13 KiB
Raw Blame History

مشخصات درس‌نامه: بررسی موردی اسنپ؛ مدیریت میلیون‌ها سفر روزانه، سیستم‌های دیسپچ و تاب‌آوری بلادرنگ

  • شناسه در سیلابس: L16.3b
  • فصل: فصل ۱۶: ادامه راه (Ch 16)
  • نوع محتوا: 📘 درس‌نامه متنی
  • زمان تقریبی مطالعه: ۱۸ دقیقه
  • پیش‌نیازهای مستقیم: L16.3a (بررسی موردی دیجی‌کالا)

۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)

دانشجو پس از مطالعهٔ این درس‌نامه باید بتواند:

  • درک کند (Understand): معماری سیستم‌های توزیع‌شده فوق‌پرترافیک در سوپراپلیکیشن اسنپ (پردازش بیش از ۵ میلیون سفر و تراکنش روزانه در بیش از ۱۵۰ شهر) را شرح دهد.
  • تحلیل/ارزیابی کند (Evaluate): کاربردهای هوش مصنوعی و یادگیری ماشین در اسنپ شامل: موتور تطبیق و تخصیص راننده به مسافر (Dispatch Engine)، تخمین زمان رسیدن (ETA Prediction)، و تشخیص خودکار تقلب (Fraud Detection) را ارزیابی نماید.
  • درک کند (Understand): چگونه تیم‌های مهندسی اسنپ از ایجنت‌های هوش مصنوعی برای تولید پروتکل‌های ارتباطی پرسرعت (gRPC / Protobuf)، ممیزی لاگ‌های استریم کافکا (Kafka) و نگهداری کدهای با همزمانی بالا (Concurrency) استفاده می‌کنند.
  • به‌کار ببندد (Apply): اصول تاب‌آوری در برابر بار لحظه‌ای، مدیریت سوکت‌های بلادرنگ (Real-time WebSockets)، و بهینه‌سازی ارتباطات شبکه را در معماری پروژه‌های خود لحاظ کند.

۲. محدوده و مرزهای محتوا (Scope & Boundaries)

آنچه باید پوشش داده شود (In-Scope):

  1. مقیاس ماورایی اسنپ: قلب تپنده حمل‌ونقل شهری ایران:
    • مدیریت میلیون‌ها مسافر و صدها هزار راننده همزمان آنلاین که هر ثانیه مختصات جغرافیایی (GPS) خود را به سرور مخابره می‌کنند.
  2. محور اول هوش مصنوعی: موتور دیسپچ و تطبیق هوشمند (Intelligent Dispatch):
    • چرا اختصاص نزدیک‌ترین راننده از نظر خط مستقیم لزوماً بهترین انتخاب نیست؟ (ترافیک، جهت حرکت، موانع یک‌طرفه).
    • شبکه‌بندی جغرافیایی فضایی (Geohash / H3 Grid) و استفاده از الگوریتم‌های بهینه‌سازی برای تطبیق دسته‌ای درخواست‌ها در کسری از ثانیه.
  3. محور دوم هوش مصنوعی: تخمین زمان رسیدن به مقصد (ETA Prediction):
    • ترکیب داده‌های زنده ترافیک، الگوهای تاریخی حرکت در روزهای بارانی و ساعت‌های پیک با مدل‌های یادگیری عمیق برای تخمین دقیق زمان سفر.
  4. محور سوم هوش مصنوعی: سپر امنیتی و کشف تقلب (Fraud & Anomaly Detection):
    • کشف رفتارهای غیرعادی رانندگان (مثل سفرهای صوری برای دریافت پاداش، جعل مختصات GPS Spoofing، یا حساب‌های جعلی) با مدل‌های بدون نظارت.
  5. محور چهارم: مهندسی نرم‌افزار با ایجنت‌های AI در تیم‌های فنی اسنپ:
    • نوشتن کدهای پرهمزمانی با زبان‌های Go و Elixir و استفاده از ابزارهای هوش مصنوعی برای تولید اسکیماهای gRPC.
    • پایش بلادرنگ صف‌های پیام کافکا (Apache Kafka) و استفاده از ایجنت‌ها برای ریشه‌یابی آنی تاخیرها (Lag Analysis).
    • تولید خودکار تست‌های تنش و شبیه‌سازی ترافیک سنگین بار برای اطمینان از تاب‌آوری سیستم‌ها در روزهای برفی.
  6. درس‌های طلایی اسنپ برای یک وایب کدر:
    • مدیریت وضعیت‌های زنده (Real-time State)؛ چرا هر درخواستی نباید مستقیم به دیتابیس کوئری بزند و اهمیت لایه‌های کش موقت.
  7. کال‌اوت‌های آموزشی و الهام‌بخش کوئرا:
    • کال‌اوت بنفش (<details class="violet">): مفهوم شاخص مکانی H3 ابداعی Uber و نحوه تقسیم شهر به شش‌ضلعی‌های فضایی برای محاسبات فوق‌سریع هوش مصنوعی.
    • کال‌اوت سبز (<details class="green">): تقاضای رو به رشد تیم‌های فنی اسنپ برای جذب مهندسانی که ذهنیت سیستم‌های توزیع‌شده و تسلط بر ابزارهای هوش مصنوعی دارند.
    • کال‌اوت قرمز (<details class="red">): اهمیت مانیتورینگ بلادرنگ؛ در سیستمی مانند اسنپ، حتی ۵ ثانیه تاخیر در پاسخ سرور می‌تواند منجر به لغو هزاران سفر شود.

آنچه نباید وارد آن شویم (Out-of-Scope):

  • فرمول‌های ریاضی پیچیده الگوریتم‌های بهینه‌سازی کولونی مورچه‌ها.
  • جزییات محرمانه سورس‌کدهای داخلی شرکت اسنپ.

۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)

اصطلاح انگلیسی معادل فارسی مصوب توضیح یک‌خطی ساده
Dispatch Engine موتور تخصیص و دیسپچ سیستم محاسباتی مرکزی که بر اساس فاصله، ترافیک و موقعیت، درخواست مسافر را به بهترین راننده واگذار می‌کند
ETA (Estimated Time of Arrival) زمان تخمینی رسیدن محاسبه پیش‌بینانه دقیق لحظه رسیدن راننده به مبدأ یا رسیدن خودرو به مقصد بر پایه ترافیک زنده
GPS Spoofing جعل مختصات ماهواره‌ای ترفند فریبکارانه دستکاری نرم‌افزاری موقعیت مکانی گوشی برای تظاهر به حضور در منطقه‌ای دیگر
Concurrency همزمانی پردازش توانایی سیستم نرم‌افزاری در پردازش مستقل و همزمان هزاران درخواست بدون ایجاد صف انتظار
Spatial Indexing (H3) نمایه‌سازی فضایی جغرافیایی روش تقسیم‌بندی نقشه زمین به سلول‌های شش‌ضلعی هندسی برای تسریع الگوریتم‌های موقعیت‌یابی

۴. جایگاه‌های تصاویر و نمودارها (Visual & Diagram Placeholders)

راهنمای ایجنت نویسنده: تمام تصاویر باید در پوشهٔ images/ ذخیره شده و در جدول تک‌خانه‌ای وسط‌چین درج شوند:

  1. تصویر کاور درس: images/cover.png
    • موضوع: نقشه تاریک و نئونی شهر با نقاط نورانی بی‌شمار خودروها، مسیرهای سبز و نارنجی ترافیک و شبکه‌های شش‌ضلعی هوشمند اسنپ.
  2. چرخه تخصیص هوشمند راننده با شبکه شش‌ضلعی H3: images/snapp-dispatch-h3-grid.png
    • موضوع: اینفوگرافیک: مسافر درخواست می‌دهد \rightarrow تقسیم نقشه به سلول‌های شش‌ضلعی \rightarrow فیلتر رانندگان فعال \rightarrow اولویت‌بندی بر اساس ترافیک و زمان رسیدن \rightarrow ارسال درخواست به گوشی راننده.
  3. معماری پایش بلادرنگ با کافکا و ایجنت‌های هوش مصنوعی: images/snapp-kafka-telemetry-architecture.png
    • موضوع: دیاگرام توزیع داده: صدها هزار کلاینت موبایل \rightarrow سرورهای وب‌سوکت \rightarrow صف کافکا \rightarrow آنالیزور بلادرنگ لاگ‌ها با ایجنت \rightarrow داشبورد هشدار مهندسان.
  4. داشبورد پایش بلادرنگ خطاهای شبکه در اسنپ: images/snapp-monitoring-metrics-screen.png
    • موضوع: اسکرین‌شات از داشبورد گرافیکی مانیتورینگ با نمودار سفرها در ثانیه (Rides Per Second) و نشانگرهای سلامت دیتاسنترها.

۵. بخش‌بندی و ساختار محتوایی پیشنهادی درس‌نامه (README.md)

  1. تیتر اصلی: # بررسی موردی اسنپ؛ مدیریت میلیون‌ها سفر روزانه، سیستم‌های دیسپچ و تاب‌آوری بلادرنگ
  2. مقدمه: وقتی میلیون‌ها انسان هر روز برای رسیدن به کار و خانه به یک اپلیکیشن اعتماد می‌کنند، مهندسی نرم‌افزار و هوش مصنوعی چگونه چراغ شهر را روشن نگه می‌دارند؟
  3. جدول کاور درس
  4. مقیاس مهندسی اسنپ: شهری که هرگز نمی‌خوابد:
    • پردازش ۵ میلیون سفر روزانه، ارسال ثانیه‌ای مختصات جی‌پی‌اس و مدیریت همزمانی فوق‌العاده بالا.
  5. موتور هوشمند دیسپچ: هنر جفت کردن مسافر و راننده در کسری از ثانیه:
    • چرا فاصله مستقیم خط‌کشی فریبنده است؟ استفاده از شبکه‌بندی شش‌ضلعی H3.
  6. پیش‌بینی زمان رسیدن (ETA) با یادگیری ماشین:
    • چطور اسنپ ترافیک ساعت ۵ عصر اتوبان همت را در هوای بارانی پیش‌بینی می‌کند؟
  7. کشف خودکار تقلب و تخلفات (Anti-Fraud Systems):
    • شناسایی رانندگانی که با نرم‌افزارهای جعلی موقعیت خود را دستکاری می‌کنند.
  8. مهندسی با ایجنت‌های AI در قلب تیم‌های فنی اسنپ:
    • نوشتن سرویس‌های پرسرعت Go و Elixir و رصد صف‌های سنگین کافکا با دستیاران هوش مصنوعی.
  9. درس‌های اسنپ برای سازندگان وایب کدینگ:
    • اهمیت تفکیک کارهای سنگین محاسباتی از جریان اصلی دیتابیس و بهره‌گیری از معماری Event-Driven.
  10. باکس نکته Quera (<details class="violet">): استفاده از ارتباطات وب‌سوکت دوطرفه (Full-Duplex WebSockets) به جای رفرش مداوم صفحات؛ درسی بزرگ برای ساخت برنامه‌های زنده.
  11. باکس هشدار Quera (<details class="red">): خطرات وابستگی به جی‌پی‌اس خام؛ همیشه داده‌های مکانی موبایل نیازمند فیلتر کردن نویزها و پرش‌های ناگهانی نقشه هستند.
  12. باکس رضایت‌بخش Quera (<details class="green">): دیدن عظمت سیستم‌هایی که مهندسان جوان ایرانی در اسنپ ساخته‌اند و الهام‌گیری از استانداردهای مهندسی مقیاس کلان.
  13. جمع‌بندی درس‌نامه: پایان کالبدشکافی اسنپ؛ ورود به ایستگاه بررسی موردی کافه‌بازار (بررسی خودکار اپلیکیشن‌ها و امنیت استور) در درس بعدی.

۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)

  • چالش‌های مقیاس کلان پلتفرم اسنپ به همراه اعداد و ارقام واقعی بیان شود.
  • مکانیزم‌های دیسپچ، نمایه‌سازی فضایی H3 و پیش‌بینی ETA به زبان ساده تشریح گردند.
  • نحوه استفاده مهندسان اسنپ از ابزارهای هوش مصنوعی در پایش کافکا و کدنویسی همزمان آموزش داده شود.
  • درس‌های معماری تاب‌آور و Real-time برای دانشجویان دوره ارائه گردد.