گزارش کمپین بلک فرایدی ایران سرور و علت اختلال آن
نوشتن مستندات برای تیم فنی یکی از سختترین کارهاست!
فنیها اغلب ترجیح میدهند که روی رفع چالشهای فنی زمان صرف کنند تا نوشتن مستندات؛ ولی خب نوشتن رخدادها باعث میشود که امکان انتقال تجربیات به افراد بیشتری فراهم شود! این دقیقاً همان چیزی است که انرژی لازم برای نگارش را فراهم میکند.
حالا ماجرا از این قرار است که میخواهیم دلیل اختلال سایت ایرانسرور، در کمپین بلک فرایدی را بررسی کنیم و تجربههایی که در این چند روز کسب کردیم را در اختیار شما بگذاریم.
اختلال پیاپی طی ۲۴ساعت در وبسایت و پورتال کاربری ایران سرور، باعث شد که کاربران برای خرید و دریافت خدمات با مشکل مواجه شوند.
اما چه اتفاقی افتاده بود؟
طبق برنامه، چند هفته بعد از انتشار نسخۀ جدید سایت ایرانسرور و با شروعِ کار بچههای تیم توسعه نرمافزار روی تغییرات پورتال مشتریان، کمپین BlackFriday (که ما اسم آن را از جمعه سیاه تا دوشنبه آبی گذاشته بودیم) آمادۀ اجرا شده بود.
بخشی از کمپین ارایۀ دورهای و غافلگیرکننده از کدهای تخفیف در شبکههای اجتماعی بود و هر کس اولین نفر کد را وارد میکرد، میتوانست از آن استفاده کند.
یک فلشبک به قبل از شروع شدن کمپین بزنیم …
پیشبینیها برای تعداد کاربری که در زمان انتشار کدها وارد سایت و سبد خرید میشوند، انجام شده بود تا این روند خللی به دریافت سرویس توسط مشتریان کنونی وارد نکند.
ما دادههایی را از کمپینهای قبلی در دست داشتیم و براساس تحلیلهای انجام شده، یک سری امکانات پردازشی را آماده کردیم که بهصورت کامل پاسخگوی نیاز ما در کمپین باشند.
حتی تیم پشتیبانان کاربلد ایرانسرور نیز با آمادگی کامل، منتظر پاسخگویی به سوالات کاربران و رفع مشکلات احتمالی بود.
کمپین شروع شد …
اولین سری از کدهای تخفیف، حوالی ساعت ۱ بامداد روز جمعه منتشر شد و طی کمتر از ۵ دقیقه دسترسی به سایت و پورتال مشتریان از دست رفت؛ این اتفاق در حالی بود که تمام میکروسرویسها به درستی در دسترس بودند!
بررسی دلایل این اتفاق بد، در همان شب شروع شد؛ ولی بررسی اولیۀ گزارشات تجمیع شده در ELK کمک زیادی برای یافتن دلیل به ما نکرد.
ما تغییراتی در لاگها ایجاد کردیم تا جزییات بیشتری ثبت شوند. همچنین از نو سیستم را پیکربندی کردیم و آماده سرویسدهی مجدد به مشتریان و نوبت بعدی انتشار کدهای تخفیف شدیم.
صبح جمعه بررسی مجدد گزارشات نشان داد که یک ارتباط غیرمعمول بین وبسایت و پورتال کاربری وجود دارد، که باعث شده فشار پردازشی بیدلیل به پایگاه داده وارد شده و CPU پیش از آنچه نیاز است درگیر شود.
این فرضیه در کنار افزایش لحظهای بازدیدها، اختلال در سایت را بهصورت کامل توجیه میکرد.
تغییرات در برنامهها شروع شد و برای زمان انتشار کدها، تیم توسعه نرمافزار هم در کنار تیم عملیات قرار گرفتند تا در صورت نیاز، تغییرات جدید اعمال گردد.
ظهر جمعه و همزمان با انتشار کدهای تخفیف جدید، مجدداً همین رخداد تکرار شد و نشان داد که فرضیه قبلی اشتباه بوده است!
بررسی مجدد لاگها آغاز شد و اینبار نتیجهی متفاوتی وجود داشت که پیچیدگی ارتباطات بین میکروسرویسها، پورتال و سایت، تا الان باعث مخفی ماندنش شده بود.
بالاخره مشکل پیدا شد!
در تغییرات نسخۀ جدید سایت، بسیاری از بخشها بهصورت داینامیک ایجاد میشوند. این روند به شکلی رقم خورده بود که از حالت بهینه خارج شده و تعداد زیادی ارتباطات ExternalApp در pool وب سرور باقی میماند.
همین مساله بود که در نهایت باعث بروز اختلال در زمان افزایش تعداد کاربران میشد.
اصلاحات برنامه انجام شد و تنظیمات Pool نیز در بیشترین مقدار ممکن قرار گرفت تا بتوانیم از حداکثر توان برای ارتباط با میکروسرویسها استفاده کنیم.
نتیجۀ تنظیمات در زمان انتشار کدهای روز شنبه، مشخص شد. اشکالات رفع شده بود و در اولین ارائه، بیش از ۶۰۰۰ کاربر، طی کمتر از ۱۰ دقیقه، سبد خرید خودشان را ایجاد کرده و بدون مشکل فرآیند خرید را کامل کردند.
ایرانسرور، به رسم عذرخواهی، این کمپین را 1 روز اضافهتر تمدید و به قید قرعه، به 100 نفر از شرکتکنندگان شارژ 200 هزار تومانی پنل تقدیم کرد.
یک نکتۀ مهم: برخی از مخاطبان به اشتباه، نقص فنی را ناشی از کیفیت پایین سرور میدانستند؛ درحالیکه طبق توضیحاتی که تا اینجا گفتیم، حتی اگر سروری با قدرت 10 برابر هم داشتیم، باز هم این اختلال ممکن بود اتفاق بیافتد؛ چون ایراد کار در معماری سایت بود، نه سرور.
پس یادتان باشد، اگر به مشکل مشابهی برخوردید، ممکن است ایراد در دیتابیس یا معماری سایتتان باشد و لازم نباشد هزینه اضافی برای سرور پرداخت کنید.
دستاورد این کمپین برای ما و کاربران چه بود؟
بهعنوان اولین دستاورد، بازخورد کمپین در شبکههای اجتماعی را بررسی میکنیم.
تلگرام و توئیتر، دو رسانه اصلی بودند که ما برای انتشار کدهای تخفیف از آنها استفاده کردیم.
بهاینصورت که کدها در یک زمان غیرقابلپیشبینی روی این دو رسانه (یعنی تلگرام و توئیتر) قرار میگرفتند و هر کاربری که زودتر اقدام میکرد، میتوانست از آنها استفاده کند.
در نتیجۀ این اقدام، در مدت زمان 5 روزۀ کمپین، تعداد زیادی عضو جدید به جمع دنبالکنندگان ایرانسرور در تلگرام و توئیتر اضافه شدند.
دستاورد بعدی این کمپین، افزایش چندین برابری فروش، نسبت به همین بازه زمانی در سال گذشته است.
در همین بازۀ 5 روزه، تعداد تراکنشهای ثبت شده در ایران سرور نیز به نسبت مدتهای مشابه، به شدت افزایش داشته است.
نکتۀ دیگر، افزایش جستجوی نام برند است. کاربرانی که نام برند ایران سرور را در گوگل جستجو کردند و از آن طریق وارد سایت ایران سرور شدند در روز شروع کمپین افزایش قابل توجهی داشتند.
ناگفته نماند که این کمپین، دستاوردهایی هم برای مخاطبان عزیز ما داشته است. ارزش تخفیفهای استفاده شده در این 5 روز، بیش از 370 میلیون تومان و میانگین درصد تخفیف اعمال شده روی سرویسها، 72% است.
در نمودار زیر میتوانید استقبال مخاطبان از سرویسهای مختلف را مشاهده کنید.
ما تا جایی که دستمان باز بود، سعی کردیم اطلاعاتی را درباره اینکه کمپین جمعه سیاه تا دوشنبه آبی ایران سرور، چه تاثیری برای ما و مخاطبان داشته ارائه کنیم. امیدواریم این اطلاعات به درد شما نیز بخورد.
دیگر حرفی نمانده جز…
حرف آخر: یک درددل خودمانی
خب؛ این بود داستان نقص فنی ایرانسرور، در اولین شب کمپین Black Friday و چالشهایی که پشت سر گذاشتیم! در آخر ناگفته نماند که ما در این چند روز، جدا از چالش فنی، چالش روانی زیادی را نیز تحمل کردیم.
از اینجا به بعد مقاله، میخواهیم کمی از دنیای کدها، ماشینها، سختافزار و نرمافزارها فاصله بگیریم و یک درددل خودمانی با شما داشته باشیم. اگر دوست داشتید گوش کنید 🙂
در پشتصحنۀ برگزاری چنین کمپینهای بزرگی، تیمها و افراد زیادی درگیر هستند. از تیم عملیات و پشتیبانی بگیرید، تاااا مارکتینگ و ارتباطات و سوشال مدیا!
حالا تصور کنید که نتیجه این زحمات، بشود شنیدن انواع و اقسام قضاوتها و توهینها؛ از شیاد و کلاهبردار گرفته، تا دروغگو و دزد!
قطعاً ما همیشه از نظرات و انتقادات شما برای پیشرفت و ارائۀ خدمات بهتر استفاده میکنیم و واضح است که تمام قدمهای ما و جایی که امروز ایستادهایم، به کمک شما و به لطف وجود شماست.
اما گاهی نه در برخورد با ایرانسرور، بلکه با هر مجموعه دیگری، بهتر است یادمان بیافتد که پشت تمام این مانیتورها، سیستمها و حسابهای کاربری، آدمهایی هستند که ساعتها، روزها و ماهها تلاش میکنند تا با وجود مشکلات خارجی و داخلی (مثل تحریم و فیلرینگ) یک کار عالی ارائه کنند.
اما خب، هیچ فرد یا مجموعهای 100% کامل نیست و گاهی (فقط گاهی) کارها آنطور که پیشبینی شده بود، پیش نمیروند.
امیدواریم که سرتان را درد نیاورده باشیم و با این مقاله توانسته باشیم تجربههایی، هر چند اندک را منتقل کنیم.
راستی، موفق شدید از کمپینهای ایران سرور استفاده کنید؟
برای کمپینهای بعدی چه پیشنهادی دارید؟ 💙