سسٽم تي وڌندڙ بوجھ کي ڪيئن برداشت ڪرڻ: اسان ڪارو جمعه لاء وڏي پيماني تي تياري بابت ڳالهايون ٿا

اي حبر!

2017 ۾، بليڪ فرائيڊي جي دوران، لوڊ لڳ ڀڳ اڌ ڀيرا وڌي ويو، ۽ اسان جا سرور پنھنجي حد تي ھئا. سال کان وٺي، گراهڪن جو تعداد خاص طور تي وڌي چڪو آهي، ۽ اهو واضح ٿيو ته محتاط ابتدائي تياري کان سواء، پليٽ فارم شايد 2018 جي ​​لوڊشيڊنگ کي برداشت نه ڪري سگهي.

اسان ممڪن حد تائين سڀ کان وڌيڪ امڪاني مقصد مقرر ڪيو: اسان چاهيون ٿا ته ڪنهن به لاءِ مڪمل طور تي تيار رهون، جيتوڻيڪ سڀ کان وڌيڪ طاقتور، سرگرمي جي واڌ ۽ سڄي سال اڳ ۾ نئين صلاحيت شروع ڪرڻ شروع ڪيو.

اسان جي CTO Andrey Chizh (chizh_andrey) ٻڌائي ٿو ته اسان بليڪ فرائيڊ 2018 لاءِ ڪيئن تيار آهيون، اسان ڪهڙن قدمن کي زوال کان بچڻ لاءِ ورتو، ۽ يقيناً، اهڙي محتاط تياري جا نتيجا.

سسٽم تي وڌندڙ بوجھ کي ڪيئن برداشت ڪرڻ: اسان ڪارو جمعه لاء وڏي پيماني تي تياري بابت ڳالهايون ٿا

اڄ مون کي Black Friday لاء تيارين جي باري ۾ ڳالهائڻ چاهيو ٿا 2018. ڇو هاڻي, جڏهن سڀ کان وڏي وڪرو اسان جي پويان آهن? اسان وڏي پيماني تي واقعن کان اٽڪل هڪ سال اڳ تياري شروع ڪئي، ۽ آزمائش ۽ غلطي جي ذريعي اسان کي بهترين حل مليو. اسان سفارش ڪريون ٿا ته توهان اڳ ۾ ئي گرم موسمن جو خيال رکو ۽ اسڪيمن کي روڪيو جيڪي شايد سڀ کان وڌيڪ غير مناسب وقت تي پاپ اپ هجن.
مواد هر ڪنهن لاء مفيد ثابت ٿيندو جيڪو چاهي ٿو ته اهڙي اسٽاڪ مان وڌ ۾ وڌ منافعو نچوض، ڇاڪاڻ ته مسئلي جو ٽيڪنيڪل پاسي هتي مارڪيٽنگ پاسي کان گهٽ نه آهي.

وڏي وڪرو تي ٽرئفڪ جون خاصيتون

مشهور اعتقاد جي برعڪس، ڪارو جمعه صرف سال ۾ هڪ ڏينهن نه آهي، پر تقريبا هڪ سڄو هفتو: پهرين رعايت جي آڇون وڪرو کان 7-8 ڏينهن اڳ پهچي ويندا آهن. ويب سائيٽ ٽرئفڪ سڄي هفتي ۾ آسانيء سان وڌڻ شروع ٿئي ٿي، جمعه تي پنهنجي چوٽي تي پهچي ٿو ۽ ڇنڇر تي اسٽور جي باقاعده سطحن تي تمام تيزيء سان گهٽجي ٿو.

سسٽم تي وڌندڙ بوجھ کي ڪيئن برداشت ڪرڻ: اسان ڪارو جمعه لاء وڏي پيماني تي تياري بابت ڳالهايون ٿا

اهو غور ڪرڻ ضروري آهي: آن لائن اسٽور خاص طور تي حساس ٿي ويندا آهن سسٽم ۾ ڪنهن به ”سستي“ لاءِ. ان کان علاوه، اسان جي اي ميل نيوز ليٽر لائن پڻ پيش ڪرڻ جي تعداد ۾ هڪ اهم اضافو تجربو ڪيو.

