# مشخصات درس‌نامه: بررسی موردی اسنپ؛ مدیریت میلیون‌ها سفر روزانه، سیستم‌های دیسپچ و تاب‌آوری بلادرنگ - **شناسه در سیلابس:** `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. **کال‌اوت‌های آموزشی و الهام‌بخش کوئرا:** * کال‌اوت بنفش (`
`): مفهوم شاخص مکانی H3 ابداعی Uber و نحوه تقسیم شهر به شش‌ضلعی‌های فضایی برای محاسبات فوق‌سریع هوش مصنوعی. * کال‌اوت سبز (`
`): تقاضای رو به رشد تیم‌های فنی اسنپ برای جذب مهندسانی که ذهنیت سیستم‌های توزیع‌شده و تسلط بر ابزارهای هوش مصنوعی دارند. * کال‌اوت قرمز (`
`): اهمیت مانیتورینگ بلادرنگ؛ در سیستمی مانند اسنپ، حتی ۵ ثانیه تاخیر در پاسخ سرور می‌تواند منجر به لغو هزاران سفر شود. ### آنچه نباید وارد آن شویم (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 (`
`):** استفاده از ارتباطات وب‌سوکت دوطرفه (Full-Duplex WebSockets) به جای رفرش مداوم صفحات؛ درسی بزرگ برای ساخت برنامه‌های زنده. 11. **باکس هشدار Quera (`
`):** خطرات وابستگی به جی‌پی‌اس خام؛ همیشه داده‌های مکانی موبایل نیازمند فیلتر کردن نویزها و پرش‌های ناگهانی نقشه هستند. 12. **باکس رضایت‌بخش Quera (`
`):** دیدن عظمت سیستم‌هایی که مهندسان جوان ایرانی در اسنپ ساخته‌اند و الهام‌گیری از استانداردهای مهندسی مقیاس کلان. 13. **جمع‌بندی درس‌نامه:** پایان کالبدشکافی اسنپ؛ ورود به ایستگاه بررسی موردی کافه‌بازار (بررسی خودکار اپلیکیشن‌ها و امنیت استور) در درس بعدی. --- ## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer) - [ ] چالش‌های مقیاس کلان پلتفرم اسنپ به همراه اعداد و ارقام واقعی بیان شود. - [ ] مکانیزم‌های دیسپچ، نمایه‌سازی فضایی H3 و پیش‌بینی ETA به زبان ساده تشریح گردند. - [ ] نحوه استفاده مهندسان اسنپ از ابزارهای هوش مصنوعی در پایش کافکا و کدنویسی همزمان آموزش داده شود. - [ ] درس‌های معماری تاب‌آور و Real-time برای دانشجویان دوره ارائه گردد.