GH GambleHub

عملیات و → چرخه انتشار و به روز رسانی مدیریت

چرخه انتشار و به روز رسانی

1) هدف

چرخه انتشار مجموعه ریتم تحویل: زمانی و چگونه تغییرات به کاربر، با چه تضمین کیفیت، سرعت و شفافیت. چرخه به خوبی طراحی شده:
  • عدم اطمینان و هزینه هماهنگی را کاهش می دهد
  • کاهش خطر حوادث و عقب نشینی،
  • همگام سازی فن آوری با رویدادهای کسب و کار (بازاریابی، ورزش، گزارش نهایی)،
  • بهبود عملکرد دستورات بدون رشد CFR (Change Failure Rate).

2) مدل های انتشار: کدام یک را انتخاب کنید

1. قطار انتشار - اسلات ثابت (به عنوان مثال،. سه شنبه/پنجشنبه 10:00 EET)

مناسب برای مونولیت های چند تیمی و تغییرات دامنه «سنگین».

2. تحویل مداوم (در صورت درخواست) - هر ادغام که دروازه های کیفیت را گذرانده است می تواند به غذا برود.

مناسب برای میکروسرویس ها و فرهنگ ویژگی پرچم.

3. ترکیبی - جبهه محصول در قطار, خدمات باطن «در تقاضا».

معیارهای انتخاب: بلوغ آزمون/مشاهده پذیری، وابستگی به شرکای خارجی (PSP/KYC)، الزامات انطباق، اندازه سازمان.

3) انتشار تقویم و ویندوز

تقویم واحد (در سراسر شرکت): اسلات انتشار، مهاجرت پایگاه داده، کمپین های بازاریابی، رویدادهای مهم ورزشی، دوره های گزارش.
دوره های انجماد: پنجره های به وضوح تعریف شده که فقط hotfix P1 مجاز است (به عنوان مثال فینال لیگ قهرمانان، جمعه سیاه، گزارش مالیاتی).
امواج منطقه ای: اولین بازارهای «گرم »/ترافیک کم، سپس - پایه ؛ پنجره های شبانه TZ های محلی.
خط مشی عبور: ممنوعیت تغییرات همزمان در یک مسیر بحرانی (پرداخت، KYC، مجوز).

4) شاخه و نسخه

شاخه های مبتنی بر تنه + کوتاه مدت (شاخه های ویژگی ≤ 3-5 روز).
Release-branch - فقط برای قطارها/تأیید طولانی ؛ ادغام سخت در «اصلی».
SemVer: سرگرد. جزئی است. PATCH برای کتابخانه ها/SDK ؛ برچسب ها از مصنوعات و محیط.

قراردادها: طرح ها (Avro/Protobuf) با سازگاری عقب/جلو ؛ مهاجرت - دو مرحله ای

5) کانال های کیفیت (دروازه)

1. استاتیک + SAST/DAST + خطوط

2. تست واحد/قرارداد/جزء

3. E2E/Performance دود (روی صحنه)

4. چک های امنیتی/انطباق

5. انتشار نامزد → امضا, SBOM, مصنوعات

6. گسترش پیشرفته با گاردریل های خودکار (نگاه کنید به § 7)

تمام دروازه ها - کد و سیاست (سیاست به عنوان کد)، نتایج - در مصنوعات انتشار.

6) محیط ها و تبلیغات

Dev → Int → Stage → Prod، برای داده ها: Sandbox/Data-Stage.
تبلیغات GitOps, تصاویر تغییر ناپذیر, ممنوعیت «کتابچه راهنمای» ویرایش در تولید.
پارامتری کردن: مناطق، محدودیت ها، ارائه دهندگان - از طریق پیکربندی (حسابرسی).

7) استراتژی نورد

قناری: 1٪ → 5٪ → 25٪ → 100٪ (или در هر منطقه).
آبی سبز: محیط های موازی + سوئیچینگ اتمی.

ویژگی پرچم: سوئیچ های کاربردی/کشتن سوئیچ ؛ A/B и سایه

مرحله بندی موبایل/وب: توسط نسخه مشتری/کانال تحویل (فروشگاه/OTA).

Gardrails (توقف خودکار): تاخیر p95 ↑> 25٪، خطا٪> 2٪، کاهش مجوز/سپرده، رشد در بازپرداخت، SLO نرخ سوختگی برای پنجره 1 ساعته> آستانه.

8) هماهنگی با کسب و کار و همکاران

بازاریابی/رویدادها: انتشار عملکرد برای کمپین ها با حاشیه ≥ 48 ساعت.
شرکا (PSP/KYC/ارائه دهندگان بازی): اسلات برای گواهینامه/به روز رسانی SDK، نقطه پایان دوگانه برای دوره مهاجرت.
پشتیبانی: ماکروها/سوالات متداول برای تغییرات UX، صفحات وضعیت، کانال های تشدید.

