ڈمپ کانفرنس | grep 'بیک اینڈ | ڈیوپس'

پچھلے ہفتے میں یکاترینبرگ میں DUMP IT کانفرنس (https://dump-ekb.ru/) میں گیا تھا اور میں آپ کو بتانا چاہتا ہوں کہ بیک اینڈ اور ڈیوپس سیکشنز میں کیا بات چیت ہوئی، اور کیا علاقائی IT کانفرنسیں قابل توجہ ہیں۔

ڈمپ کانفرنس | grep 'بیک اینڈ | ڈیوپس'
Serverless کے بارے میں Evil Martians سے Nikolay Sverchkov

ویسے بھی کیا تھا؟

مجموعی طور پر، کانفرنس کے 8 حصے تھے: بیک اینڈ، فرنٹ اینڈ، موبائل، ٹیسٹنگ اور QA، ڈیوپس، ڈیزائن، سائنس اور مینجمنٹ۔

سب سے بڑے ہال، ویسے، سائنس اور مینجمنٹ میں ہیں)) ~350 افراد کے لیے۔ بیک اینڈ اور فرنٹ اینڈ زیادہ چھوٹے نہیں ہیں۔ ڈیوپس کا کمرہ سب سے چھوٹا مگر فعال تھا۔

میں نے ڈیوپس اور بیک اینڈ سیکشنز میں رپورٹس سنی اور مقررین کے ساتھ تھوڑی سی بات کی۔ میں کانفرنس میں زیر بحث موضوعات کے بارے میں بات کرنا اور ان حصوں کا جائزہ لینا چاہوں گا۔

SKB-Kontur، DataArt، Evil Martians، Ekaterinburg web studio Flag، Miro (RealTimeBoard) کے نمائندوں نے ڈیوپس اور بیک اینڈ سیکشنز میں بات کی۔ CI/CD کا احاطہ کرنے والے موضوعات، قطار کی خدمات کے ساتھ کام کرنا، لاگنگ کرنا؛ بغیر سرور کے موضوعات اور Go میں PostgreSQL کے ساتھ کام کرنا اچھی طرح سے احاطہ کرتا ہے۔

Avito، Tinkoff، Yandex، Jetstyle، Megafon، Ak Bars Bank کی طرف سے بھی رپورٹس موصول ہوئی تھیں، لیکن میرے پاس جسمانی طور پر ان میں شرکت کا وقت نہیں تھا (رپورٹس کی ویڈیو ریکارڈنگ اور سلائیڈز ابھی دستیاب نہیں ہیں، وہ انہیں 2 ہفتوں کے اندر پوسٹ کرنے کا وعدہ کرتے ہیں۔ dump-ekb.ru پر)۔

ڈیوپس سیکشن

حیران کن بات یہ تھی کہ یہ سیکشن سب سے چھوٹے ہال میں منعقد کیا گیا تھا، تقریباً 50 نشستیں تھیں۔ یہاں تک کہ لوگ گلیاروں میں کھڑے تھے :) میں آپ کو ان رپورٹس کے بارے میں بتاؤں گا جنہیں میں سننے میں کامیاب ہوا۔

پیٹا بائٹ وزنی لچکدار

سیکشن کا آغاز ولادیمیر لِل (SKB-Kontur) کی کونتور میں Elasticsearch کے بارے میں ایک رپورٹ سے ہوا۔ ان کے پاس کافی بڑا اور بھری ہوئی لچکدار ہے (~ 800 TB ڈیٹا، ~ 1.3 پیٹا بائٹس فالتو پن کو مدنظر رکھتے ہوئے)۔ تمام Kontur سروسز کے لیے Elasticsearch واحد ہے، 2 کلسٹرز (7 اور 9 سرورز کے) پر مشتمل ہے، اور یہ اتنا اہم ہے کہ کونتور کے پاس خصوصی Elasticsearch انجینئر ہے (حقیقت میں، ولادیمیر خود)۔

ولادیمیر نے Elasticsearch کے فوائد اور اس سے پیدا ہونے والے مسائل کے بارے میں بھی اپنے خیالات کا اظہار کیا۔

فائدہ:

  • تمام لاگز ایک جگہ پر ہیں، ان تک آسان رسائی
  • ایک سال کے لیے نوشتہ جات کو ذخیرہ کرنا اور آسانی سے ان کا تجزیہ کرنا
  • نوشتہ جات کے ساتھ کام کرنے کی تیز رفتار
  • باکس کے باہر ٹھنڈا ڈیٹا ویژولائزیشن

