Blue Green Deployment

Blue-Green Deployment یک راهبرد برای به‌روزرسانی سیستم‌های رایانه‌ای در حال اجرا با حداقل Downtime است. اپراتور دو محیط را نگه می‌دارد که «Blue» و «Green» نامیده می‌شوند. یکی ترافیک Production (همان نسخه‌ای که همه کاربران هم‌اکنون استفاده می‌کنند) را سرویس می‌دهد و دیگری به‌روزرسانی می‌شود. پس از اتمام Testing در محیط غیر فعال (Green)، ترافیک Production جابه‌جا می‌شود (اغلب با استفاده از Load Balancer). توجه داشته باشید که Blue-Green Deployment معمولاً به‌معنی جابه‌جا کردن کل محیط‌ها است که از تعداد زیادی Service تشکیل شده‌اند. گیج‌کننده اینکه گاهی این اصطلاح برای Serviceهای منفرد در یک سیستم به‌کار می‌رود. برای اجتناب از این ابهام، هنگام اشاره به اجزای منفرد، اصطلاح «Zero-Downtime Deployment» مناسب‌تر است.

مسئله‌ای که حل می‌کند

Blue-Green Deployment اجازه می‌دهد هنگام به‌روزرسانی نرم‌افزاری که به‌دلیل نبود Backwards Compatibility باید «Lockstep» تغییر کند، Downtime به حداقل برسد. برای مثال، این رویکرد برای یک فروشگاه آنلاین شامل یک Website و یک Database که باید به‌روزرسانی شوند مناسب است، اما نسخه جدید Database با نسخه قدیمی Website کار نمی‌کند و بالعکس. در این حالت هر دو باید هم‌زمان تغییر کنند. اگر این کار روی سیستم Production انجام شود، مشتریان Downtime را احساس می‌کنند.

چگونه کمک می‌کند

Blue-Green Deployment راهبرد مناسبی برای نرم‌افزارهای غیر Cloud Native است که باید با حداقل Downtime به‌روزرسانی شوند. با این حال، استفاده از آن معمولاً نشانه‌ای (Smell) است که نرم‌افزار Legacy باید دوباره مهندسی شود تا اجزا بتوانند به‌صورت جداگانه به‌روزرسانی شوند.


آخرین ویرایش September 26, 2025: [fa] Add Persian to the list of localized languages (6511f5f)