Yandex ya buga lambar tushe na tsarin mai amfani, wanda ke ba ku damar ƙirƙirar aikace-aikacen babban lodi a cikin C++ waɗanda ke aiki a yanayin asynchronous. An gwada tsarin a ƙarƙashin nauyin matakan Yandex kuma ana amfani dashi a ayyuka kamar Yandex Go, Lavka, Bayarwa, Kasuwa da ayyukan fintech. An rubuta lambar mai amfani a cikin C++ kuma an buɗe shi a ƙarƙashin lasisin Apache 2.0.
Mai amfani ya fi dacewa don haɓaka aikace-aikace tare da gine-ginen microservice. Da farko, an tsara tsarin don Yandex Taxi, tare da taimakonsa ƙungiyar ta canza daga aikace-aikacen monolithic zuwa gine-ginen da ke ba ku damar haɓaka abubuwan haɗin kai daban-daban (microservices) da amfani da su a aikace-aikace daban-daban. Microservices masu cin gashin kansu ne, don haka aikace-aikacen da ya danganci gine-gine iri ɗaya yana da sauƙin ɗaukakawa da ƙara sabbin abubuwa zuwa gare shi. Don haka, ana iya amfani da microservice don nemo direba don odar Taxi don aiki iri ɗaya - alal misali, nemo mai jigilar kaya don cika umarnin Isar da Yandex. Hakanan ana iya yin haka tare da ƙididdige lokacin isowar direba ko masinja da sauran ayyuka da yawa.
An ƙirƙiri tsarin daga tushe tare da mai da hankali kan aminci da amfani, kuma ya haɗa da duk abin da ake buƙata don haɓakawa, bincike, sa ido, gyara kurakurai, da gwaji. Misali, mai amfani yana ba da shawarar yadda za a gyara kurakurai yayin tattara bayanai, zai iya aiki tare da bayanai daban-daban, canza sigogi akai-akai, da sauransu. An kuma sanar da tallafi ga tsarin daban-daban. Ubuntu, Debian, Fedora, Arch, Gentoo, macOS, x86, x86_64, AArch64, Tsarin Arm, GCC 8+ da Clang 9+ compilers, C++17, C++20, C++23 ma'auni.
Kunshin ya haɗa da direbobi don aikin asynchronous tare da DBMS (MongoDB, PostgreSQL, Redis, ClickHouse, MySQL), abokan ciniki masu aiki asynchronous da sabobin Ga yarjejeniyoyi daban-daban (HTTP, HTTPS, GRPC, TCP, UDP, TLS), ƙananan matakan farko don sarrafa daidaitawa da samun damar damar tsarin aiki, da kuma manyan abubuwan haɗin gwiwa don aiki tare da cache, ayyuka, makullan da aka rarraba, bin diddigi, ma'auni, ƙididdiga, da bayanai a cikin tsarin JSON/YAML/BSON. Ana iya canza tsarin sabis nan take, ba tare da dakatar da sabis ɗin ba.
Yandex ta riga ta samar da wasu fasahohi masu mahimmanci, kamar tsarin rarrabawa. sarrafa bayanai YDB, wanda zai iya sarrafa miliyoyin tambayoyi a kowane daƙiƙa, da kuma ɗakin karatu na koyon injin CatBoost, wanda Yandex ke amfani da shi a cikin Bincike da sauran ayyuka.
source: budenet.ru