اهو اسان لاءِ حڪمت عملي طور اهم آهي بليڪ فرائيڊي ذريعي بغير ڪنهن حادثي جي، ڇاڪاڻ ته ... ويب سائيٽن ۽ اسٽور نيوز ليٽر جي سڀ کان اهم ڪارڪردگي پليٽ فارم جي آپريشن تي منحصر آهي، يعني:

  • ٽريڪنگ ۽ مصنوعات جي سفارشون جاري ڪرڻ،
  • لاڳاپيل مواد جاري ڪرڻ (مثال طور، سفارش واري بلاڪ جي ڊيزائن جون تصويرون، جهڙوڪ تير، لوگو، آئڪن ۽ ٻيا بصري عناصر)
  • گهربل سائيز جون پراڊڪٽ تصويرون مهيا ڪرڻ (انهن مقصدن لاءِ اسان وٽ آهي “ImageResizer” - هڪ سبسسٽم جيڪو اسٽور سرور مان هڪ تصوير ڊائون لوڊ ڪري ٿو، ان کي گهربل سائيز تائين دٻائي ٿو ۽، ڪيشنگ سرورز ذريعي، هر پراڊڪٽ لاءِ گهربل سائيز جون تصويرون پيدا ڪري ٿو. هر سفارش واري بلاڪ).

حقيقت ۾، بليڪ فرائيڊ 2019 دوران، سروس تي لوڊ 40 سيڪڙو وڌي ويو، يعني. واقعن جو تعداد جيڪو پرچون راڪيٽ سسٽم ٽريڪ ڪري ٿو ۽ آن لائن اسٽورن جي سائيٽن تي عمل ڪري ٿو 5 کان 8 هزار درخواستن في سيڪنڊ کان وڌي ويو آهي. انهي حقيقت جي ڪري ته اسان وڌيڪ سنگين بار جي تياري ڪري رهيا هئاسين، اسان آساني سان اهڙي اضافو کان بچي ويا.

سسٽم تي وڌندڙ بوجھ کي ڪيئن برداشت ڪرڻ: اسان ڪارو جمعه لاء وڏي پيماني تي تياري بابت ڳالهايون ٿا

عام تربيت

ڪارو جمعه خاص طور تي سڀني پرچون ۽ اي ڪامرس لاءِ مصروف وقت آهي. هن وقت صارفين ۽ انهن جي سرگرمين جو تعداد تمام گهڻو وڌي رهيو آهي، تنهنڪري اسان، هميشه وانگر، هن مصروف وقت لاء مڪمل طور تي تيار آهيون. اچو ته هتي اها حقيقت شامل ڪريون ته اسان وٽ ڪيترائي آن لائين اسٽور آهن جيڪي نه رڳو روس ۾، پر يورپ ۾ پڻ ڳنڍيل آهن، جتي جوش تمام گهڻو آهي، ۽ اسان کي برازيل سيريز کان وڌيڪ خراب جذبي جي سطح ملي ٿي. وڌندڙ لوڊ لاءِ مڪمل تيار ٿيڻ لاءِ ڇا ڪرڻ جي ضرورت آهي؟

سرورز سان ڪم

پهرين، اهو معلوم ڪرڻ ضروري هو ته اسان کي سرور جي طاقت وڌائڻ جي ضرورت آهي. اڳ ۾ ئي آگسٽ ۾، اسان خاص طور تي بليڪ فرائيڊ لاءِ نوان سرور آرڊر ڪرڻ شروع ڪيا - مجموعي طور تي اسان 10 اضافي مشينون شامل ڪيون. نومبر تائين اهي مڪمل طور تي جنگ ۾ هئا.

ساڳئي وقت، ڪجهه تعميراتي مشينن کي ايپليڪيشن سرور طور استعمال ڪرڻ لاء ٻيهر نصب ڪيو ويو. اسان انهن کي فوري طور تي مختلف ڪمن کي استعمال ڪرڻ لاءِ تيار ڪيو: ٻنهي لاءِ سفارشون جاري ڪرڻ ۽ ImageResizer سروس لاءِ، انهي ڪري، لوڊ جي قسم تي منحصر ڪري، انهن مان هر هڪ کي انهن مان هڪ ڪردار لاءِ استعمال ڪري سگهجي ٿو. عام موڊ ۾، ايپليڪيشن ۽ ImageResizer سرورز واضح طور تي ڪم ڪيا آهن: اڳوڻو مسئلو سفارشون، بعد ۾ سپلائي تصويرون خطن لاءِ ۽ سفارش بلاڪ آن لائن شاپنگ ويب سائيٽن تي. بليڪ فرائيڊ جي تياري ۾، اهو فيصلو ڪيو ويو ته سڀني ڊبل-مقصد سرور ٺاهڻ لاءِ انهن جي وچ ۾ ٽرئفڪ کي توازن ڪرڻ لاءِ ڊائون لوڊ جي قسم جي لحاظ سان.