مسائل یہ ہیں:

  • میسج بروکر کا ہونا ضروری ہے (کونٹور کے لیے اس کا کردار کافکا ادا کرتا ہے)
  • Elasticsearch کیوریٹر کے ساتھ کام کرنے کی خصوصیات (کیوریٹر میں باقاعدہ کاموں سے وقتاً فوقتاً زیادہ بوجھ پیدا ہوتا ہے)
  • کوئی بلٹ ان اجازت نہیں ہے (صرف علیحدہ، کافی بڑی رقم کے لیے، یا پیداوار کے لیے تیاری کی مختلف ڈگریوں کے اوپن سورس پلگ ان کے طور پر)

Elasticsearch کے لیے Open Distro کے بارے میں صرف مثبت جائزے تھے :) اجازت کا وہی مسئلہ وہاں حل ہو گیا ہے۔

پیٹا بائٹ کہاں سے آتا ہے؟ان کے نوڈس 12*8 Tb SATA + 2*2 Tb SSD والے سرورز پر مشتمل ہیں۔ SATA پر کولڈ اسٹوریج، SSD صرف ہاٹ کیشے (ہاٹ اسٹوریج) کے لیے۔
7+9 سرورز، (7 + 9) * 12 * 8 = 1536 Tb۔
جگہ کا کچھ حصہ ریزرو میں ہے، فالتو پن وغیرہ کے لیے الگ رکھا گیا ہے۔
تقریباً 90 درخواستوں کے لاگز Elasticsearch کو بھیجے جاتے ہیں، بشمول Kontur، Elba وغیرہ کی تمام رپورٹنگ سروسز۔

سرور لیس پر ترقی کی خصوصیات

اگلا سرور لیس کے بارے میں ڈیٹا آرٹ سے رسلان سرکن کی ایک رپورٹ ہے۔

رسلان نے اس بارے میں بات کی کہ سرور لیس اپروچ کے ساتھ عام طور پر کیا ترقی ہے، اور اس کی خصوصیات کیا ہیں۔

سرور لیس ترقی کا ایک نقطہ نظر ہے جس میں ڈویلپر کسی بھی طرح سے بنیادی ڈھانچے کو نہیں چھوتے ہیں۔ مثال - AWS Lambda Serverless، Kubeless.io (Kubernetes کے اندر سرور لیس)، گوگل کلاؤڈ فنکشنز۔

ایک مثالی سرور لیس ایپلی کیشن صرف ایک فنکشن ہے جو ایک خصوصی API گیٹ وے کے ذریعے سرور لیس فراہم کنندہ کو درخواست بھیجتا ہے۔ ایک مثالی مائیکرو سروس، جبکہ AWS Lambda بھی بڑی تعداد میں جدید پروگرامنگ زبانوں کو سپورٹ کرتا ہے۔ کلاؤڈ فراہم کنندگان کے معاملے میں انفراسٹرکچر کو برقرار رکھنے اور ان کی تعیناتی کی لاگت صفر ہو جاتی ہے، چھوٹی ایپلی کیشنز کو سپورٹ کرنا بھی بہت سستا ہو گا (AWS Lambda - $0.2/1 ملین سادہ درخواستیں)۔

اس طرح کے سسٹم کی اسکیل ایبلٹی تقریباً مثالی ہے - کلاؤڈ فراہم کرنے والا خود اس کا خیال رکھتا ہے، کیوبلیس خود بخود Kubernetes کلسٹر کے اندر اسکیل کرتا ہے۔

اس کے نقصانات ہیں:

  • بڑی ایپلی کیشنز تیار کرنا زیادہ مشکل ہوتا جا رہا ہے۔
  • پروفائلنگ ایپلی کیشنز میں دشواری ہے (صرف لاگ آپ کے لیے دستیاب ہیں، لیکن عام معنوں میں پروفائلنگ نہیں)
  • کوئی ورژن نہیں

سچ پوچھیں تو، میں نے کچھ سال پہلے سرور لیس کے بارے میں سنا تھا، لیکن ان تمام سالوں میں مجھے یہ واضح نہیں تھا کہ اسے صحیح طریقے سے کیسے استعمال کیا جائے۔ رسلان کی رپورٹ کے بعد، تفہیم ظاہر ہوا، اور بیک اینڈ سیکشن سے نکولائی سورچکوف (ایول مارٹینز) کی رپورٹ کے بعد، اسے مضبوط کیا گیا۔ یہ بیکار نہیں تھا کہ میں کانفرنس میں گیا تھا :)

CI غریبوں کے لیے ہے، یا کیا یہ کسی ویب اسٹوڈیو کے لیے اپنا CI لکھنے کے قابل ہے؟

یکاترینبرگ کے فلیگ ویب اسٹوڈیو کے سربراہ میخائل ریڈیونوف نے خود تحریر کردہ CI/CD کے بارے میں بات کی۔

