Yandex نے ہائی لوڈ ایپلی کیشنز بنانے کے لیے صارف کے فریم ورک کے لیے کوڈ کھول دیا ہے۔

Yandex نے یوزر فریم ورک کا سورس کوڈ شائع کیا ہے، جو آپ کو C++ میں ہائی لوڈ ایپلی کیشنز بنانے کی اجازت دیتا ہے جو غیر مطابقت پذیر موڈ میں کام کرتی ہیں۔ فریم ورک کا تجربہ Yandex سطح کے بوجھ کے تحت کیا گیا ہے اور اسے Yandex Go، Lavka، Delivery، Market اور Fintech پروجیکٹس جیسی خدمات میں استعمال کیا جاتا ہے۔ صارف کا کوڈ C++ میں لکھا گیا ہے اور اپاچی 2.0 لائسنس کے تحت اوپن سورس ہے۔

مائیکرو سروس فن تعمیر کے ساتھ ایپلی کیشنز تیار کرنے کے لیے صارف بہترین موزوں ہے۔ ابتدائی طور پر، فریم ورک Yandex Taxi کے لیے تیار کیا گیا تھا، اس کی مدد سے ٹیم نے یک سنگی ایپلی کیشن سے ایک فن تعمیر میں تبدیل کیا جو آپ کو الگ الگ آزاد اجزاء (مائکرو سروسز) تیار کرنے اور انہیں مختلف ایپلی کیشنز میں استعمال کرنے کی اجازت دیتا ہے۔ مائیکرو سروسز خود مختار ہیں، لہذا اسی طرح کے فن تعمیر پر مبنی ایپلی کیشن کو اپ ڈیٹ کرنا اور اس میں نئی ​​خصوصیات شامل کرنا آسان ہے۔ اس طرح، ٹیکسی آرڈرز کے لیے ڈرائیور کی تلاش کے لیے مائیکرو سروس کو اسی طرح کے کام کے لیے استعمال کیا جا سکتا ہے - مثال کے طور پر، Yandex ڈیلیوری آرڈرز کو پورا کرنے کے لیے کورئیر تلاش کرنا۔ ڈرائیور یا کورئیر کی آمد کے وقت کا حساب لگانے اور بہت سے دوسرے کاموں کے ساتھ بھی ایسا ہی کیا جا سکتا ہے۔

فریم ورک ابتدائی طور پر وشوسنییتا اور سہولت پر زور دیتے ہوئے بنایا گیا تھا، اور اس کے اندر ترقی، تشخیص، نگرانی، ڈیبگنگ اور تجربات کے لیے ضروری ہر چیز فراہم کی گئی ہے۔ مثال کے طور پر، صارف تجویز کرتا ہے کہ تالیف کے مرحلے پر غلطیوں کو کیسے ٹھیک کیا جائے، مختلف ڈیٹا بیس کے ساتھ کام کر سکتا ہے، فلائی پر پیرامیٹرز تبدیل کر سکتا ہے، وغیرہ۔ Ubuntu, Debian, Fedora, Arch, Gentoo, macOS سسٹمز, x86, x86_64, AArch64, Arm architectures, GCC 8+ اور Clang 9+ compilers, C++17, C++20, C++23 معیارات کے لیے اعلان کردہ حمایت۔

اس کمپوزیشن میں DBMS (MongoDB, PostgreSQL, Redis, ClickHouse, MySQL) کے ساتھ متضاد کام کے لیے ڈرائیورز شامل ہیں، مختلف پروٹوکولز (HTTP، HTTPS، GRPC، TCP، UDP، TLS) کے لیے غیر مطابقت پذیر کام کرنے والے کلائنٹس اور سرورز، ہم آہنگی کے انتظام کے لیے کم سطح کے پرائمیٹوز شامل ہیں۔ اور آپریٹنگ سسٹم کی صلاحیتوں تک رسائی کے ساتھ ساتھ JSON/YAML/BSON فارمیٹس میں کیش، ٹاسک، تقسیم شدہ تالے، ٹریسنگ، میٹرکس، اعداد و شمار اور ڈیٹا کے ساتھ کام کرنے کے لیے اعلیٰ سطحی اجزاء۔ یہ بغیر رکے سروس کنفیگریشن کو فلائی پر تبدیل کرنے کی حمایت کرتا ہے۔

پہلے، Yandex نے اپنی دیگر کلیدی ٹیکنالوجیز کو اوپن پروجیکٹس کی شکل میں منتقل کیا - مثال کے طور پر، تقسیم شدہ ڈیٹا بیس مینجمنٹ سسٹم YDB، جو فی سیکنڈ لاکھوں درخواستوں پر کارروائی کرنے کی صلاحیت رکھتا ہے، نیز CatBoost مشین لرننگ لائبریری، جسے Yandex تلاش اور دیگر میں استعمال کرتا ہے۔ خدمات

ماخذ: opennet.ru

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