پوءِ اسان ڪافڪا (اپاچي ڪافڪا) لاءِ ٻه وڏا سرور شامل ڪيا ۽ 5 طاقتور مشينن جو ڪلستر حاصل ڪيو. بدقسمتي سان، سڀ ڪجهه آسانيء سان نه ٿي سگهيو جيئن اسان چاهيون ٿا: ڊيٽا جي هم وقت سازي جي عمل دوران، ٻه نيون مشينون نيٽ ورڪ چينل جي پوري چوٽي تي قبضو ڪيو، ۽ اسان کي فوري طور تي معلوم ڪرڻو پيو ته ڪيئن شامل ڪرڻ واري عمل کي جلدي ۽ محفوظ طور تي عمل ڪرڻ لاء. سڄو زيربنا. ان مسئلي کي حل ڪرڻ لاءِ اسان جي منتظمين کي بهادريءَ سان پنهنجي هفتيوار قرباني ڏيڻي پئي.

ڊيٽا سان ڪم

سرورز کان علاوه، اسان لوڊ کي گھٽائڻ لاءِ فائلن کي بهتر ڪرڻ جو فيصلو ڪيو ۽ اسان لاءِ وڏو قدم جامد فائلن جو ترجمو هو. سڀئي جامد فائلون جيڪي اڳ ۾ سرور تي ميزباني ڪيون ويون آھن S3 + Cloudfront ڏانھن منتقل ڪيا ويا. اسان هڪ ڊگهي وقت کان اهو ڪرڻ چاهيون ٿا، ڇاڪاڻ ته سرور تي لوڊ حد جي قيمت جي ويجهو هو، ۽ هاڻي هڪ بهترين موقعو پيدا ٿيو آهي.

بليڪ فرائيڊ کان هڪ هفتو اڳ، اسان تصويرن جي ڪيشنگ جو وقت 3 ڏينهن تائين وڌايو، ته جيئن ImageResizer حادثو ٿئي، اڳ ۾ محفوظ ڪيل تصويرون سي ڊي اين مان حاصل ڪيون وينديون. اهو پڻ اسان جي سرورن تي لوڊ گھٽائي ٿو، ڇاڪاڻ ته تصوير کي محفوظ ڪيو ويندو آهي، گهٽ ۾ گهٽ اسان کي ريزائزنگ تي وسيلن کي خرچ ڪرڻ جي ضرورت آهي.

۽ آخري نه پر گهٽ ۾ گهٽ: بليڪ فرائيڊ کان 5 ڏينهن اڳ، ڪنهن به نئين ڪارڪردگيءَ جي تعينات تي، ان سان گڏ انفراسٽرڪچر جي ڪنهن به ڪم تي پابنديءَ جو اعلان ڪيو ويو هو - سموري توجه جو مقصد وڌندڙ لوڊن کي منهن ڏيڻ آهي.

مشڪل حالتن کي منهن ڏيڻ لاءِ منصوبا

ڪابه معاملي جي تياري ڪيتري معيار جي آهي، فيڪپس هميشه ممڪن آهن. ۽ اسان ممڪن نازڪ حالتن لاءِ 3 جوابي منصوبا ٺاهيا آهن:

  • لوڊ گھٽائڻ،
  • ڪجھ خدمتن کي بند ڪرڻ،
  • سروس جي مڪمل بندش.

