گزارش GitHub از هشت اختلال سرویس‌ها در اکتبر ۲۰۲۶

گزارش GitHub از هشت اختلال سرویس‌ها در اکتبر ۲۰۲۶

آنچه در این مقاله مطالعه می‌کنید:

۲۲ آبان ۱۴۰۵

۲۲ آبان ۱۴۰۵

به گزارش GitHub Blog، سرویس‌های GitHub در اکتبر ۲۰۲۶ با هشت اختلال مواجه شدند که به افت عملکرد بخش‌هایی از این پلتفرم انجامید. دامنه پیامدها از تأخیر در GitHub Actions و خطا در عملیات نوشتن تا اختلال در برخی مدل‌های GitHub Copilot را در بر گرفت.

در یکی از مهم‌ترین رویدادها در ۵ اکتبر، اختلال جزئی شبکه در زیرساخت ارائه‌دهنده ابری، ارتباط یک منطقه دیتاسنتری را با پایگاه‌های داده ابری مختل کرد. در نتیجه، صف اجرای کارهای GitHub-hosted runners طولانی شد و در شدیدترین بازه ۹۰ دقیقه‌ای، بیشتر کارها ظرف پنج دقیقه آغاز نشدند. این رویداد بر self-hosted runners اثری نداشت، اما به‌روزرسانی سایت‌های GitHub Pages که با Actions ساخته می‌شدند کند شد؛ نسخه‌های موجود این سایت‌ها همچنان در دسترس بودند.

از پایگاه داده تا GitHub Copilot

در ۶ اکتبر، افزایش ناگهانی فعالیت GitHub Enterprise Importer باعث اجرای پرس‌وجوهای بزرگ روی یک پایگاه داده مشترک شد. در اوج اختلال، حدود ۱.۳ درصد درخواست‌ها با خطا یا پایان زمان انتظار روبه‌رو شدند و حدود ۶.۴ هزار سازمان دست‌کم یک درخواست کند یا ناموفق داشتند. GitHub پس از توقف موقت مهاجرت‌ها، پرس‌وجوها را به بخش‌های کوچک‌تر تقسیم کرد.

دو قطعی جداگانه در ۷ اکتبر نیز عملیات نوشتن را در مجموع حدود ۱۹ دقیقه مختل کرد. تنظیمات مسیریابی قدیمی روی یک ماشین تازه، درخواست‌های نوشتن چند پایگاه داده اصلی را به سرورهای بازنشسته فرستاد. نرخ شکست درخواست‌های وب و API در این دو رخداد به‌ترتیب به ۸.۹ و ۹.۳ درصد رسید.

در رویدادهای بعدی، GitHub Actions در ۱۹ اکتبر با تأخیر در شروع کارها و ثبت وضعیت مواجه شد. دو روز بعد، فشار حافظه در پلتفرم پخش رویدادها، به‌روزرسانی pull requestها، تحویل webhookها و نمایش رویدادهای audit log را عقب انداخت؛ جبران کامل عقب‌ماندگی audit log حدود ۶ ساعت و ۴۶ دقیقه زمان برد.

اقدام‌های اصلاحی GitHub

در ۲۸ اکتبر، نامعتبر شدن یک اعتبارنامه نزد ارائه‌دهنده بالادستی مدل، استفاده از چند مدل خانواده GPT در Copilot را مختل کرد و حدود یک درخواست از هر ۱۰ درخواست مدل‌های درگیر شکست خورد. مدل‌های دیگر فعال ماندند و GitHub با جایگزینی اعتبارنامه، سرویس را بازیابی کرد. در ۳۰ اکتبر نیز پر شدن مخزن اتصال مشترک پایگاه داده، بخشی از درخواست‌های github.com را برای حدود ۹ دقیقه با خطا مواجه کرد؛ در بدترین نقطه حدود ۴۳ درصد تلاش‌های ادغام pull request ناموفق بود.

GitHub اعلام کرده است ظرفیت و تاب‌آوری سرویس تخصیص runner، کنترل بار Enterprise Importer، اعتبارسنجی مسیریابی پایگاه داده، مدیریت اتصال‌ها و پایش خطاهای احراز هویت ارائه‌دهندگان مدل را تقویت می‌کند. این گزارش برای تیم‌های توسعه‌ای که فرایند استقرار، CI/CD یا بازبینی کد خود را به GitHub وابسته کرده‌اند، یادآور ضرورت درنظرگرفتن مسیرهای جایگزین و امکان تلاش مجدد در زمان اختلال است.

در مجموع، گزارش اکتبر نشان می‌دهد اختلال‌ها علت واحدی نداشتند و از شبکه و ظرفیت تا نگهداری پایگاه داده و اعتبارنامه سرویس ثالث را شامل شدند. GitHub برای هر مورد مجموعه‌ای از اصلاحات فنی و اقدامات پیشگیرانه را تشریح کرده است.