Mail.ru Group 2019ren ale teknikoa

Mail.ru Group 2019ren ale teknikoa

Maiatzaren amaieran, Technopark (Bauman MSTU), Technotrack (MIPT), Technosphere (Lomonosov Moskuko Estatu Unibertsitatea) eta Technopolis (Peter the Great San Petersburgo Unibertsitate Politeknikoa) gure tituludunek diploma-proiektuak defendatu zituzten. Hiru hilabete esleitu ziren lanerako, eta mutilek beren ideian inbertitu zituzten bi urteko ikasketetan lortutako ezagutzak eta trebetasunak.

Guztira, defentsari buruzko 13 proiektu izan ziren, industria ezberdinetako hainbat arazo konponduz. Adibidez:

  • hodeiko biltegiratzea fitxategi kriptografikoen enkriptatzearekin;
  • bideo interaktiboak sortzeko plataforma (amaiera ezberdinekin);
  • sarean benetako xakean jolasteko taula adimenduna;
  • arkitektura medikuntza-artikuluak adimendun berreskuratzeko;
  • Lehen hezkuntzako haurrei algoritmoaren oinarriak irakasteko softwarea.

Baita negozio unitateetako proiektuak ere:

  • TamTam messengerrako CRM sistema;
  • Odnoklassniki-ren mapan gaikako argazkiak bilatzeko web zerbitzua;
  • helbideak geokodetzeko zerbitzua MAPS.MErako.

Gaur, zehatzago esango dizugu gure lizentziatuen bost proiektuei buruz.

Artikulu medikoen bilaketa adimentsua

Mail.ru Group 2019ren ale teknikoa

Arlo zientifikoan arlo asko daude, eta horietako bakoitzean ikerketak egiten dira, artikulu ugari argitaratzen dira hainbat aldizkaritan. Hauek dira informazioaren teknologiak, fisika, matematikak, biologia, medikuntza eta beste hainbat.

Authors proiektua medikuaren arloan zentratzea erabaki zuen. Medikuntza gaiei buruzko artikulu ia guztiak PubMed atarian biltzen dira. Atariak bere bilaketa eskaintzen du. Hala ere, bere gaitasunak oso mugatuak dira. Hori dela eta, mutilek bilaketa-sistema hobetu zuten, kontsulta luzeetarako laguntza eta gaiaren modelizazioa erabiliz kontsultak fintzeko gaitasuna gehitu zuten.

Mail.ru Group 2019ren ale teknikoa
SERP-ek dokumentuen zerrenda sailkatua dauka, gaiak definituta, eta gai horiei lotutako hitzak eta terminoak nabarmentzen dira probabilitatezko gaiaren modelizazioa erabiliz. Erabiltzaileak nabarmendutako terminoetan klik egin dezake bilaketa-kontsulta murrizteko.

Mail.ru Group 2019ren ale teknikoa
PubMed datu-base erraldoian bilaketak azkar egiteko, egileek beren bilatzaile propioa idatzi zuten, edozein azpiegituratan erraz integra daitekeena.

Bilaketa hiru fasetan egiten da:

  1. Alderantzizko indizea erabiliz, dokumentu hautagaiak hautatzen dira.
  2. Hautagaiak BM25F algoritmoa erabiliz sailkatzen dira, bilaketan zehar dokumentuetako hainbat eremu kontuan hartzen dituena. Beraz, izenburuko hitzek pisu handiagoa dute abstraktuko hitzek baino.
  3. Cache-sistema bat ere erabiltzen da maiz egiten diren eskaerak prozesatzea bizkortzeko.

Mail.ru Group 2019ren ale teknikoa

Mikrozerbitzuen arkitektura:

Mail.ru Group 2019ren ale teknikoa
Funtsean, testu egituratutako datuak zerbitzuen artean transferitzen dira. Transferentzia abiadura handietarako, GRPC erabiltzen da - mikrozerbitzuen arkitekturako moduluak konektatzeko esparrua. Datuen serializazioa Protobuf mezu-truke formatua erabiliz ere erabiltzen da.