9) به روز رسانی داده ها و طرح

افزودنی اول: برای اولین بار اضافه کردن، سپس سوئیچ خواندن/نوشتن، در پایان - حذف قدیمی است.
شاخص ها و مهاجرت های بزرگ - پنجره های شب، با دسته، با ایستگاه های بازرسی و پیشرفت.
نسخه بندی فرهنگ لغت پنجره و متریک: به روز رسانی همزمان با انتشار، مهاجرت BI - به طور جداگانه از پنجره های تولید.

10) ارتباطات و مصنوعات

یادداشتهای انتشار (چه/چرا/خطرات/برگشت)، ChangeLog توسط سرویس.
تقویم دعوت به سهامداران، قالب آگهی (قبل/در طول/پس از).
کانال اتاق جنگ برای مدت زمان قطار/نسخه های اصلی، فرکانس به روز رسانی: P1 - هر 15-20 دقیقه.

11) معیارهای عملکرد

DORA: فرکانس استقرار، زمان سرب، تغییر نرخ شکست، MTTR.
نرخ برگشتی بر اساس نوع تغییر.
انطباق SLO٪ قبل/بعد از انتشار.
انتشار بدهی: پرچم های «حلق آویز»، مهاجرت ناقص، وابستگی های قدیمی.
تاثیر کسب و کار: تبدیل، KYC TTV، موفقیت PSP، GGR/NGR رانش به انتشار پنجره.

12) ضد الگوهای

بیگ بنگ: «همه در یک بار» بدون پرچم/قناری.
انتشار در اوج ترافیک/حوادث بدون استثنا یخ.
بدون خودکار گاردریل: نظارت دستی «توسط چشم».
شاخه های طولانی مدت: ادغام دردناک و رگرسیون های پنهان.
مراحل دستی در فروش: بدون حسابرسی و پیش بینی.
پرچم بدون TTL و صاحبان: شاخه های «ابدی».

13) چک لیست

قبل از انتشار

  • RFC/بلیط، خطر و شعاع انفجار ارزیابی شده است
  • دروازه های CI/CD گذشت، مصنوعات امضا شده است
  • برنامه نورد + معیارهای توقف + بازگشت آماده است
  • هماهنگی با تقویم، یخ و همکاران
  • داشبورد/هشدار محدود به نسخه، اتاق جنگ ایجاد شده است

در زمان انتشار

  • مراحل قناری و توقف خودکار فعال هستند
  • p95/error% metrics, سیگنال های کسب و کار (auth, KYC, PSP) بر روی مانیتور
  • ارتباطات برنامه ریزی شده، صفحه وضعیت تجدید

پس از انتشار

  • انتشار یادداشت ها و ChangeLog منتشر شده است
  • پرچم های حذف شده/استثنائات موقت (TTL)
  • پس از مرگ در صورت انحراف ≤ 5 روز کاری
  • به روز شده playbooks و اسناد و مدارک

14) قالب های کوچک

انتشار قالب اسلات (قطار):
  • تاریخ/زمان: سه شنبه، 10 صبح تا 12 بعد از ظهر EET
  • حوزه انتخابیه: اتحادیه اروپا (10٪ → 50٪ → 100٪) و سپس LATAM (10٪ → 100٪)
  • معیارهای توقف: خطا٪> 2٪ 10 دقیقه، p95> + 25٪ 10 دقیقه، موفقیت PSP <97٪
  • برگشت: سوئیچ ترافیک به نسخه قبلی + بازگشت پرچم
  • تماس با: @ RelEng، @ SRE-on-call، @ پشتیبانی
انتشار یادداشت قالب (کوتاه):
  • چه جدید است/چرا
  • تاثیر بر کاربران و شرکا
  • خطرات و محدودیت های شناخته شده
  • برنامه نورد/معیارهای توقف/عقب نشینی
  • معیارهای نظارت
  • تماس ها و کانال های پشتیبانی

15) ادغام با رشته های همسایه

مدیریت تغییر: استاندارد طبقه بندی/عادی/اضطراری، CAB، حسابرسی.
کاهش عواقب حوادث: پرچم های آماده شده، سهمیه ها، ریختن.
ممیزی پیکربندی: تمام تبلیغات از طریق Git، تشخیص رانش و ورود به سیستم برنامه.
سیاست های اجرایی: محدودیت/زمان بندی/بازپرداخت - مانند کد، با اجبار.

16) خط پایین

چرخه انتشار یک ریتم کنترل شده بین سرعت و قابلیت اطمینان است. شکاف ثابت که در آن هماهنگی مورد نیاز است. «در تقاضا» که در آن بلوغ اتوماسیون است. همه جا - یک تقویم، پرچم ها و رول های قناری، گاردریل های اتوماتیک و ارتباطات شفاف. بنابراین انتشار قابل پیش بینی، امن و اقتصادی می شود.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

Telegram
@Gamble_GC
شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.