Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe

Chirimo ichi takazviwana tiri mumamiriro ezvinhu anofadza zvikuru. Nekuda kwedenda, zvakava pachena kuti makonferensi edu ezhizha aifanira kutamiswa pamhepo. Uye kuti tivafambise pamhepo nemazvo, yakagadzirira-yakagadzirwa software mhinduro dzaive dzisina kufanira isu; taifanira kunyora zvedu. Uye takanga tine mwedzi mitatu yekuita izvi.

Zviri pachena kuti yave mwedzi mitatu inofadza. Asi kubva kunze hazvisi pachena zvachose: chii chiri online musangano chikuva? Inosanganisira zvikamu zvipi? Naizvozvo, pakupera kwezhizha DevOops conferences, ndakabvunza avo vaive nebasa iri:

  • Nikolay Molchanov - technical director weJUG Ru Group;
  • Vladimir Krasilshchik ari pragmatic Java programmer anoshanda pane backend (iwe unogona zvakare kuona mishumo yake pamusangano wedu weJava);
  • Artyom Nikonov ndiye anoita nezvese mavhidhiyo edu ekutepfenyura.

Nenzira, kumatsutso-yechando makonferensi isu tichashandisa yakagadziridzwa vhezheni yepuratifomu imwechete - saka vazhinji vaverengi vehabra vachange vachiri vashandisi vayo.

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe

Mufananidzo mukuru

β€” Chikwata chacho chaive chii?

Nikolay Molchanov: Tine muongorori, mugadziri, muedzi, vatatu vemberi, uye kumashure. Uye, hongu, nyanzvi yakaumbwa neT!

β€” Maitirwo acho airatidzika seiwo zvake?

Nikolay: Kusvika pakati paKurume, isu takanga tisina kugadzirira online zvachose. Uye munaKurume 15, iyo carousel yese yepamhepo yakatanga kutenderera. Isu takagadzira akati wandei marepositori, takaronga, takakurukura nezvekutanga zvivakwa uye takaita zvese mumwedzi mitatu.

Izvi, hongu, zvakapfuura nepakati pematanho ekutanga ekuronga, zvivakwa, kusarudzwa kwezvinhu, kuvhota kune izvo zvinhu, mutemo weaya maficha, dhizaini yavo, kusimudzira, kuyedzwa. Somugumisiro, pana June 6, takaendesa zvinhu zvose kukugadzira. Vadivelu Comedy TechTrain. Paiva nemazuva makumi mapfumbamwe ezvose.

β€” Takakwanisa here kuita zvatakazvipira?

Nikolay: Sezvo tave kutora chikamu mumusangano weDevOops online, zvinoreva kuti yakashanda. Ini pachangu ndakazvipira kune chinhu chikuru: Ndichaunza vatengi chishandiso chavanogona kuita musangano wepamhepo.

Dambudziko raive iri: tipei chishandiso chatinogona kutepfenyura misangano yedu kune vane matikiti.

Kuronga kwese kwakakamurwa kuita nhanho dzinoverengeka, uye ese maficha (anosvika makumi matatu epasi rose) akakamurwa kuita zvikamu zvina:

  • izvo zvatichaita (hatigoni kurarama tisina ivo),
  • izvo zvatichaita kechipiri,
  • izvo zvatisingazoiti,
  • uye zvatisingazombofi takazviita.

Isu takagadzira ese maficha kubva mumapoka maviri ekutanga.

- Ndinoziva kuti mazana matanhatu enyaya dzeJIRA dzakagadzirwa. Mumwedzi mitatu, makaita 600 microservices, uye ndinofungidzira kuti zvakanyorwa kwete muJava chete. Iwe wakashandisa akasiyana matekinoroji, une maviri Kubernetes masumbu munzvimbo nhatu dzekuwanikwa uye 13 RTMP hova muAmazon.

Ngatitarisei zvino chikamu chimwe nechimwe chehurongwa zvakasiyana.

Kutenderera

- Ngatitangei kana tatova nemufananidzo wevhidhiyo, uye uchiendeswa kune mamwe masevhisi. Artyom, tiudze kuti kutenderera uku kunoitika sei?

Artyom Nikonov: Yedu general scheme inoita seizvi: mufananidzo kubva kamera -> yedu yekudzora kamuri -> yemuno RTMP server -> Amazon -> vhidhiyo inoridza. Mamwe mashoko akanyora nezvazvo pana HabrΓ© muna Chikumi.

Kazhinji, kune nzira mbiri dzepasi rose dzekuita izvi: ingave pane Hardware kana zvichibva pane software mhinduro. Isu takasarudza nzira yesoftware nekuti iri nyore mune yevatauri vari kure. Haisi nguva dzose zvinogoneka kuunza Hardware kumutauri mune imwe nyika, asi kuendesa software kune mukurukuri kunoratidzika kunge kuri nyore uye kwakavimbika.

Kubva pakuona kwehardware, tine imwe nhamba yemakamera (muma studio edu uye kune vatauri vari kure), imwe nhamba yezvinodzora zviri kure mu studio, iyo dzimwe nguva inofanirwa kugadziriswa pasi petafura panguva yekutepfenyura.