Zer osagai ditu sistemak:

  • Node.js-en sarrerako erabiltzaileen eskaerak prozesatzeko zerbitzaria.
  • Karga orekatzeko eskaerak nginx proxy zerbitzaria erabiliz.
  • Flask zerbitzariak REST APIa inplementatzen du eta Node.js-tik birbidaltzen diren eskaerak jasotzen ditu.
  • Datu gordinak eta prozesatutako guztiak, baita kontsultaren informazioa ere, MongoDB-n gordetzen dira.
  • Dokumentuen tematizaziorako emaitza garrantzitsuen eskaera guztiak RabbitMQ-ra doaz.

Bilaketa-emaitzen adibidea:

Mail.ru Group 2019ren ale teknikoa

Hurrengo egiteko asmoa duguna:

  • Gai jakin bati buruzko iritziak biltzeko gomendioak (dokumentu batean gai garrantzitsuak identifikatzea eta dokumentuen azpimultzoetan bilaketak egitea).
  • Bilatu PDF fitxategiak.
  • Testu semantikoaren segmentazioa.
  • Jarraitu gaiak eta joerak denboran zehar.

Proiektu taldea: Fedor Petryaykin, Vladislav Dorozhinsky, Maxim Nakhodnov, Maxim Filin

Blokeen erregistroa

Mail.ru Group 2019ren ale teknikoa

Gaur egun, programazioa eta informatika irakasten ari direnean, lehen hezkuntzako adineko haurrek (5-7 maila) arazoak dituzte materiala menperatzeko. Gainera, ikasleek etxean lanak egin nahi badituzte, software osagarria instalatu behar dute ordenagailuetan. Irakasleek arazoen antzeko irtenbide ugari egiaztatu behar dituzte, eta urrutiko ikaskuntzaren kasuan, ikasleen lanak jasotzeko metodologia ere garatu behar dute.

Block Log proiektuaren egileek konklusiora iritsi ziren: Lehen Hezkuntzako adineko haurrei algoritmoaren oinarriak irakasteko orduan, ez luke arreta programazio-lengoaiaren aginduak memorizatzea, algoritmo-diagramak eraikitzea baizik. Horri esker, ikasleek denbora eta esfortzua eman ahal izango dute algoritmo bat diseinatzen, egitura sintaktiko astunak idatzi beharrean.

Plataforma Blokeen erregistroa aukera ematen du:

  1. Sortu eta editatu fluxu-diagramak.
  2. Exekutatu sortutako fluxu-diagramak eta ikusi haien lanaren emaitza (irteerako datuak).
  3. Gorde eta kargatu sortutako proiektuak.
  4. Raster irudiak marraztu (haurrak sortutako algoritmo batean oinarritutako irudi bat sortzea).
  5. Sortutako algoritmoaren konplexutasunari buruzko informazioa jasotzea (algoritmoan egindako eragiketa kopuruaren arabera).

Rolak irakasle eta ikasletan banatzea espero da. Edozein erabiltzailek ikasle-egoera jasotzen du; irakasle-egoera lortzeko, sistemaren administratzailearekin harremanetan jarri behar duzu. Irakasleak arazoen deskribapenak eta baldintzak sartu ez ezik, ikasle batek sisteman arazoaren konponbidea bidaltzen duenean automatikoki abiaraziko diren proba automatikoak ere sor ditzake.

Arakatzailearen blokeen erregistro-editorea:

Mail.ru Group 2019ren ale teknikoa

Arazoa konpondu ondoren, ikasleak soluzioa deskargatu eta emaitzak ikusi ditzake:

Mail.ru Group 2019ren ale teknikoa

Plataforma Vue.js-en front-end aplikazio batek eta Ruby on Rails-en back-end aplikazio batek osatzen dute. PostgreSQL datu-base gisa erabiltzen da. Inplementazioa errazteko, sistemaren osagai guztiak Docker ontzietan bildu eta Docker Compose erabiliz muntatzen dira. Block Log-en mahaigaineko bertsioa Electron esparruan oinarritzen da. Webpack erabili zen JavaScript kodea eraikitzeko.

