تعیناتی فن تعمیر: زیرو ڈاؤن ٹائم پیداواری نظام

یہ مضمون بتاتا ہے کہ ہم ویب سائٹ کو خودکار ری اسٹارٹ اور زیرو ڈاؤن ٹائم کے ساتھ کیسے تعینات اور چلاتے ہیں۔

مسئلہ: دستی تعیناتی خطرناک ہے

روایتی تعیناتی کے لیے درکار ہوتا ہے:

  • دستی سرور ری اسٹارٹ: ڈاؤن ٹائم کا باعث بنتا ہے

  • سروس مانیٹرنگ: کسی کو کریش ہونے پر نظر رکھنی پڑتی ہے

  • کوڈ اپ ڈیٹس: ایس ایس ایچ رسائی اور دستی مراحل درکار ہوتے ہیں

  • رول بیک: اگر کچھ خراب ہو جائے تو دستی عمل

یہ پیمانے پر نہیں چلتا اور اپ ڈیٹس کے دوران ڈاؤن ٹائم کا باعث بنتا ہے۔

حل: سسٹمڈ کے ساتھ خودکار تعیناتی

ہم ایپلیکیشن کو منظم کرنے کے لیے سسٹمڈ استعمال کرتے ہیں (دیکھیں انفراسٹرکچر کا جائزہ):

  • خودکار ری اسٹارٹ: کریش یا کوڈ تبدیلی پر خود بخود ری اسٹارٹ ہو جاتا ہے

  • زیرو ڈاؤن ٹائم: نرم کارکن ری اسٹارٹ

  • لاگنگ: مرکزی لاگ مینجمنٹ

  • پروسیس مینجمنٹ: کارکن کے لائف سائیکل کو ہینڈل کرتا ہے

سرور انفراسٹرکچر

پیداواری سرور

پیداواری سرور عوامی ویب سائٹ کی میزبانی کرتا ہے:

  • مقصد: عوامی ویب سائٹ جو مصنوعات کی کیٹلاگ اور ای کامرس پیش کرتی ہے

  • ماڈیول: صرف "ویب"

  • ماحول: پیداوار (گنی کارن + سسٹمڈ)

  • رسائی: عوامی (لاگ ان کی ضرورت نہیں)

ایپلیکیشن سرور

گنی کارن

گنی کارن پیداواری ویب سرور ہے:

  • ملٹی کارکن: متعدد کارکن پروسیسز

سسٹمڈ انٹیگریشن

سسٹمڈ گنی کارن کو منظم کرتا ہے:

  • خودکار اسٹارٹ: سرور بوٹ پر

  • خودکار ری اسٹارٹ: کریش یا کوڈ تبدیلی پر

  • لاگنگ: سسٹمڈ جرنل انٹیگریشن

  • پروسیس مینجمنٹ: کارکن لائف سائیکل

کنفیگریشن

ماحولیاتی کنفیگریشن

کنفیگریشن ماحول کے لحاظ سے مخصوص ہوتی ہے:

  • کنفگ فائلیں: ماحول کے لحاظ سے مخصوص ترتیبات

  • JSON فارمیٹ: کلیدی قدر جوڑے

  • ماحولیاتی متغیرات: راز اور اے پی آئی چابیاں

  • ماڈیول انیبلمنٹ: کنفیگریشن کنٹرول کرتی ہے کہ کون سی خصوصیات لوڈ ہوں

جامد اثاثے

جامد اثاثے ایس 3 سے کلاؤڈ فرنٹ سی ڈی این کے ذریعے پیش کیے جاتے ہیں:

  • ایس 3 بکٹ: جامد فائلوں کے لیے آبجیکٹ اسٹوریج

  • کلاؤڈ فرنٹ: عالمی اثاثہ ڈیلیوری کے لیے سی ڈی این

  • کیشنگ: جامد مواد کے لیے طویل ٹی ٹی ایل

  • ورژننگ: ورژن نمبروں کے ساتھ کیش بسٹنگ

تعیناتی کا عمل

کوڈ تعیناتی

کوڈ گٹ کے ذریعے تعینات کیا جاتا ہے اور سسٹمڈ ایپلیکیشن سروس کو منظم کرتا ہے:

  1. کمیٹ اور پش: تبدیلیاں گٹ ریپوزٹری میں پش کی جاتی ہیں
  2. سرور پر پل: کوڈ پیداواری سرور پر پل کیا جاتا ہے
  3. سسٹمڈ ری اسٹارٹ: کریش پر سروس خود بخود ری اسٹارٹ ہو جاتی ہے

کنفیگریشن تعیناتی

کنفیگریشن کو کوڈ سے الگ طور پر منظم کیا جاتا ہے:

  1. کنفگ فائلیں: گٹ میں JSON کنفیگریشن فائلیں
  2. ماحولیاتی متغیرات: ماحول سے لوڈ ہونے والے راز
  3. ماڈیول انیبلمنٹ: کنفیگریشن کنٹرول کرتی ہے کہ کون سی خصوصیات لوڈ ہوں

مانیٹرنگ

صحت کی جانچ

صحت کے اختتامی نقاط سرور کی حالت کی نگرانی کرتے ہیں:

  • صحت کا اختتامی نقطہ: بنیادی صحت کی جانچ

  • ڈیٹا بیس چیک: ڈیٹا بیس کنیکٹیویٹی

  • کیش چیک: کیش کنیکٹیویٹی

لاگنگ

لاگز متعدد مقامات پر محفوظ کیے جاتے ہیں:

  • گنی کارن ایرر لاگز: ایپلیکیشن کی غلطیاں

  • گنی کارن ایکسس لاگز: ایچ ٹی ٹی پی درخواستیں

  • سروس لاگز: سسٹمڈ جرنل

خلاصہ

تعیناتی فن تعمیر فراہم کرتی ہے:

  • گنی کارن: پیداواری ڈبلیو ایس جی آئی سرور

  • سسٹمڈ: خودکار ری اسٹارٹ اور پروسیس مینجمنٹ

  • گٹ تعیناتی: کوڈ اور کنفگ مینجمنٹ

  • ایس 3 + کلاؤڈ فرنٹ: جامد اثاثہ ڈیلیوری

  • صحت کی نگرانی: صحت کی جانچ کے اختتامی نقاط

  • لاگنگ: غلطی اور رسائی کے لاگز