Zviratidzo kubva mumidziyo iyi zvinopinda mumakomputa ane makadhi ekutora, makadhi ekuisa/anoburitsa, uye makadhi ekunzwika. Ikoko masaini anosanganiswa uye anounganidzwa kuita marongero:

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe
Muenzaniso wegadziriro yevatauri vana

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe
Muenzaniso wegadziriro yevatauri vana

Kupfuurirazve, kutepfenyura kunopfuurira kunopihwa nerubatsiro rwemakomputa matatu: pane muchina mumwechete mukuru uye vaviri vanoshanda vachichinjana. Yekutanga komputa inounganidza mushumo wekutanga, wechipiri - kuputsika, yekutanga - mushumo unotevera, wechipiri - kuputsa kunotevera, zvichingodaro. Uye muchina mukuru unosanganisa wekutanga neyechipiri.

Izvi zvinogadzira rudzi rwetatu, uye kana chero yeaya node ikatadza, tinogona nekukurumidza uye pasina kurasikirwa kwemhando kuenderera mberi nekuendesa zvirimo kune vatengi. Taiva nemamiriro ezvinhu akadaro. Muvhiki yekutanga yemisangano, takagadzirisa muchina mumwe chete, tikaubatidza/kuudzima. Vanhu vanoita kunge vari kufara nekushingirira kwedu.

Tevere, hova kubva kumakomputa dzinoenda kune yemuno sevha, iyo ine mabasa maviri: nzira RTMP hova uye rekodhi backups. Saka isu tine akawanda mapoinzi ekurekodha. Vhidhiyo hova dzinobva dzatumirwa kune chikamu chesystem yedu yakavakirwa paAmazon SaaS masevhisi. Isu tinoshandisa MediaLive:,S3,CloudFront.

Nikolay: Chii chinoitika ipapo vhidhiyo isati yasvika kuvateereri? Iwe unofanirwa kuicheka neimwe nzira, handiti?

Artyom: Isu tinomanikidza vhidhiyo pane yedu uye tinoitumira kuMediaLive. Isu tinoparura matranscoder ipapo. Vanoshandura mavhidhiyo munguva chaiyo kuita zvisarudzo zvakati kuti kuitira kuti vanhu vaone pamafoni avo, kuburikidza neInternet isina kunaka munyika, nezvimwe zvakadaro. Zvino hova idzi dzinochekwa kuita chunks, iyi ndiyo mashandiro anoita protocol HLS. Isu tinotumira playlist kune yekumberi ine zvinongedzo kune aya chunks.

- Tiri kushandisa 1080p resolution?

Artyom: Hupamhi hwevhidhiyo yedu hwakafanana ne1080p - 1920 pixels, uye kureba kudiki zvishoma, mufananidzo wacho wakawedzera kureba - pane zvikonzero zveizvi.

Player

- Artyom akatsanangura kuti vhidhiyo inopinda sei munzizi, kuti inogovaniswa sei mumitambo yakasiyana-siyana yezvigadziriso zvakasiyana-siyana, inocheka kuita chunks uye inopinda mumutambi. Kolya, zvino ndiudze kuti rudzii rwemutambi uyu, kuti inodya sei rukova, nei HLS?

Nikolay: Tine mutambi uyo vese vanoona musangano vanogona kuona.

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe

Chaizvoizvo, ichi chiputi chakatenderedza raibhurari hls.js, pakanyorwa vamwe vatambi vakawanda. Asi isu taida kunyatsoita basa: kudzosera kumashure uye kumaka nzvimbo pane munhu, ishumo yaari kuona izvozvi. Taidawo maroon edu, marudzi ese emalogo nezvimwe zvese zvakavakwa matiri. Naizvozvo, isu takasarudza kunyora yedu raibhurari (yakapetwa pamusoro peHLS) uye kuimisikidza pane saiti.

Uku ndiko kushanda kwemidzi, saka yakaitwa pekutanga. Uye ipapo zvinhu zvose zvakakura zvakaipoteredza.

Muchokwadi, kuburikidza nemvumo, mutambi anogamuchira kubva kubackend playlist ine zvinongedzo kune chunks zvine hukama nenguva uye mhando, anorodha anodiwa uye anoaratidza kumushandisi, achiita mamwe "mashiripiti" munzira.

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe
Muenzaniso wenguva

- Bhatani rinovakwa mukati memutambi chaimo kuratidza rondedzero yenguva yemishumo yese...

Nikolay: Ehe, isu takabva tagadzirisa dambudziko rekushandisa mushandisi. Pakati paKubvumbi, takasarudza kuti hatizotepfenyura imwe neimwe yemisangano yedu pane imwe webhusaiti, asi taizobatanidza zvese pane imwe. Kuti vashandisi veFull Pass tikiti vagone kushandura vakasununguka pakati pemisangano yakasiyana: zvese nhepfenyuro mhenyu uye kurekodha zvekare.

Uye kuita kuti zvive nyore kuti vashandisi vafambe nerukova rwazvino uye kushandura pakati pematiraki, isu takafunga kugadzira bhatani re "Kutepfenyura Yese" nemakadhi erepoti akachinjika ekuchinja pakati pemateki nemishumo. Pane keyboard control.

- Paive paine matambudziko ehunyanzvi neizvi?

Nikolay: Vaiva nebhara rekupumburudza paiiswa pokutangira mishumo yakasiyana-siyana.