Proiektu taldea: Alexander Barulev, Maxim Kolotovkin, Kirill Kucherov.

TamTam messengerrako CRM sistema

Mail.ru Group 2019ren ale teknikoa

CRM enpresen eta TamTam erabiltzaileen arteko elkarrekintza erosoa egiteko tresna da. Funtzio hauek ezarri dira:

  • Programazio trebetasunik gabe bot-ak sortzeko aukera ematen duen bot eraikitzailea. Minutu gutxitan guztiz funtzionatzen duen bot bat lor dezakezu, erabiltzaileei informazio batzuk erakutsi ez ezik, datuak bildu ere, barne. administratzaileak geroago ikus ditzakeen fitxategiak.
  • RSS. RSS edozein kanaletara erraz konekta dezakezu.
  • Argitalpena atzeratua. Aurrez ezarritako orduetan mezuak bidaltzeko eta ezabatzeko aukera ematen du.

Taldeak Bot APIa probatzen ere parte hartu zuen, norberak idatzitako hainbat bot sortuz, hala nola 2019ko Hockeyko Munduko Koparako bot bat, gure zerbitzuan erregistratzeko/baimenetarako bot bat eta CI/CDrako bot bat.

Irtenbidearen azpiegitura:

  • Kudeaketa zerbitzariak zerbitzari bakoitzaren eta Docker edukiontzi bakoitzaren jarraipen-sistema dauka, arazo bat azkar eta eroso detektatzeko eta konpontzeko, hainbat neurketa eta erabilera-estatistikak ikusteko. Gure aplikazioaren urruneko konfigurazioa kudeatzeko sistema bat ere badago.
  • Eszenatze zerbitzariak gure aplikazioaren uneko bertsioa dauka, garapen-taldeak proba orokorrean eskuragarri.
  • Kudeaketa eta eszenatze zerbitzariak VPN bidez soilik daude erabilgarri garatzaileentzat, eta ekoizpen zerbitzariak aplikazioaren bertsioa du. Garatzaileen eskuetatik isolatuta dago eta azken erabiltzailearentzat soilik dago eskuragarri.
  • CI/CD sistema Github eta Travis erabiliz inplementatu zen, TamTam-en bot pertsonalizatua erabiliz jakinarazpena.

Mail.ru Group 2019ren ale teknikoa

Aplikazioen arkitektura soluzio modularra da. Aplikazioa, datu-basea, konfigurazio-kudeatzailea eta monitorizazioa Docker edukiontzi bereizietan abiarazten dira, eta horri esker, abiarazteko ingurunetik abstraitzeko, edukiontzi bereizi bat aldatu edo berrabiarazi dezakezu. Sare-topologia bat sortzea eta edukiontziak kudeatzea Docker Compose erabiliz egiten da.

Mail.ru Group 2019ren ale teknikoa

Proiektu taldea: Alexey Antufiev, Egor Gorbatov, Alexey Kotelevsky.

ForkMe

Mail.ru Group 2019ren ale teknikoa

ForkMe proiektua bideo interaktiboak ikusteko plataforma bat da, non zure bideoa sortu eta lagunei erakusteko. Zergatik behar ditugu bideo interaktiboak ohikoak badira?

Bideoaren trama ez-lineala eta jarraipena beraiek aukeratzeko gaitasunari esker, ikuslea inplikatzea ahalbidetzen dute, eta eduki sortzaileek istorio bereziak erakutsi ahal izango dituzte, erabiltzaileen eragina izango duten argumentuak. Era berean, eduki-sortzaileek, bideo-bihurketa estatistikak aztertuz, ikusleari gehien interesatzen zaiona ulertu eta materialak erakargarriagoak izango dira.

Proiektua garatzerakoan, mutilak Netflix-en Bandersnatch film interaktiboan inspiratu ziren, ikustaldi eta kritika on asko jaso zituena. MVP jada idatzita zegoenean, Youtube serie interaktiboetarako plataforma bat abian jartzeko asmoa zuela agertu zen, eta horrek berriro ere norabide honen ospea berresten du.