پلان A: لوڊ گھٽايو. چالو ٿيڻ گهرجي ها جيڪڏهن، لوڊ ۾ اضافو جي ڪري، اسان جا سرور قابل قبول جوابي وقت کان ٻاهر ويا. انهي صورت ۾، اسان ٽريفڪ جو حصو Amazon سرورز ڏانهن تبديل ڪندي لوڊ کي تيزيءَ سان گهٽائڻ لاءِ ميکانيزم تيار ڪيو آهي، جيڪو صرف ”200 اوڪي“ سان سڀني درخواستن جو جواب ڏيندو ۽ خالي جواب ڏيندو. اسان سمجهون ٿا ته اها خدمت جي معيار جي خرابي هئي، پر حقيقت جي وچ ۾ چونڊ ته خدمت بلڪل ڪم نه ڪندي آهي يا تقريبن 10٪ ٽرئفڪ لاء سفارشون نه ڏيکاريندي آهي.

پلان بي: خدمتون بند ڪريو. خدمت جي جزوي تباهي. مثال طور، ڪجهه ڊيٽابيس ۽ ڪميونيڪيشن چينلز کي لوڊ ڪرڻ لاءِ ذاتي سفارشن جي حساب سان رفتار کي گهٽائڻ. عام موڊ ۾، سفارشون اصل وقت ۾ حساب ڪيون وينديون آهن، هر دورو ڪندڙ لاءِ آن لائن اسٽور جو هڪ مختلف ورزن ٺاهيندي، پر وڌندڙ لوڊ جي حالتن هيٺ، رفتار گهٽائڻ ٻين بنيادي خدمتن کي ڪم جاري رکڻ جي اجازت ڏئي ٿي.

پلان سي: آرماگڊون جي صورت ۾. جيڪڏهن هڪ مڪمل سسٽم ناڪامي آهي، اسان هڪ منصوبو تيار ڪيو آهي جيڪو اسان کي محفوظ طور تي اسان جي گراهڪن کان ڌار ٿيڻ جي اجازت ڏيندو. اسٽور خريد ڪندڙ صرف سفارشون ڏسڻ بند ڪندا؛ آن لائن اسٽور جي ڪارڪردگي ڪنهن به طريقي سان متاثر نه ٿيندي. ائين ڪرڻ لاء، اسان کي اسان جي انٽيگريشن فائل کي ري سيٽ ڪرڻو پوندو ته جيئن نوان استعمال ڪندڙ سروس سان لهه وچڙ بند ڪن. اهو آهي، اسان اسان جي مکيه ٽريڪنگ ڪوڊ کي بند ڪري ڇڏينداسين، خدمت ڊيٽا گڏ ڪرڻ ۽ سفارشون ڳڻڻ بند ڪري ڇڏيندي، ۽ صارف صرف سفارش واري بلاڪ کان سواء هڪ صفحو ڏسندو. انهن سڀني لاءِ جيڪي اڳ ۾ هڪ انضمام واري فائل حاصل ڪري چڪا آهن، اسان مهيا ڪيو آهي ڊي اين ايس رڪارڊ کي تبديل ڪرڻ جو اختيار Amazon ۽ 200 OK اسٽب ڏانهن.

نتيجو

اسان مڪمل لوڊ سنڀاليو جيتوڻيڪ اضافي بلڊ مشين استعمال ڪرڻ جي ضرورت کان سواءِ. ۽ اڳواٽ تياري ڪرڻ جي مهرباني، اسان کي ڪنهن به ترقي يافته جوابي منصوبن جي ضرورت نه هئي. پر سڀ ڪم ڪيو ويو انمول تجربو آهي جيڪو اسان کي ٽريفڪ جي سڀ کان وڌيڪ غير متوقع ۽ وڏي آمد سان منهن ڏيڻ ۾ مدد ڏيندو.
جيئن ته 2017 ۾، سروس تي لوڊ 40٪ وڌي ويو، ۽ آن لائن اسٽورن ۾ استعمال ڪندڙن جو تعداد 60٪ بليڪ فرائيڊ تي وڌي ويو. تياري واري عرصي دوران سڀ مشڪلاتون ۽ غلطيون ٿي ويون، جن اسان کي ۽ اسان جي گراهڪن کي غير متوقع حالتن کان بچايو.

بليڪ فرائيڊي کي ڪيئن منهن ڏئي رهيا آهيو؟ توهان نازڪ لوڊ لاء ڪيئن تيار آهيو؟

جو ذريعو: www.habr.com

تبصرو شامل ڪريو