- Mukupedzisira, wakashandisa mamaki aya pabhara rekupumburudza YouTube isati yaita zvakafanana?

Artyom: Vaive nayo mu beta ipapo. Zvinoita senge ichi chinhu chakaomarara nekuti vanga vachichiyedza zvishoma nevashandisi gore rapfuura. Uye ikozvino yasvika kutengeswa.

Nikolay: Asi isu takatoita kuti itengeswe nekukurumidza. Chokwadi, kuseri kwechinhu ichi chiri nyore kune huwandu hukuru hwekumashure, kumberi, kuverenga uye masvomhu mukati memutambi.

Frontend

- Ngationei kuti izvi zvemukati zvatinoratidza (kadhi rekutaura, vatauri, webhusaiti, hurongwa) zvinosvika sei kumberi?

Vladimir Krasilshchik: Tine akati wandei emukati IT masisitimu. Pane system iyo mishumo yese uye vese vatauri vanopinzwa. Pane hurongwa hwekuti mukurukuri atore chikamu mumusangano. Mukurukuri anoendesa chikumbiro, sisitimu inoitora, ipapo pane imwe pombi zvinoenderana neiyo iyo rondedzero inogadzirwa.

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe
Aya ndiwo maonero anoita mutauri pombi

Hurongwa uhu ndiko kukura kwedu kwemukati.

Tevere, iwe unofanirwa kugadzira hurongwa kubva kune wega mishumo. Sezvaunoziva, iri idambudziko reNP-rakaoma, asi isu neimwe nzira tinorigadzirisa. Kuti tiite izvi, tinotangisa chimwe chikamu chinoburitsa hurongwa uye tinochiisa kune yechitatu-bato gore sevhisi Contentful. Ikoko, zvinhu zvose zvinotaridzika setafura umo mune mazuva emusangano, mumazuva ane nguva, uye munzvimbo dzemaroti mune mishumo, mazororo kana mabasa ekutsigira. Saka izvo zvatinoona zviri mune yechitatu-bato sevhisi. Uye basa nderekuisvitsa kunzvimbo.

Zvingaita sekuti saiti ingori peji ine mutambi, uye hapana chakaoma apa. Kunze kwekuti hazvisi. Iyo yekumashure kuseri kwepeji ino inoenda kuKugutsikana, inotora hurongwa kubva ipapo, inogadzira zvimwe zvinhu uye inoitumira kumberi. Tichishandisa websocket yekubatanidza, inoitwa nemutengi wese wepuratifomu yedu, tinomutumira inogadziridza kuhurongwa kubva kumashure kuenda kumberi.

Mhosva chaiyo: mukurukuri akachinja mabasa panguva yemusangano. Tinofanira kuchinja bheji rekambani yaanoshandira. Izvi zvinoitika sei kubva kumashure? Yekuvandudza inotumirwa kune vese vatengi kuburikidza newebhu socket, uye ipapo iyo yekumberi pachayo inodhirowa mutsara wenguva. Zvose izvi zvinoitika pasina musono. Iko kusanganiswa kwegore sevhisi uye akati wandei ezvikamu zvedu zvinotipa mukana wekugadzira zvese izvi zvirimo uye kuzvipa kumberi.

Nikolay: Izvo zvakakosha kujekesa pano kuti saiti yedu haisi yekirasi SPA application. Aya ese ari maviri dhizaini-yakavakirwa, yakapihwa webhusaiti uye SPA. Google inoona saiti ino seyakashandurwa HTML. Izvi zvakanakira SEO uye nekuendesa zvirimo kumushandisi. Iyo haimirire 1,5 megabytes yeJavaScript kuti itakure usati waona peji, inokurumidza kuona iyo yakatodhindwa peji, uye iwe unoinzwa pese paunochinja chirevo. Zvese zvinoitika muhafu yesekondi, sezvo zvirimo zvatogadzirira uye zvakatumirwa munzvimbo chaiyo.

- Ngatidhirowe mutsara pasi pezvese zviri pamusoro nekunyora matekinoroji. Tyoma akati isu tine 5 Amazon hova, uye tinoendesa vhidhiyo uye ruzha ipapo. Tine bash scripts ipapo, tinoashandisa kutanga nekugadzirisa...

Artyom: Izvi zvinoitika kuburikidza neAWS API, kune akawanda akawanda ehunyanzvi padivi masevhisi ipapo. Takagovana mabasa edu kuti ndiendese kwa CloudFront, uye kumberi-kumagumo uye kumashure-kumashure vanogadzira vanoitora kubva ipapo. Isu tine akati wandei ekusunga kwedu kuti kurerutsa marongerwo ezvinyorwa, izvo zvatinozogadzira mu4K, nezvimwe. Sezvo mazuva ekupedzisira aive akaomarara, takazviita zvachose paAWS.

- Zvadaro zvese izvi zvinopinda mumutambi uchishandisa backend system. Tine TypeScript, React, Next.JS mumutambi wedu. Uye kumashure tine masevhisi akati wandei muC #, Java, Spring Boot uye Node.js. Izvi zvese zvinoshandiswa uchishandisa Kubernetes uchishandisa Yandex.Cloud zvivakwa.