اس کا اسٹوڈیو "دستی CI/CD" (SSH کے ذریعے سرور میں لاگ ان کریں، گٹ پل کریں، دن میں 100 بار دہرائیں) سے جینکنز اور خود تحریر کردہ ٹول پر چلا گیا ہے جو آپ کو کوڈ کی نگرانی کرنے اور ریلیز کرنے کی اجازت دیتا ہے جسے پلکنز کہتے ہیں۔ .

جینکنز نے کام کیوں نہیں کیا؟ یہ ڈیفالٹ کے لحاظ سے کافی لچک فراہم نہیں کرتا تھا اور اپنی مرضی کے مطابق بنانا بہت مشکل تھا۔

Laravel (PHP فریم ورک) میں "پرچم" تیار ہوتا ہے۔ ایک CI/CD سرور تیار کرتے وقت، میخائل اور اس کے ساتھیوں نے Laravel کے بلٹ ان میکانزم کا استعمال کیا جسے Telescope اور Envoy کہا جاتا ہے۔ نتیجہ پی ایچ پی میں ایک سرور ہے (براہ کرم نوٹ کریں) جو آنے والی ویب ہک درخواستوں پر کارروائی کرتا ہے، فرنٹ اینڈ اور بیک اینڈ بنا سکتا ہے، مختلف سرورز پر تعینات کر سکتا ہے، اور سلیک کو رپورٹ کر سکتا ہے۔

پھر، نیلے/سبز تعیناتی کو انجام دینے اور dev-stage-prod ماحول میں یکساں ترتیبات رکھنے کے لیے، انہوں نے Docker پر سوئچ کیا۔ فوائد یکساں رہے، ماحول کو ہم آہنگ کرنے اور بغیر کسی رکاوٹ کے تعیناتی کے امکانات شامل کیے گئے، اور اس کے ساتھ درست طریقے سے کام کرنے کے لیے Docker کو سیکھنے کی ضرورت کو شامل کیا گیا۔

پروجیکٹ Github پر ہے۔

کس طرح ہم نے سرور ریلیز رول بیکس کی تعداد کو 99% تک کم کیا

ڈیوپس سیکشن میں آخری رپورٹ Viktor Eremchenko، Miro.com (سابقہ ​​RealTimeBoard) کے لیڈ ڈیوپس انجینئر کی تھی۔

RealTimeBoard، میرو ٹیم کا فلیگ شپ پروڈکٹ، یک سنگی جاوا ایپلیکیشن پر مبنی ہے۔ ڈاؤن ٹائم کے بغیر اسے جمع کرنا، جانچنا اور تعینات کرنا ایک مشکل کام ہے۔ اس صورت میں، کوڈ کے اس طرح کے ورژن کو تعینات کرنا ضروری ہے تاکہ اسے واپس نہ لانا پڑے (یہ ایک بھاری یک سنگی ہے)۔

ایک ایسا نظام بنانے کے راستے پر جو آپ کو ایسا کرنے کی اجازت دیتا ہے، میرو ایک ایسے راستے سے گزرا جس میں فن تعمیر پر کام کرنا، استعمال کیے جانے والے اوزار (اٹلیشین بانس، جوابی، وغیرہ) اور ٹیموں کے ڈھانچے پر کام کرنا (اب ان کے پاس ہے) ایک وقف ڈیوپس ٹیم + مختلف پروفائلز کے ڈویلپرز سے بہت سی الگ الگ سکرم ٹیمیں)۔

راستہ دشوار گزار اور کانٹے دار نکلا اور وکٹر نے جمع درد اور امیدیں شیئر کیں جو یہیں ختم نہیں ہوئیں۔

ڈمپ کانفرنس | grep 'بیک اینڈ | ڈیوپس'
سوال پوچھنے پر کتاب جیتی۔

بیک اینڈ سیکشن

میں 2 رپورٹس میں شرکت کرنے میں کامیاب ہوا - نکولے سورچکوف (ایول مارٹینز) سے، سرور لیس کے بارے میں، اور گریگوری کوشیلیف (کونٹور کمپنی) سے ٹیلی میٹری کے بارے میں۔

محض انسانوں کے لیے بے نیاز

اگر رسلان سرکن نے اس بارے میں بات کی کہ سرور لیس کیا ہے، نکولے نے سرور لیس کا استعمال کرتے ہوئے سادہ ایپلیکیشنز کو دکھایا، اور ان تفصیلات کے بارے میں بات کی جو AWS Lambda میں ایپلی کیشنز کی لاگت اور رفتار کو متاثر کرتی ہیں۔

ایک دلچسپ تفصیل: کم از کم ادا شدہ عنصر 128 Mb میموری اور 100 ms CPU ہے، اس کی قیمت $0,000000208 ہے۔ مزید یہ کہ ماہانہ 1 ملین ایسی درخواستیں مفت ہیں۔