MVP-k honako hauek ditu: erreproduzitzaile interaktiboa, bideo-eraikitzailea, edukiaren eta etiketen araberako bilaketa, bideo bildumak, iruzkinak, ikustaldiak, balorazioak, kanala eta erabiltzaile-profilak.

Mail.ru Group 2019ren ale teknikoa

Proiektuan erabilitako teknologia pila:

Mail.ru Group 2019ren ale teknikoa

Nola aurreikusten da proiektua garatzea:

  • Bideorako trantsizioei buruzko estatistikak eta infografiak biltzea;
  • guneko erabiltzaileentzako jakinarazpenak eta mezu pertsonalak;
  • Android eta iOSerako bertsioak.

Honen ondoren gehitzeko asmoa dugu:

  • zure telefonotik bideo-istorioak sortzea;
  • deskargatutako bideo zatiak editatzea (adibidez, moztea);
  • erreproduzitzailean publizitate interaktiboa sortzea eta abian jartzea.

Proiektu taldea: Maxim Morev (fullstack garatzailea, proiektuaren arkitekturan lan egin zuen) eta Roman Maslov (fullstack garatzailea, proiektuaren diseinuan lan egin zuen).

On-Line-On-Board

Mail.ru Group 2019ren ale teknikoa

Mail.ru Group 2019ren ale teknikoa

Gaur egun, gurasoek arreta handia jartzen diote beren seme-alaben garapen mentalari, eta umeek jolas intelektualak interesatzen zaizkie. Hori dela eta, xakea ospea lortzen ari da berriro. Eta, oro har, xakea nahiko ezaguna den arren, jokoetarako ohiko aurkari bat aurkitzea arazotsua da. Hori dela eta, jende askok sareko xake zerbitzuak erabiltzen ditu, jokalari askok benetako piezekin "zuzenean" jokatu nahi badute ere. Hala ere, xakean jokatzean, pertsona batek buruko esfortzu handia egiten du eta nekatu egiten da, eta neke hori ordenagailu edo telefono adimendunean eserita egotearen eragin negatiboarekin osatzen da. Ondorioz, garuna gainkargatu egiten da bi partida besterik ez ondoren.

Faktore horiek guztiek hiru zatiz osatuta dagoen On-Line-On-Board proiektuaren ideiara bultzatu zituzten egileak: xake-taula fisikoa, mahaigaineko aplikazioa eta web-zerbitzua. Taula xake-zelai erregularra da, piezen posizioa ezagutzen duena eta, adierazle argi baten laguntzaz, aurkariaren mugimenduak adierazten dituena. Plaka USB bidez konektatuta dago ordenagailu batera eta mahaigaineko aplikazioarekin komunikatzen da. Entrenamendu moduan (eta haurrentzat), zure mugimendu posibleak nabarmentzen dira.

Aplikazioak taula kudeatzeko oinarrizko funtzioak hartzen ditu, eta horrek bere kostua asko murrizteko eta funtzio gehienen ezarpena software mailara eramateko aukera ematen du. Aplikazioa eguneratze dinamikoa duen balio nagusia web zerbitzu batekin komunikatzen da.

Produktua erabiltzeko eszenatoki nagusia: pertsona batek zerbitzuan jokatzen du, bigarrenak zerbitzura konektatuta dagoen taula fisiko batean. Hau da, zerbitzuak funtzio komunikatiboa hartzen du.

Proiektu taldea: Daniil Tuchin, Anton Dmitriev, Sasha Kuznetsov.

Gure hezkuntza proiektuei buruz gehiago irakur dezakezu hemen lotura hau. Eta sarriago bisitatu kanala Technostream, programazioari, garapenari eta beste diziplina batzuei buruzko hezkuntza-bideo berriak agertzen dira bertan aldian-aldian.

Iturria: www.habr.com

Gehitu iruzkin berria