Iniwo ndinoda kuona kuti pandaida kujairana nepuratifomu, zvakazove nyore: ese marepositori ari paGitLab, zvese zvine mazita, bvunzo dzakanyorwa, pane zvinyorwa. Ndiko kuti, kunyangwe mumodhi yekukurumidzira, vakatarisira zvinhu zvakadaro.

Business Constraints uye Analytics

-Takananga vashandisi zviuru gumi zvichienderana nezvinodiwa zvebhizinesi. Yave nguva yekutaura nezvezvirambidzo zvebhizinesi zvataive nazvo. Taifanira kuve nechokwadi chebasa rakawanda, tive nechokwadi chekuteerera mutemo pamusoro pekuchengetedzwa kwemashoko evanhu. Uye chii chimwe?

Nikolay: Pakutanga, takatanga kubva pane zvinodiwa zvevhidhiyo. Chinhu chinonyanya kukosha chinogoverwa kuchengetedza vhidhiyo kutenderera pasirese kukurumidza kuendesa kune mutengi. Zvimwe zvinosanganisira 1080p resolution, pamwe nekudzosera kumashure, izvo zvisingaite nevamwe vazhinji mukurarama modhi. Gare gare isu takawedzera kugona kugonesa 2x kumhanya, nerubatsiro rwayo unogona "kubata" nehupenyu uye kuramba uchiona musangano munguva chaiyo. Uye munzira, basa rekumaka nguva rakaonekwa. Uyezve, taifanira kushivirira-kukanganisa uye kumira mutoro we10 yekubatanidza. Kubva kubackend point yekuona, uku kunosvika zviuru gumi zvekubatanidza zvakapetwa ne000 zvikumbiro zvepeji rega rega rekuvandudza. Uye izvi zvatove 10 RPS/sec. Zvishoma.

- Paive here zvimwe zvinodikanwa zve "chaiyo kuratidzwa" nematanho epamhepo evadyidzani?

Nikolay: Hongu, izvi zvaifanira kuitwa nekukurumidza uye pasi rose. Taive nemakambani anosvika gumi pamusangano wega wega, uye ese aifanira kupedzwa muvhiki kana maviri. Nekudaro, izvo zvirimo zvinosiyana zvishoma mufomati. Asi imwe template injini yakagadzirwa inounganidza mapeji aya panhunzi, pasina kana imwe budiriro yekutora chikamu.

- Paive zvakare nezvinodiwa zveanalytics yechokwadi-nguva maonero uye manhamba. Ndinoziva kuti isu tinoshandisa Prometheus pane izvi, asi tiudze zvakadzama: ndezvipi zvinodiwa zvatinosangana nazvo pakuongorora, uye izvi zvinoitwa sei?

Nikolay: Pakutanga, isu tine zvinodikanwa zvekushambadzira zvekuunganidza kuongororwa kweA/B uye kuunganidza ruzivo kuitira kuti tinzwisise nzira yekuunza zvakanaka zvemukati kune mutengi mune ramangwana. Pane zvakare zvinodikanwa kune mamwe ma analytics pane epamwe zviitiko uye analytics aunoona (shanya counter). Ruzivo rwese rwunounganidzwa munguva chaiyo.

Tinogona kupa ruzivo urwu mufomu yakaunganidzwa kunyangwe kune vatauri: vangani vanhu vanga vachikuona pane imwe nguva nenguva. Panguva imwecheteyo, kutevedzera Federal Law 152, account yako pachako uye data rako pachako hazviteverwi chero nzira.

Ipuratifomu yatove nemidziyo yekushambadzira uye metrics edu ekuyera zviitiko zvemushandisi munguva chaiyo (uyo akatarisa chii chechipiri chemushumo) kuitira kuvaka magirafu ekupinda kumishumo. Kubva pane iyi data, tsvakurudzo iri kuitwa iyo ichaita kuti misangano inotevera ive nani.

Chitsotsi

β€” Tine here nzira dzekurwisa hutsotsi?

Nikolay: Nekuda kweiyo nguva yakaoma kubva pakuona kwebhizinesi, basa racho harina kutanga rakaiswa kuti rivhare nekukasira kusanganisa kusingakoshi. Kana vashandisi vaviri vakapinda pasi peakaundi imwechete, vaigona kuona zvirimo. Asi isu tinoziva kuti mangani maonero panguva imwe chete aivepo kubva kune imwe account. Uye takarambidza vakati wandei vaityora utsinye.

Vladimir: Kune chikwereti chayo, mumwe wevashandisi vakarambidzwa akanzwisisa kuti sei izvi zvakaitika. Akauya, akakumbira ruregerero uye akavimbisa kutenga tikiti.

- Kuti zvese izvi zviitike, unofanirwa kuteedzera vese vashandisi kubva pakupinda kusvika pakubuda, gara uchiziva zvavari kuita. Sistimu iyi inoshanda sei?

Vladimir: Ndinoda kutaura nezve analytics uye manhamba, ayo isu tozoongorora kubudirira kweshumo kana kuti tozopa kune vatinoshanda navo. Vese vatengi vanobatana kuburikidza newebhu socket yekubatanidza kune chaiyo backend cluster. Rinomira ipapo hazelcast. Mumwe nemumwe mutengi panguva yega yega anotumira zvaari kuita uye kuti ndeipi track yaari kuona. Ipapo ruzivo urwu runounganidzwa uchishandisa nekukurumidza Hazelcast mabasa uye inodzoserwa kumunhu wese anoona aya mateki. Tinoona mukona kuti vangani vanhu vava nesu.

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe

Mashoko akafanana anochengetwa mukati Mongo uye inoenda kune yedu data dziva, kubva kwatine mukana wekuvaka inonakidza girafu. Mubvunzo unomuka: vangani vashandisi vakasiyana vakaona iyi rondedzero? Tinoenda ku postgres, pane pings dzevanhu vese vakauya neid ye report iyi. Takaunganidza, takaunganidza zvakasiyana, uye zvino tava kunzwisisa.

Nikolay: Asi panguva imwecheteyo, isu tinogamuchirawo chaiyo-nguva data kubva kuPrometheus. Iyo yakagadzirirwa kupesana nese Kubernetes masevhisi, inopesana naKubernetes pachayo. Inounganidza zvese zvese, uye neGrafana tinogona kuvaka chero magirafu munguva chaiyo.

Vladimir: Kune rimwe divi, isu tinorodha izvi kuti tiwedzere OLAP kugadzirisa. Uye yeOLTP, iyo application inodhawunirodha chinhu chose kuPrometheus, Grafana uye magirafu anochinja!

- Izvi ndizvo zvinoitika kana magirafu asangana.

Dynamic Changes

- Tiudze kuti shanduko dzakasimba dzinofambiswa sei: kana chirevo chakadzimwa maminetsi matanhatu isati yatanga, chii chinoitwa? Ndeipi pipeline inoshanda?

Vladimir: Iyo pombi ine zvimiso zvakanyanya. Pane zvakawanda zvinobvira. Chekutanga ndechekuti chirongwa chekugadzira chirongwa chakashanda uye chakachinja hurongwa. Iyo yakagadziridzwa purogiramu yakakwidzwa kuContentful. Mushure mezvo iyo backend inonzwisisa kuti kune shanduko yemusangano uyu muKugutsikana, kuitora uye kuivaka patsva. Zvese zvinounganidzwa uye zvinotumirwa kuburikidza newebhusocket.

Chechipiri chinogona kuitika, kana zvese zvikaitika nekumhanya: mupepeti anoshandura nemaoko ruzivo muKugutsikana (link kuTeregiramu, mharidzo yemutauri, nezvimwewo) uye pfungwa imwechete inoshanda sekutanga.

Nikolay: Zvese zvinoitika pasina kuzorodza peji. Shanduko dzese dzinoitika zvisina musono kune mutengi. Izvo zvakafanana zvinoenda pakuchinja mishumo. Kana nguva yasvika, iyo report uye interface inoshanduka.

Vladimir: Zvakare, kune nguva yekucheka kwekutanga mishumo mumutsara wenguva. Pakutanga hapana chinhu. Uye kana iwe ukasimudza mbeva yako pamusoro pemutsetse mutsvuku, ipapo pane imwe nguva, nekuda kweiyo nhepfenyuro director, cutoffs ichaonekwa. Mutungamiriri anoseta kwakaringana kutanga kwekutepfenyura, iyo yekumashure inotora shanduko iyi, inoverengera nguva dzekutanga nekupera kweiyo track yese mharidzo zvinoenderana nehurongwa hwemusangano, inotumira kune vatengi vedu, uye mutambi anodhonza cutoffs. Iye zvino mushandisi anogona kufamba zviri nyore kusvika pakutanga uye kumagumo kweshumo. Chakanga chiri chinodikanwa chakasimba chebhizinesi, chiri nyore kwazvo uye chinobatsira. Iwe hausi kutambisa nguva kutsvaga chaiyo yekutanga nguva yemushumo. Uye kana tikaita kufanoona, zvichave zvakanaka chose.

Deployment

- Ndinoda kubvunza nezve deployment. Kolya neboka racho vakapedza nguva yakawanda pakutanga kuti vagadzirise zvigadziriswe zvose izvo zvose zvinotizarurira isu. Ndiudze, zvese zvinogadzirwa nei?

Nikolay: Kubva pakuona kwehunyanzvi, isu pakutanga taiva nezvinodiwa kuti chigadzirwa chive chakajeka sezvinobvira kubva kune chero mutengesi. Huya kuAWS kugadzira zvinyorwa zveTerraform zvakananga kubva kuAWS, kana zvakananga kubva kuYandex, kana kubva kuAzure, nezvimwe. hazvina kunyatsokwana. Taifanira kutamira kumwe pane imwe nguva.

Kwemavhiki matatu ekutanga taigara tichitsvaga nzira yekuita izvi zviri nani. Nekuda kweizvozvo, takasvika pakugumisa kuti Kubernetes mune iyi kesi ndeyedu zvese, nekuti inotibvumidza kugadzira otomatiki-kuyera masevhisi, auto-kuburitsa, uye kuwana anenge ese masevhisi kunze kwebhokisi. Sezvinongoita, masevhisi ese aifanira kudzidziswa kushanda naKubernetes, Docker, uye timu yaifanira kudzidzawo.