نکولائی کے کچھ فنکشنز اکثر 100 ایم ایس کی حد سے تجاوز کر جاتے ہیں (بنیادی ایپلیکیشن روبی میں لکھی گئی تھی)، لہذا انہیں Go میں دوبارہ لکھنے سے بہترین بچت ہوتی ہے۔

Vostok Hercules — ٹیلی میٹری کو دوبارہ عظیم بنائیں!

ٹیلی میٹری کے بارے میں Grigory Koshelev (Kontur کمپنی) کی طرف سے بیک اینڈ سیکشن کی تازہ ترین رپورٹ۔ ٹیلی میٹری کا مطلب ہے لاگ، میٹرکس، ایپلیکیشن ٹریس۔

اس مقصد کے لیے، Contour Github پر پوسٹ کردہ خود تحریری ٹولز کا استعمال کرتا ہے۔ رپورٹ سے ٹول - ہرکیولس، github.com/vostok/hercules، ٹیلی میٹری ڈیٹا کی فراہمی کے لیے استعمال کیا جاتا ہے۔

Devops سیکشن میں Vladimir Lila کی رپورٹ میں Elasticsearch میں لاگز کو ذخیرہ کرنے اور پروسیسنگ کرنے پر تبادلہ خیال کیا گیا ہے، لیکن اب بھی ہزاروں آلات اور ایپلیکیشنز سے لاگ ڈیلیور کرنے کا کام باقی ہے، اور Vostok Hercules جیسے ٹولز انہیں حل کرتے ہیں۔

سرکٹ نے ایک ایسے راستے کی پیروی کی جو بہت سے لوگوں کو معلوم ہے - RabbitMQ سے Apache Kafka تک، لیکن سب کچھ اتنا آسان نہیں ہے)) انہیں سرکٹ میں Zookeeper، Cassandra اور Graphite شامل کرنا پڑا۔ میں اس رپورٹ پر معلومات کو مکمل طور پر ظاہر نہیں کروں گا (میرا پروفائل نہیں)، اگر آپ دلچسپی رکھتے ہیں، تو آپ کانفرنس کی ویب سائٹ پر سلائیڈز اور ویڈیوز کا انتظار کر سکتے ہیں۔

یہ دوسری کانفرنسوں سے کیسے موازنہ کرتا ہے؟

میں اس کا موازنہ ماسکو اور سینٹ پیٹرزبرگ میں ہونے والی کانفرنسوں سے نہیں کر سکتا، میں اس کا موازنہ یورال میں ہونے والے دیگر ایونٹس اور سمارا میں 404 فیسٹول سے کر سکتا ہوں۔

ڈی اے ایم پی کا انعقاد 8 حصوں میں ہوتا ہے، یہ یورال کانفرنسوں کا ریکارڈ ہے۔ بہت بڑے سائنس اور مینجمنٹ سیکشنز، یہ بھی غیر معمولی بات ہے۔ یکاترنبرگ میں سامعین کافی منظم ہیں - شہر میں Yandex، Kontur، Tinkoff کے لیے بڑے ترقیاتی شعبے ہیں، اور یہ رپورٹوں پر اپنا نشان چھوڑتا ہے۔

ایک اور دلچسپ بات یہ ہے کہ بہت سی کمپنیوں کے پاس کانفرنس میں ایک ساتھ 3-4 اسپیکر ہوتے ہیں (یہ معاملہ کونتور، ایول مارٹینز، ٹنکوف کا تھا)۔ ان میں سے بہت سے سپانسرز تھے، لیکن رپورٹیں دوسروں کے برابر ہیں، یہ اشتہاری رپورٹس نہیں ہیں۔

جانا ہے یا نہیں جانا ہے؟ اگر آپ Urals یا قریبی علاقوں میں رہتے ہیں، تو آپ کے پاس موقع ہے اور آپ موضوعات میں دلچسپی رکھتے ہیں - جی ہاں، بالکل۔ اگر آپ طویل سفر کے بارے میں سوچ رہے ہیں، تو میں پچھلے سالوں کی رپورٹس اور ویڈیو رپورٹس کے عنوانات کو دیکھوں گا۔ www.youtube.com/user/videoitpeople/videos اور فیصلہ کیا.
خطوں میں کانفرنسوں کا ایک اور فائدہ، ایک اصول کے طور پر، یہ ہے کہ رپورٹس کے بعد اسپیکر کے ساتھ بات چیت کرنا آسان ہے؛ اس طرح کے مواصلات کے لیے درخواست دہندگان کی تعداد کم ہے۔

ڈمپ کانفرنس | grep 'بیک اینڈ | ڈیوپس'

ڈمپ اور ایکیٹرنبرگ کا شکریہ! )

ماخذ: www.habr.com

نیا تبصرہ شامل کریں