Tine masumbu maviri. Test uye kugadzira. Iwo akafanana zvachose maererano nehardware uye zvigadziriso. Isu tinoshandisa zvivakwa sekodhi. Masevhisi ese anotenderedzwa otomatiki munzvimbo nhatu kubva kumapazi emhando, master mapazi, bvunzo matavi, uye GitLab uchishandisa otomatiki pombi. Izvi zvakasanganiswa zvakanyanya muGitLab, zvakanyanya kusanganiswa neElastic, Prometheus.

Isu tinowana mukana wekukurumidza (yekumashure mukati memaminitsi gumi, yekumberi mukati memaminitsi mashanu) kuburitsa shanduko kune chero nharaunda ine bvunzo dzese, kusanganisa, kumhanya inoshanda bvunzo, yekubatanidza bvunzo pane zvakatipoteredza, uye zvakare kuyedza nemiedzo nharaunda yekuyedza ingangoita chinhu chimwe chete icho chatinoda kuwana mukugadzira.

Nezve bvunzo

- Unoedza zvinenge zvese, zvakaoma kutenda kuti wakanyora sei zvese. Iwe unogona here kutitaurira nezve backend bvunzo: yakawanda sei zvese zvakafukidzwa, ndeipi miedzo?

Vladimir: Mhando mbiri dzebvunzo dzakanyorwa. Yekutanga ndeye bvunzo dzezvikamu. Simudza nhanho bvunzo dzechitubu chese application uye base mukati Testcontainers. Uyu muedzo wepamusoro-soro bhizinesi mamiriro. Ini handiedze mabasa. Tinoedza zvimwe zvinhu zvikuru chete. Semuyenzaniso, muyedzo chaimo, maitiro ekupinda kumushandisi anoteedzerwa, chikumbiro chemushandisi chematiketi ekwaanogona kuenda, uye chikumbiro chekuwana kuona rukova. Zvakanyatsojeka mushandisi mamiriro.

Chinenge chinhu chimwe chete chinoshandiswa mune izvo zvinonzi bvunzo dzekubatanidza, izvo zvinomhanya pane zvakatipoteredza. Muchokwadi, kana iyo inotevera kutumirwa mukugadzira yakatenderedzwa, chaiwo ekutanga mamiriro ari kuitawo mukugadzira. Iwowo mapindiro, uchikumbira matikiti, uchikumbira kupinda CloudFront, uchitarisa kuti rukova rwunonyatsobatana nemvumo dzangu, uchitarisa chimiro chemutungamiriri.

Parizvino ndine makumi manomwe echikamu bvunzo uye angangoita makumi mana ekubatanidza bvunzo pabhodhi. Coverage iri pedyo zvikuru ne70%. Izvi ndezvezvikamu, zvishoma zvekubatanidza izvo, hapana zvakanyanya kudiwa. Tichifunga kuti purojekiti inosanganisira marudzi ese ekugadzirwa kwekodhi, ichi chiratidzo chakanaka kwazvo. Pakanga pasisina imwe nzira yekuita zvatakaita mumwedzi mitatu. Nekuti kana isu taiyedza nemaoko, tichipa maficha kune yedu tester, uye iye aiwana tsikidzi ozvidzosera kwatiri kuti zvigadziriswe, zvino rwendo rwuno rwekutenderera rwekugadzirisa kodhi rwaizorebesa, uye isu taisasangana chero nguva dzekupedzisira.

Nikolay: Sezvineiwo, kuita regression papuratifomu yese kana uchichinja rimwe basa, unofanirwa kugara uye kupuruzira kwese kwemazuva maviri.

Vladimir: Nokudaro, kubudirira kukuru kuti pandinofungidzira chimwe chinhu, ndinotaura kuti ndinoda mazuva mana pamapeni maviri ari nyore uye 4 websocket, Kolya inobvumira. Akatojaira kuti mazuva mana aya anosanganisira 1 marudzi ekuedzwa, uye zvino, zvichida, ichashanda.

Nikolay: Ini zvakare ndine 140 miedzo yakanyorwa: chikamu + inoshanda, inoita chinhu chimwe chete. Mamiriro ese akafanana anoedzwa mukugadzira, mukuyedza, uye mukugadzira. Isu zvakare munguva pfupi yapfuura takawedzera inoshanda basic UI bvunzo. Nenzira iyi tinovhara iyo yakanyanya kukosha mashandiro ayo anogona kuparara.

Vladimir: Zvechokwadi, zvakakodzera kutaura pamusoro pekuedzwa kwekutakura. Zvakanga zvakafanira kuedza chikuva pasi pemutoro pedyo neyo chaiyo kuitira kuti unzwisise kuti zvinhu zvose zviri sei, chii chiri kuitika neRabbit, chii chiri kuitika neJVMs, yakawanda sei chiyeuchidzo chinonyatsodiwa.

- Ini handizive chokwadi kana isu tiri kuyedza chero chinhu parutivi rwerukova, asi ndinorangarira kuti paive nematambudziko nematranscoder patakaita mameputs. Takaedza hova here?

Artyom: Yakaedzwa yadzokororwa. Kuronga misangano. Muchirongwa chekuronga misangano, pakanga paine matikiti eJIRA angangosvika zviuru zviviri nemazana matatu. Izvi zvingori zvinhu zvakajairika zvakaitwa nevanhu kugadzira misangano. Takatora zvikamu zvepuratifomu kune rimwe peji remisangano, raifambiswa naKirill Tolkachev (talkkv).

Kutaura chokwadi, pakanga pasina matambudziko makuru. Chaizvoizvo kakati wandei takabata caching bugs paCloudFront, takazvigadzirisa nekukurumidza - isu takangogadzirisa marongero. Paive neakanyanya kuwanda tsikidzi muvanhu, mumasevhisi ekutepfenyura pane saiti.

Panguva yemisangano, ndaifanira kunyora vamwe vatengesi vakati wandei kuti ndivhare mimwe michina nemasevhisi. Mune dzimwe nzvimbo ndaifanira kugadzira bhasikoro rangu nokuda kwezviyero. Nyika yeAV (audio-vhidhiyo) Hardware haina kunaka - une imwe mhando ye "API" yemidziyo yausingakwanise kupesvedzera. Uye zviri kure nechokwadi chekuti iwe unozogona kuwana ruzivo rwaunoda. Vatengesi ve Hardware vanononoka chaizvo, uye hazvigoneke kuwana zvaunoda kubva kwavari. Pakazara kune anopfuura zana zvidimbu zvehardware, hazvidzore izvo zvaunoda, uye iwe unonyora zvisinganzwisisike uye zvisingaite vatengesi kunze, nekuda kwaunokwanisa neimwe nzira kugadzirisa sisitimu.

Zvigadzirwa

- Ndinoyeuka sei tisati tatanga misangano takatenga zvishoma zvemichina.

Artyom: Takatenga makombiyuta, malaptop, nemabhatiri packs. Parizvino tinogona kugara pasina magetsi kwemaminetsi makumi mana. Muna June kwakava nemabhanan’ana makuru muSt. Panguva imwecheteyo, vatapi vakati wandei vanouya kwatiri ne optical link kubva kune akasiyana mapoinzi. Aya ndiwo maminetsi makumi mana ekuvaka nguva yekuvaka, panguva iyo tichava nemwenje, ruzha, makamera, nezvimwe.

- Tine nyaya yakafanana neInternet. Muhofisi mune masitudiyo edu, takakweva mambure anotyisa pakati peuriri.

Artyom: Tine 20 Gbit yefiber pakati pepasi. Kuenderera mberi nepasi, pane imwe nzvimbo kune optics, kumwe kusipo kwemaoptics, asi zvakadaro kune mashoma chiteshi pane gigabit ayo - tinomhanyisa vhidhiyo pavari pakati pemateki emusangano. Kazhinji, zviri nyore kuti ushande pane yako wega masisitimu; haugone kuita izvi pamisangano yekunze pamasaiti.

- Ndisati ndashanda kuJUG Ru Group, ndakaona magadzirirwo akaitwa makamuri emahara pamisangano isina mhepo husiku, pakanga paine hombe yekutarisisa ine ese metrics aunovaka muGrafana. Ikozvino kune zvakare imba yekudzimbahwe inogara timu yekuvandudza, iyo panguva yemusangano inogadzirisa mamwe mabhugi uye inovandudza maficha. Panguva imwecheteyo, pane yekutarisa system inoratidzwa pane yakakura skrini. Artyom, Kolya nevamwe vakomana vanogara uye vanoita shuwa kuti zvese hazvidonhe uye zvinoshanda zvakanaka.

Curiosities nematambudziko

- Wakataura zvakanaka nezve nyaya yekuti isu tiri kutenderera neAmazon, kune mutambi ane webhu, zvese zvakanyorwa mumitauro yakasiyana yehurongwa, kukanganisa kushivirira uye zvimwe zvinodiwa zvebhizinesi zvinopihwa, kusanganisira account account inotsigirwa nemasangano emutemo uye vanhu, uye isu tinokwanisa kubatana nemumwe munhu anoshandisa OAuth 2.0, pane anti-hutsotsi, kuvharisa mushandisi. Tinogona kuburitsa shanduko zvine simba nekuti takazviita nemazvo, uye zvese zvakaedzwa.

Ndiri kufarira kuziva izvo zvisinganzwisisike zvakabatanidzwa mukutanga chimwe chinhu. Pave paine chero mamiriro ezvinhu asinganzwisisike pawakanga uchigadzira backend, frontend, chimwe chinhu chinopenga chakabuda uye iwe usinganzwisise zvekuita nacho?

Vladimir: Zvinoita sekuti izvi zvakangoitika mumwedzi mitatu yapfuura. Mazuva ese. Sezvauri kuona, bvudzi rangu rose rakadzurwa.

Gadzira chikuva chevhidhiyo mumazuva makumi mapfumbamwe
Vladimir Krasilshchik mushure memwedzi mitatu, apo imwe mhando yemutambo yakabuda uye hapana akanzwisisa zvekuita nayo.

Zuva rega rega pane chimwe chinhu chakadai, apo pane imwe nguva yaunotora uye kubvarura bvudzi rako, kana kuziva kuti hakuna mumwe munhu, uye iwe chete unogona kuzviita. Chiitiko chedu chekutanga chikuru chaive TechTrain. Musi waJune 6 pa2 am isu takanga tisati tafambisa mamiriro ekugadzira, Kolya akanga achiibudisa. Uye iyo account account haina kushanda sesevha yemvumo uchishandisa OAuth2.0. Isu takaishandura kuita OAuth2.0 mupi wekubatanidza chikuva kwairi. Ndakanga ndichishanda kwemaawa angangoita 18 akatwasuka, ndakatarisa komputa uye hapana chandakaona, handina kunzwisisa kuti nei isiri kushanda, uye Kolya akatarisa kodhi yangu kure, akatsvaga bug muSpring configuration. , vakaiwana, uye LC yakashanda, uye mukugadzira zvakare.

Nikolay: Uye awa pamberi peTechTrain kuburitswa kwakaitika.

Nyeredzi zhinji dzaive dzakarongeka pano. Isu takanga tine rombo rakanaka nekuti taive nechikwata chepamusoro, uye munhu wese akafemerwa nepfungwa yekuzviita online. Mwedzi mitatu yese iyi takatungamirirwa nenyaya yekuti "takagadzira YouTube." Handina kuzvibvumira kubvarura bvudzi rangu, asi ndakaudza munhu wose kuti zvinhu zvose zvaizoshanda, nokuti chaizvoizvo, zvinhu zvose zvakanga zvaverengwa kare kare.

Nezvekuita

- Ungandiudze here kuti vangani vanhu vaive panzvimbo iyi pane imwe track? Paive nenyaya dzekuita?

Nikolay: Pakanga pasina matambudziko ekuita, sezvatakambotaura. Huwandu hwevanhu vakapinda mushumo mumwe vaive vanhu zana nemakumi matatu, iri paHeisenbug.

- Paive paine matambudziko nekuona kwenzvimbo? Uye zvinogoneka here kuve nerondedzero yehunyanzvi ine madhayagiramu ekuti zvese zvinoshanda sei?

Nikolay: Tichagadzira chinyorwa pamusoro peizvi gare gare.

Unogona kunyange kugadzirisa hova munzvimbo. Pakangotanga makonferensi, zvakatonyanya kuve nyore, nekuti nzizi dzekugadzira dzakaonekwa kuti tinogona kuona nguva dzese.

Vladimir: Sezvandinozvinzwisisa, vagadziri vepamberi vakashanda munharaunda nekunyomba, uyezve, sezvo nguva yekuburitsa kune devs kumberi zvakare ipfupi (5 maminetsi), hapana matambudziko nekutarisa zviri kuitika nezvitupa.

- Zvese zvinoedzwa uye zvakagadziriswa, kunyangwe munharaunda. Izvi zvinoreva kuti tichanyora chinyorwa chine ese ehunyanzvi maficha, kukuratidza, kukuudza zvese nemadhayagiramu, kuti zvaive sei.

Vladimir: Unogona kuitora woidzokorora.

- Mumwedzi mitatu.

Mugumisiro

β€” Zvose zvinorondedzerwa pamwe chete zvinonzwika zvakanaka, tichifunga kuti zvakaitwa neboka duku mumwedzi mitatu.

Nikolay: Chikwata chikuru hachiite izvi. Asi boka diki revanhu vanokurukurirana zvakanyanya uye zvakanaka kune mumwe nemumwe uye vanogona kusvika pakubvumirana vanogona. Ivo havana chero kupokana, chivakwa chakagadzirwa mumazuva maviri, chakapedzwa uye hachina kunyatsochinja. Pane kufambisa kwakasimba kwezvinoda bhizinesi zvinouya maererano nekuunganidza zvikumbiro uye shanduko.

- Chii chaive pane yako rondedzero yemamwe mabasa apo misangano yezhizha yakanga yatoitika?

Nikolay: Somuenzaniso, zvikwereti. Mitsetse inokambaira pavhidhiyo, pop-ups mune dzimwe nzvimbo muvhidhiyo zvinoenderana nezviri kuratidzwa. Semuenzaniso, mukurukuri anoda kubvunza mubvunzo kune vateereri, uye vhoti inobuda pahwindo, iyo inodzokera kumashure zvichienderana nemigumisiro yekuvhota kune mukurukuri pachake. Imwe mhando yekushamwaridzana muchimiro chekufarira, mwoyo, ratings yemushumo panguva yemharidzo pachayo, kuti iwe ugone kuzadza mhinduro panguva chaiyo pasina kukanganiswa gare gare nemafomu emhinduro. Pakutanga sezvizvi.

Uye zvakare nekuwedzera kupuratifomu yese, kunze kwekutepfenyura uye musangano, zvakare post-conference state. Aya ndiwo mazita ekutamba (kusanganisira ayo akaunganidzwa nevashandisi), pamwe zvirimo kubva kune mamwe magungano apfuura, akabatanidzwa, akanyorwa, anowanikwa kumushandisi, uye zvakare anowanikwa kuti aonekwe pawebhusaiti yedu (live.jugru.org).

- Varume, ndinokutendai zvikuru nemhinduro dzenyu!

Kana pakati pevaverengi pane avo vakapinda misangano yedu yezhizha, ndapota govana zvaunofunga nezvemutambi uye kutepfenyura. Chii chaive chakanakira, chii chakakutsamwisa, chii chaungade kuona mune ramangwana?

Kana iwe uchifarira papuratifomu uye uchida kuiona "muhondo", tinoishandisa zvakare pane yedu matsutso-yechando conferences. Kune huwandu hwese hwadzo, saka pane dzinenge dzinenge dzakakunakira iwe.

Source: www.habr.com

Voeg