Pangani pulatifomu yamakanema m'masiku 90

Pavuli paki, tingukumana ndi masuzgu ngakulu. Chifukwa cha mliriwu, zidawonekeratu kuti misonkhano yathu yachilimwe iyenera kusamutsidwa pa intaneti. Ndipo kuti tizichita bwino pa intaneti, mapulogalamu opangidwa okonzeka sanali oyenera kwa ife; tinkafunika kulemba zathu. Ndipo tinali ndi miyezi itatu yochitira izi.

Zikuwonekeratu kuti miyezi itatu yakhala yosangalatsa. Koma kuchokera kunja sizodziwikiratu: ndi nsanja yanji yapaintaneti? Ndi mbali ziti? Chifukwa chake, kumapeto kwamisonkhano yachilimwe ya DevOops, ndidafunsa omwe adayang'anira ntchitoyi:

  • Nikolay Molchanov - wotsogolera luso la JUG Ru Gulu;
  • Vladimir Krasilshchik ndi pragmatic Java programmer akugwira ntchito kumbuyo (mutha kuwonanso malipoti ake pamisonkhano yathu ya Java);
  • Artyom Nikonov ndi amene amayang'anira mavidiyo athu onse.

Mwa njira, pamisonkhano ya autumn-yozizira tidzagwiritsa ntchito njira yabwino ya nsanja yomweyo - owerenga ambiri a habra adzakhalabe ogwiritsa ntchito.

Pangani pulatifomu yamakanema m'masiku 90

Chithunzi chachikulu

- Kodi gululo linali lotani?

Nikolay Molchanov: Tili ndi katswiri, wokonza mapulani, woyesa, atatu otsogolera kutsogolo, ndi kumbuyo. Ndipo, ndithudi, katswiri wooneka ngati T!

- Kodi ndondomekoyi inkawoneka bwanji?

Nikolay: Mpaka pakati pa Marichi, tinalibe chilichonse chokonzekera pa intaneti. Ndipo pa Marichi 15, carousel yonse yapaintaneti idayamba kuzungulira. Tinakhazikitsa nkhokwe zingapo, zokonzekera, kukambirana za zomangamanga ndikuchita zonse m'miyezi itatu.

Izi, ndithudi, zidadutsa m'magawo apamwamba akukonzekera, zomangamanga, kusankha mbali, kuvotera zinthuzo, ndondomeko yazinthuzo, mapangidwe awo, chitukuko, kuyesa. Zotsatira zake, pa June 6, tinapanga zonse kuti tipange. Mtengo wa TechTrain. Panali masiku 90 pa chilichonse.

β€”Kodi tinakwanitsa kuchita zimene tinadzipereka?

Nikolay: Popeza tsopano tikuchita nawo msonkhano wa DevOops pa intaneti, zikutanthauza kuti zidayenda. Ine ndekha ndadzipereka ku chinthu chachikulu: Ndibweretsa makasitomala chida chomwe angapangire msonkhano wapaintaneti.

Chovuta chinali ichi: tipatseni chida chomwe tingathe kuulutsira misonkhano yathu kwa omwe ali ndi matikiti.

Kukonzekera konseko kudagawidwa m'magawo angapo, ndipo mawonekedwe onse (pafupifupi 30 padziko lonse lapansi) adagawidwa m'magulu anayi:

  • zomwe tidzachita (sitingakhale popanda iwo),
  • zomwe tidzachita kachiwiri,
  • zomwe sitidzachita,
  • ndi zomwe sitidzazichita konse.

Tinapanga mbali zonse kuchokera m'magulu awiri oyambirira.

- Ndikudziwa kuti nkhani 600 za JIRA zidapangidwa. M'miyezi itatu, mudapanga ma microservices 13, ndipo ndikukayikira kuti sanalembedwe ku Java kokha. Mudagwiritsa ntchito matekinoloje osiyanasiyana, muli ndi magulu awiri a Kubernetes m'malo atatu opezeka ndi mitsinje 5 ya RTMP ku Amazon.

Tiyeni tsopano tione chigawo chilichonse cha dongosolo padera.

Kukhamukira

- Tiyeni tiyambe pomwe tili ndi chithunzi cha kanema, ndipo chimatumizidwa kuzinthu zina. Artyom, tiuzeni momwe kusanja uku kumachitikira?

Artyom Nikonov: Chiwembu chathu chonse chikuwoneka chonchi: chithunzi kuchokera ku kamera -> chipinda chathu chowongolera -> seva yapafupi ya RTMP -> Amazon -> chosewerera makanema. Zambiri analemba za izo pa Habre mu June.

Mwambiri, pali njira ziwiri zapadziko lonse lapansi zochitira izi: kaya pa hardware kapena potengera mayankho a mapulogalamu. Tinasankha njira yamapulogalamu chifukwa ndi yosavuta pankhani ya olankhula akutali. Sizingatheke nthawi zonse kubweretsa hardware kwa wokamba nkhani m'dziko lina, koma kupereka mapulogalamu kwa wokamba nkhani kumawoneka kosavuta komanso kodalirika.

Kuchokera pamawonekedwe a hardware, tili ndi makamera angapo (m'ma studio athu ndi pa oyankhula akutali), chiwerengero cha maulamuliro akutali mu studio, zomwe nthawi zina zimayenera kukonzedwa pansi pa tebulo panthawi yowulutsa.

Zizindikiro zochokera m'zidazi zimalowa m'makompyuta okhala ndi makadi ojambulira, makadi olowetsa/otulutsa, ndi makadi omvera. Kumeneko zizindikirozo zimasakanizidwa ndikuphatikizidwa m'mapangidwe:

Pangani pulatifomu yamakanema m'masiku 90
Chitsanzo cha masanjidwe a okamba 4

Pangani pulatifomu yamakanema m'masiku 90
Chitsanzo cha masanjidwe a okamba 4

Kuphatikiza apo, kuwulutsa kosalekeza kumaperekedwa mothandizidwa ndi makompyuta atatu: pali makina akuluakulu amodzi ndi awiri ogwira ntchito motsatizana. Kompyuta yoyamba imasonkhanitsa lipoti loyamba, lachiwiri - kupuma, loyamba - lipoti lotsatira, lachiwiri - lopuma, ndi zina zotero. Ndipo makina akuluakulu amasakaniza woyamba ndi wachiwiri.

Izi zimapanga mtundu wa makona atatu, ndipo ngati imodzi mwa mfundozi ikulephera, tikhoza mwamsanga komanso popanda kutaya khalidwe kupitiriza kupereka zomwe zili kwa makasitomala. Tinali ndi mkhalidwe wotero. Pa sabata yoyamba ya misonkhano, tinakonza makina amodzi, timayatsa / kuzimitsa. Anthu akuwoneka kuti akusangalala ndi kupirira kwathu.

Kenaka, mitsinje yochokera kumakompyuta imapita ku seva yapafupi, yomwe ili ndi ntchito ziwiri: njira ya RTMP mitsinje ndi zolemba zosungira. Chifukwa chake tili ndi malo angapo ojambulira. Makanemawa amatumizidwa ku gawo la machitidwe athu omangidwa pa ntchito za Amazon SaaS. Timagwiritsa ntchito MediaLive,S3,CloudFront.

Nikolay: Kodi chimachitika ndi chiyani pamenepo vidiyoyi isanafike kwa omvera? Muyenera kudula mwanjira ina, sichoncho?

Artyom: Timakanikiza kanemayo kumbali yathu ndikutumiza ku MediaLive. Timatsegula ma transcoder pamenepo. Amatembenuza mavidiyo munthawi yeniyeni kukhala zosankha zingapo kuti anthu aziwonera pamafoni awo, kudzera pa intaneti yosauka m'dzikolo, ndi zina zotero. Kenako mitsinje iyi imadulidwa zidutswa, umu ndi momwe protocol imagwirira ntchito HLS. Timatumiza mndandanda wazosewerera kutsogolo womwe uli ndi zolozera ku zigawo izi.

- Kodi tikugwiritsa ntchito 1080p kusamvana?

Artyom: M'lifupi kanema wathu ndi chimodzimodzi 1080p - 1920 mapikiselo, ndi kutalika ndi pang'ono pang'ono, chithunzi ndi yaitali - pali zifukwa.

Wosewera

- Artyom adalongosola momwe kanemayo amalowera mumitsinje, momwe amagawidwira m'ma playlist osiyanasiyana pazosankha zosiyanasiyana, kudula mu chunks ndikulowa wosewera. Kolya, tsopano ndiuzeni wosewera wotani uyu, momwe amadyera mtsinje, chifukwa chiyani HLS?

Nikolay: Tili ndi wosewera yemwe onse owonera msonkhano angawone.

Pangani pulatifomu yamakanema m'masiku 90

Kwenikweni, ichi ndi chotchingira chozungulira laibulale hls.js, pomwe osewera ena ambiri amalembedwa. Koma tinkafunikira magwiridwe antchito enieni: kubweza m'mbuyo ndikuyika chizindikiro pamalo pomwe munthuyo ali, ndi lipoti lotani lomwe akuwona. Tinkafunikanso masanjidwe athu, ma logo amitundu yonse ndi china chilichonse chomwe chinamangidwa ndi ife. Chifukwa chake, tidaganiza zolemba laibulale yathu yathu (chophimba pa HLS) ndikuyiyika patsambalo.

Uwu ndiye magwiridwe antchito, kotero idakhazikitsidwa pafupifupi poyamba. Ndiyeno chirichonse chinakula mozungulira icho.

M'malo mwake, kudzera mu chilolezo, wosewera mpira amalandira kuchokera kumbuyo mndandanda wazosewerera wokhala ndi maulalo kuzinthu zolumikizidwa ndi nthawi ndi mtundu, kutsitsa zofunikira ndikuziwonetsa kwa wogwiritsa ntchito, akuchita "matsenga" panjira.

Pangani pulatifomu yamakanema m'masiku 90
Chitsanzo cha nthawi

- Batani limapangidwa mkati mwa wosewera kuti liwonetse nthawi yamalipoti onse ...

Nikolay: Inde, nthawi yomweyo tinathetsa vuto la navigation ya ogwiritsa ntchito. Pakati pa mwezi wa April, tinaganiza kuti sitidzaulutsa misonkhano yathu iliyonse pawebusaiti yathu, koma tiziphatikiza zonse pamodzi. Kuti ogwiritsa ntchito matikiti a Full Pass athe kusinthana mwaufulu pakati pamisonkhano yosiyanasiyana: mawayilesi amoyo ndi zojambula zakale.

Ndipo kuti zikhale zosavuta kuti ogwiritsa ntchito azitha kuyang'ana momwe akumvera komanso kusinthana pakati pa mayendedwe, tidaganiza zopanga batani la "Whole broadcast" ndi makhadi a lipoti opingasa kuti musinthe pakati pa nyimbo ndi malipoti. Pali keyboard control.

- Kodi pali zovuta zaukadaulo ndi izi?

Nikolay: Anali ndi mpukutu wa mipukutu pomwe poyambira malipoti osiyanasiyana amalembedwapo.

- Pamapeto pake, kodi mudagwiritsa ntchito zilembo izi pamipukutu YouTube isanachite zofanana?

Artyom: Iwo anali nazo izo mu beta ndiye. Zikuwoneka ngati izi ndizovuta kwambiri chifukwa akhala akuziyesa pang'ono ndi ogwiritsa ntchito chaka chatha. Ndipo tsopano zafika pogulitsidwa.

Nikolay: Koma tidazigulitsa mwachangu. Moona mtima, kuseri kwa chinthu chophwekachi pali kuchuluka kwakukulu kwa backend, frontend, mawerengedwe ndi masamu mkati mwa wosewera mpira.

Kumaso

- Tiyeni tiwone momwe izi zomwe timawonetsa (khadi lolankhulira, okamba, tsamba lawebusayiti, ndandanda) zimafika kumapeto?

Vladimir Krasilshchik: Tili ndi machitidwe angapo amkati a IT. Pali dongosolo lomwe malipoti onse ndi okamba onse amalowetsedwa. Pali njira yomwe wokamba nkhani amatenga nawo mbali pamsonkhano. Wokamba nkhani amatumiza pempho, dongosolo limagwira, ndiye pali payipi inayake malinga ndi momwe lipotilo limapangidwira.

Pangani pulatifomu yamakanema m'masiku 90
Umu ndi momwe wokamba nkhani amawonera payipi

Dongosolo ili ndi chitukuko chathu chamkati.

Kenako, muyenera kupanga ndandanda kuchokera ku malipoti amunthu payekha. Monga mukudziwa, ili ndi vuto lalikulu la NP, koma mwanjira ina timalithetsa. Kuti tichite izi, tikuyambitsa chigawo china chomwe chimapanga ndandanda ndikuchiyika ku gulu lachitatu lamtambo wokhutira. Kumeneko, chirichonse chikuwoneka ngati tebulo momwe muli masiku a msonkhano, m'masiku omwe ali ndi nthawi, ndipo m'mipata muli malipoti, kupuma kapena ntchito zothandizira. Chifukwa chake zomwe timawona zili mugulu lachitatu. Ndipo ntchito yake ndikuyipereka kutsamba.

Zingawoneke kuti malowa ndi tsamba chabe ndi wosewera mpira, ndipo palibe chovuta apa. Kupatula izo siziri. Kumbuyo kuseri kwa tsambali kumapita ku Okhutira, amapeza ndondomeko kuchokera pamenepo, amapanga zinthu zina ndikuzitumiza kutsogolo. Pogwiritsa ntchito kugwirizana kwa websocket, komwe kasitomala aliyense wa nsanja yathu amapanga, timamutumizira ndondomeko ya ndondomeko kuchokera kumbuyo kupita kutsogolo.

Mlandu weniweni: wokamba nkhaniyo adasintha ntchito panthawi ya msonkhano. Tiyenera kusintha baji ya kampani ya bwana wake. Kodi izi zimachitika bwanji kuchokera kumbuyo? Zosintha zimatumizidwa kwa makasitomala onse kudzera pa websocket, ndiyeno kutsogolo komwe kumajambulanso nthawi. Zonsezi zimachitika mopanda malire. Kuphatikiza kwa utumiki wamtambo ndi zigawo zathu zingapo zimatipatsa mwayi wopanga zonsezi ndikuzipereka kutsogolo.

Nikolay: Ndikofunikira kumveketsa apa kuti tsamba lathu si pulogalamu yapamwamba ya SPA. Izi ndizomwe zimatengera masanjidwe, tsamba loperekedwa komanso SPA. Google imawona tsamba ili ngati HTML yomasulira. Izi ndizabwino kwa SEO komanso kupereka zomwe zili kwa wogwiritsa ntchito. Simadikirira kuti ma megabytes a 1,5 a JavaScript atsegule musanawone tsamba, nthawi yomweyo imawona tsamba lomwe laperekedwa kale, ndipo mumamva nthawi iliyonse mukasintha lipoti. Chilichonse chimachitika mu theka la sekondi, popeza zomwe zili kale zakonzeka ndikuyikidwa pamalo oyenera.

- Tiyeni tijambule mzere pansi pa zonse pamwambapa polemba ukadaulo. Tyoma adati tili ndi mitsinje 5 ya Amazon, ndipo timapereka makanema ndi mawu pamenepo. Tili ndi bash scripts pamenepo, timawagwiritsa ntchito kukhazikitsa ndi kukonza ...

Artyom: Izi zimachitika kudzera mu AWS API, pali ntchito zambiri zaukadaulo pamenepo. Tinagawana maudindo athu kuti ndipereke kwa CloudFront, ndipo okonza kutsogolo ndi kumbuyo amatenga izo kuchokera pamenepo. Tili ndi zomangira zathu zingapo kuti tichepetse masanjidwe azinthu, zomwe timapanga mu 4K, ndi zina. Popeza nthawi zomalizira zinali zolimba kwambiri, tidazichita pafupifupi pa AWS.

- Ndiye zonsezi zimapita kwa wosewera mpira pogwiritsa ntchito dongosolo lakumbuyo. Tili ndi TypeScript, React, Next.JS mu player wathu. Ndipo kumbuyo tili ndi mautumiki angapo mu C #, Java, Spring Boot ndi Node.js. Izi zonse zimayikidwa pogwiritsa ntchito Kubernetes pogwiritsa ntchito maziko a Yandex.Cloud.

Ndikufunanso kuzindikira kuti ndikafunika kudziwa bwino nsanja, zidakhala zosavuta: zosungira zonse zili pa GitLab, zonse zimatchulidwa bwino, mayeso amalembedwa, pali zolemba. Ndiko kuti, ngakhale muzochitika zadzidzidzi, adasamalira zinthu zotere.

Zolepheretsa Bizinesi ndi Analytics

- Tidayang'ana ogwiritsa ntchito 10 kutengera zomwe bizinesi ikufuna. Yakwana nthawi yoti tikambirane za ziletso zamabizinesi zomwe tinali nazo. Tinkayenera kuonetsetsa kuti pali ntchito zambiri, kuonetsetsa kuti tikutsatira lamulo la kusunga deta yaumwini. Ndi chiyani chinanso?

Nikolay: Poyamba, tinayamba kuchokera ku zofunikira zamavidiyo. Chofunikira kwambiri ndikugawidwa kosungirako makanema padziko lonse lapansi kuti aperekedwe mwachangu kwa kasitomala. Zina zimaphatikizapo kusamvana kwa 1080p, komanso kubwezeretsanso, zomwe ena ambiri sagwiritsa ntchito mumayendedwe amoyo. Pambuyo pake tidawonjezeranso kuthekera kothandizira kuthamanga kwa 2x, ndi chithandizo chake mutha "kugwira" ndi moyo ndikupitiliza kuwonera msonkhanowo munthawi yeniyeni. Ndipo m'njira, ntchito zolembera nthawi zidawonekera. Kuphatikiza apo, tidayenera kukhala olekerera zolakwa ndikupirira katundu wolumikizana ndi 10. Kuchokera kumalingaliro akumbuyo, uku ndi pafupifupi kulumikizana kwa 000 kuchulukitsidwa ndi zopempha 10 pakutsitsimutsa kwa tsamba lililonse. Ndipo izi ndi kale 000 RPS/mphindi. Pang'ono ndithu.

- Kodi panali zofunika zina za "chiwonetsero changwiro" chokhala ndi zibwenzi zapaintaneti?

Nikolay: Inde, izi zimayenera kuchitidwa mwachangu komanso ponseponse. Tinkakhala ndi makampani ofikira 10 pamsonkhano uliwonse, ndipo onsewo amayenera kumalizidwa pakatha sabata imodzi kapena ziwiri. Komabe, zomwe ali nazo zimasiyana pang'ono ndi mawonekedwe. Koma injini ina ya template inapangidwa yomwe imasonkhanitsa masambawa pa ntchentche, popanda kupititsa patsogolo chitukuko.

- Panalinso zofunikira zowunikira malingaliro ndi ziwerengero zenizeni zenizeni. Ndikudziwa kuti timagwiritsa ntchito Prometheus pa izi, koma tiuzeni mwatsatanetsatane: ndi zofunikira ziti zomwe timakumana nazo pakuwunika, ndipo izi zimakwaniritsidwa bwanji?

Nikolay: Poyamba, tili ndi zofunikira zamalonda kuti titolere kuyesa kwa A/B ndikutolera zidziwitso kuti timvetsetse momwe tingaperekere bwino zomwe makasitomala athu ali nazo m'tsogolomu. Palinso zofunikira pazowunikira zina pazantchito za anzanu ndi ma analytics omwe mumawona (kauntala yoyendera). Zambiri zimasonkhanitsidwa munthawi yeniyeni.

Titha kupereka izi mophatikizana ngakhale kwa okamba: ndi anthu angati omwe amakuwonani panthawi inayake. Nthawi yomweyo, kutsatira Federal Law 152, akaunti yanu ndi data yanu sizitsatiridwa mwanjira iliyonse.

Pulatifomu ili kale ndi zida zotsatsa ndi ma metrics athu pakuyezera zochitika za ogwiritsa ntchito munthawi yeniyeni (omwe adawonera chachiwiri cha lipotilo) kuti apange ma graph opezekapo pamalipoti. Malingana ndi deta iyi, kafukufuku akuchitidwa zomwe zidzapangitse kuti misonkhano yotsatira ikhale yabwino.

Chinyengo

- Kodi tili ndi njira zothana ndi chinyengo?

Nikolay: Chifukwa cha nthawi yolimba kuchokera pamalingaliro abizinesi, ntchitoyi sinakhazikitsidwe kuti itseke kulumikizana kosafunikira. Ngati ogwiritsa ntchito awiri adalowa mu akaunti yomweyo, amatha kuwona zomwe zili. Koma tikudziwa kuchuluka kwa mawonedwe anthawi imodzi omwe adachokera ku akaunti imodzi. Ndipo tinaletsa angapo ophwanya njiru.

Vladimir: Chifukwa chake, m'modzi mwa ogwiritsa ntchito oletsedwa adamvetsetsa chifukwa chake izi zidachitika. Anabwera, kupepesa ndipo analonjeza kugula tikiti.

- Kuti zonsezi zichitike, muyenera kutsata ogwiritsa ntchito onse kuyambira polowera mpaka kutuluka, kudziwa zomwe akuchita. Kodi dongosololi limagwira ntchito bwanji?

Vladimir: Ndikufuna kulankhula za analytics ndi ziwerengero, zomwe timasanthula kuti lipotilo lichite bwino kapena titha kupereka kwa othandizana nawo. Makasitomala onse amalumikizidwa kudzera pa intaneti yolumikizana ndi gulu linalake lakumbuyo. Iwo wayima pamenepo hazelcast. Wothandizira aliyense pa nthawi iliyonse amatumiza zomwe akuchita komanso njira yomwe akuwonera. Kenako chidziwitsochi chimaphatikizidwa pogwiritsa ntchito ntchito za Hazelcast mwachangu ndikutumizidwa kwa aliyense amene amawonera nyimbozi. Tikuwona mu ngodya momwe anthu ambiri tsopano ali ndi ife.

Pangani pulatifomu yamakanema m'masiku 90

Zomwezo zimasungidwa mkati Mongo ndikupita kunyanja yathu ya data, komwe tili ndi mwayi wopanga graph yosangalatsa kwambiri. Funso likubuka: ndi angati ogwiritsa ntchito apadera omwe adawona lipotili? Timapita ku Zolemba, pali ma ping a anthu onse omwe adabwera ndi id ya lipoti ili. Tidasonkhanitsa, kuphatikiza zapadera, ndipo tsopano titha kumvetsetsa.

Nikolay: Koma panthawi imodzimodziyo, timalandiranso deta yeniyeni kuchokera ku Prometheus. Imayikidwa motsutsana ndi ntchito zonse za Kubernetes, motsutsana ndi Kubernetes yokha. Imasonkhanitsa chilichonse, ndipo ndi Grafana titha kupanga ma graph aliwonse munthawi yeniyeni.

Vladimir: Kumbali imodzi, timatsitsa izi kuti tichitenso OLAP. Ndipo kwa OLTP, pulogalamuyo imatsitsa zonse ku Prometheus, Grafana ndi ma graph amasinthika!

- Izi ndizochitika pamene ma graph amalumikizana.

Zosintha Zamphamvu

- Tiuzeni momwe zosinthira zosinthika zimayambira: ngati lipotilo lidathetsedwa mphindi 6 isanayambike, mndandanda wazinthu ndi wotani? Ndi payipi iti yomwe imagwira ntchito?

Vladimir: Paipiyi ndi yokhazikika kwambiri. Pali njira zingapo. Choyamba ndikuti pulogalamu yopangira ndandanda idagwira ntchito ndikusintha ndandanda. Ndondomeko yosinthidwa yakwezedwa ku Contentful. Pambuyo pake backend imamvetsetsa kuti pali zosintha za msonkhano uno mu Okhutira, amazitenga ndikuzimanganso. Zonse zimasonkhanitsidwa ndikutumizidwa kudzera pa websocket.

Kuthekera kwachiwiri, pamene chirichonse chikuchitika pa liwiro la breakneck: mkonzi pamanja amasintha zambiri mu Zokhutira (zolumikizana ndi Telegalamu, mafotokozedwe a wokamba nkhani, ndi zina zotero) ndipo malingaliro omwewo amagwira ntchito monga nthawi yoyamba.

Nikolay: Zonse zimachitika popanda kutsitsimutsa tsamba. Zosintha zonse zimachitika mwamtheradi kwa kasitomala. Zomwezo zimapitanso kusintha malipoti. Nthawi ikafika, lipoti ndi mawonekedwe amasintha.

Vladimir: Komanso, pali zochepetsera nthawi zoyambira malipoti munthawi yanthawi. Poyamba palibe kanthu. Ndipo ngati mukweza mbewa yanu pamzere wofiira, ndiye kuti nthawi ina, chifukwa cha wotsogolera, ma cutoffs adzawonekera. Wotsogolera amakhazikitsa chiyambi cholondola cha kuwulutsa, backend imatenga kusintha uku, kuwerengera nthawi zoyambira ndi zomaliza za mawonedwe onse a njanjiyo molingana ndi dongosolo la msonkhano, amatumiza kwa makasitomala athu, ndipo wosewera mpira amakoka ma cutoffs. Tsopano wosuta akhoza kuyenda mosavuta kumayambiriro ndi kumapeto kwa lipoti. Zinali zofunika kwambiri pabizinesi, zosavuta komanso zothandiza. Simukutaya nthawi kupeza nthawi yeniyeni yoyambira lipoti. Ndipo tikamaoneratu, zidzakhala zosangalatsa kwambiri.

Kutumiza

- Ndikufuna kufunsa za kutumiza. Kolya ndi gululo adakhala nthawi yambiri pachiyambi kuti akhazikitse zowonongeka zonse zomwe zonse zimatichitikira. Ndiuzeni, zonsezi zimapangidwa ndi chiyani?

Nikolay: Kuchokera pamawonedwe aukadaulo, poyamba tinali ndi chofunikira kuti chinthucho chikhale chosavuta momwe tingathere kuchokera kwa wogulitsa aliyense. Bwerani ku AWS kuti mupange zolemba za Terraform makamaka kuchokera ku AWS, kapena makamaka kuchokera ku Yandex, kapena kuchokera ku Azure, ndi zina. sizinali zokwanira. Tinayenera kusamukira kwinakwake panthawi ina.

Kwa milungu itatu yoyambirira tinali kufunafuna njira yochitira bwino izi. Zotsatira zake, tidazindikira kuti Kubernetes pankhaniyi ndiye zonse zathu, chifukwa zimatilola kupanga zodzipangira zokha ntchito, kutulutsa zokha, ndikupeza pafupifupi mautumiki onse m'bokosi. Mwachilengedwe, mautumiki onse adayenera kuphunzitsidwa kugwira ntchito ndi Kubernetes, Docker, ndipo gululo liyeneranso kuphunzira.

Tili ndi magulu awiri. Kuyesa ndi kupanga. Iwo ali mwamtheradi ofanana mawu a hardware ndi zoikamo. Timagwiritsa ntchito zomangamanga monga code. Ntchito zonse zimayendetsedwa zokha m'malo atatu kuchokera kunthambi zowonekera, nthambi zazikulu, nthambi zoyesa, ndi GitLab pogwiritsa ntchito mapaipi odzipangira okha. Izi zimaphatikizidwa kwambiri mu GitLab, zophatikizidwa kwambiri ndi Elastic, Prometheus.

Timapeza mwayi mwachangu (kwa backend mkati mwa mphindi 10, kutsogolo mkati mwa mphindi 5) kutulutsa zosintha kumalo aliwonse ndi mayeso onse, kuphatikiza, kuyesa magwiridwe antchito, kuyesa kophatikiza pa chilengedwe, komanso kuyesa ndi mayeso olemetsa. malo oyesera pafupifupi chinthu chomwecho chomwe tikufuna kuti tipeze popanga.

Za mayeso

- Mumayesa pafupifupi chilichonse, n'zovuta kukhulupirira momwe munalembera zonse. Kodi mungatiuze za mayeso a backend: kuchuluka kwa zonse zomwe zaphimbidwa, ndi mayeso otani?

Vladimir: Mitundu iwiri ya mayeso yalembedwa. Yoyamba ndi mayeso a zigawo. Kwezani mayeso amtundu wa ntchito yonse ya masika ndikuyambira Testcontainers. Ichi ndi chiyeso cha zochitika zamabizinesi apamwamba kwambiri. Sindiyesa magwiridwe antchito. Timangoyesa zinthu zazikulu. Mwachitsanzo, poyesedwa, njira yolowera kwa wogwiritsa ntchito imatsatiridwa, pempho la wogwiritsa ntchito la matikiti komwe angapite, ndi pempho la mwayi wowonera mtsinjewo. Zochitika zomveka bwino za ogwiritsa ntchito.

Pafupifupi chinthu chomwecho chikugwiritsidwa ntchito muzomwe zimatchedwa kuyesa kugwirizanitsa, zomwe zimayendera pa chilengedwe. M'malo mwake, kutumizidwa kwina kotsatira kukayamba, zochitika zenizeni zenizeni zikugwiranso ntchito. Kulowa komweko, kupempha matikiti, kupempha mwayi wopita ku CloudFront, kuyang'ana kuti mtsinjewo umagwirizanitsa ndi zilolezo zanga, kuyang'ana mawonekedwe a wotsogolera.

Pakadali pano ndili ndi mayeso pafupifupi 70 komanso mayeso ophatikiza 40 omwe ali nawo. Kufikira kuli pafupi kwambiri ndi 95%. Izi ndi za zigawo, zochepa zophatikizira, sizikufunika kwambiri. Poganizira kuti polojekitiyi ikuphatikizapo mitundu yonse ya kupanga ma code, ichi ndi chizindikiro chabwino kwambiri. Panalibe njira ina yochitira zimene tinachita m’miyezi itatu. Chifukwa ngati titayesa pamanja, ndikupereka mawonekedwe kwa woyesa wathu, ndipo amapeza nsikidzi ndikubweza kwa ife kuti tikonze, ndiye kuti ulendo wozungulirawu kuti tikonze zolakwika ungakhale wautali kwambiri, ndipo sitingakwaniritse nthawi yomaliza.

Nikolay: Conventionally, kuchita regression pa nsanja lonse pamene kusintha ntchito zina, muyenera kukhala ndi kugwedeza kulikonse kwa masiku awiri.

Vladimir: Choncho, ndizopambana kwambiri kuti ndikayerekezera chinthu, ndimati ndikufunika masiku 4 kwa zolembera ziwiri zosavuta ndi 1 websocket, Kolya amalola. Iye wazolowera kale kuti masiku 4 awa akuphatikizapo 2 mitundu ya mayesero, ndiyeno, mwinamwake, idzagwira ntchito.

Nikolay: Ndilinso ndi mayeso 140 olembedwa: chigawo + chogwira ntchito, chomwe chimachita zomwezo. Zochitika zonse zomwezo zimayesedwa pakupanga, pakuyesa, komanso kupanga. Posachedwa tawonjezera mayeso oyambira a UI. Mwanjira iyi timaphimba magwiridwe antchito omwe amatha kugwa.

Vladimir: Inde, ndi bwino kulankhula za mayesero a katundu. Zinali zofunikira kuyesa nsanja pansi pa katundu pafupi ndi chenichenicho kuti timvetse momwe chirichonse chiriri, zomwe zikuchitika ndi Kalulu, zomwe zikuchitika ndi ma JVM, kukumbukira kukumbukira kumafunika bwanji.

- Sindikudziwa ngati tikuyesa chilichonse kumbali yamtsinje, koma ndikukumbukira kuti panali mavuto ndi ma transcoder titakumana. Tayesa mitsinje?

Artyom: Kuyesedwa mobwerezabwereza. Kukonzekera misonkhano. Pokonzekera misonkhano, panali matikiti pafupifupi 2300 a JIRA. Izi ndizinthu zomwe anthu adachita kuti apange misonkhano. Tinatenga mbali zina za nsanja pa tsamba lina la misonkhano, lomwe linayendetsedwa ndi Kirill Tolkachev (talkkv).

Kunena zoona, panalibe mavuto aakulu. Kangapo tidagwira nsikidzi pa CloudFront, tidazithetsa mwachangu - tidangosinthanso mfundozo. Panali nsikidzi zambiri mwa anthu, mumayendedwe otsatsira patsamba.

Pamisonkhanoyi, ndinayenera kulemba ena angapo ogulitsa kunja kuti ndipeze zida ndi ntchito zambiri. M’madera ena ndinkafunika kupanga njinga yangayanga chifukwa chongofuna kudziwa zambiri. Dziko la zida za AV (audio-video) sizowoneka bwino - muli ndi "API" yamtundu wina wa zida zomwe simungakhudze. Ndipo zili kutali ndi mfundo yakuti mudzatha kupeza zomwe mukufuna. Ogulitsa zida zamagetsi amachedwa kwambiri, ndipo ndizosatheka kupeza zomwe mukufuna kuchokera kwa iwo. Pazonse pali zida zopitilira 100, sizikubwezerani zomwe mukufuna, ndipo mumalemba otumiza kunja kwachilendo komanso osafunikira, chifukwa chake mutha kuwongolera dongosolo.

Zida

- Ndikukumbukira momwe misonkhano isanayambe tidagula zida zowonjezera.

Artyom: Tinagula makompyuta, ma laputopu, ndi mapaketi a mabatire. Pakali pano titha kukhala opanda magetsi kwa mphindi 40. Mu June munali mvula yamkuntho yoopsa ku St. Petersburg - choncho tinali ndi mdima wotere. Panthawi imodzimodziyo, opereka angapo amabwera kwa ife ndi maulalo a kuwala kuchokera kumalo osiyanasiyana. Izi ndi mphindi 40 zolimbitsa nthawi yomanga, pomwe tidzakhala ndi magetsi, phokoso, makamera, ndi zina.

- Tili ndi nkhani yofanana ndi intaneti. Kuofesi komwe kuli masitudiyo athu, tinakokera ukonde woopsa pakati pa zipinda zapansi.

Artyom: Tili ndi 20 Gbit fiber pakati pa pansi. Kupitilira pansi, kwinakwake pali ma optics, kwinakwake kulibe ma optics, komabe pali njira zocheperako kuposa za gigabit - timayendetsa kanema paiwo pakati pa nyimbo za msonkhano. Nthawi zambiri, ndikosavuta kugwiritsa ntchito zida zanu; simungachite izi pafupipafupi pamisonkhano yapaintaneti patsamba.

- Ndisanagwire ntchito ku JUG Ru Group, ndidawona momwe zipinda za Hardware pamisonkhano yopanda intaneti zidakhazikitsidwa usiku wonse, pomwe panali chowunikira chachikulu chokhala ndi ma metric onse omwe mumamanga ku Grafana. Tsopano palinso chipinda cha ku likulu momwe gulu lachitukuko limakhala, lomwe panthawi ya msonkhano limakonza zolakwika zina ndikupanga mawonekedwe. Panthawi imodzimodziyo, pali njira yowunikira yomwe ikuwonetsedwa pawindo lalikulu. Artyom, Kolya ndi anyamata ena amakhala ndikuonetsetsa kuti zonse sizikugwa ndikugwira ntchito bwino.

Chidwi ndi mavuto

- Munalankhula bwino zakuti tikukhamukira ndi Amazon, pali wosewera pa intaneti, zonse zimalembedwa m'zilankhulo zosiyanasiyana zamapulogalamu, kulolerana zolakwika ndi zofunikira zina zamabizinesi zimaperekedwa, kuphatikiza akaunti yaumwini yomwe imathandizidwa ndi mabungwe ovomerezeka ndi paokha, ndipo titha kuphatikizira ndi wina wogwiritsa ntchito OAuth 2.0, pali anti-chinyengo, kuletsa kwa ogwiritsa ntchito. Titha kutulutsa zosintha mwachangu chifukwa tidazichita bwino, ndipo zonse zidayesedwa.

Ndikufuna kudziwa zomwe zidachitika poyambitsa china chake. Kodi pakhala pali zochitika zachilendo pamene mukupanga backend, frontend, china chake chopenga chinatuluka ndipo simunamvetsetse choti muchite nacho?

Vladimir: Zikuwoneka kwa ine kuti izi zangochitika kwa miyezi itatu yapitayi. Tsiku lililonse. Monga mukuonera, tsitsi langa lonse lazulidwa.

Pangani pulatifomu yamakanema m'masiku 90
Vladimir Krasilshchik pambuyo pa miyezi 3, pamene mtundu wina wa masewera unatuluka ndipo palibe amene anamvetsa chochita nawo.

Tsiku lililonse panali chinachake chonga ichi, pamene panali mphindi yoteroyo pamene inu mumatenga ndi kung'amba tsitsi lanu, kapena kuzindikira kuti palibe wina, ndipo inu nokha mukhoza kuchita izo. Chochitika chathu chachikulu chinali TechTrain. Pa June 6 pa 2 koloko tinali tisanatulutse malo opangira zinthu, Kolya anali kutulutsa. Ndipo akaunti yanu siinagwire ntchito ngati seva yovomerezeka pogwiritsa ntchito OAuth2.0. Tidazisintha kukhala operekera OAuth2.0 kuti tilumikizane ndi nsanja. Ndakhala ndikugwira ntchito kwa maola 18 molunjika, ndinayang'ana pa kompyuta ndipo sindinawone kalikonse, sindinamvetse chifukwa chake sichikugwira ntchito, ndipo Kolya anayang'ana code yanga kutali, anayang'ana cholakwika mu kasinthidwe ka Spring. , anaipeza, ndipo LC inagwira ntchito, ndi kupanganso.

Nikolay: Ndipo ola limodzi TechTrain isanachitike.

Nyenyezi zambiri zidalumikizidwa apa. Tidali ndi mwayi kwambiri chifukwa tinali ndi gulu lapamwamba, ndipo aliyense adalimbikitsidwa ndi lingaliro lochita izi pa intaneti. Miyezi itatu yonseyi tidalimbikitsidwa chifukwa "tidapanga YouTube." Sindinadzilole kung’amba tsitsi langa, koma ndinauza aliyense kuti zonse zidzayenda bwino, chifukwa kwenikweni, zonse zinali zitawerengedwa kalekale.

Za magwiridwe antchito

- Kodi mungandiuze kuti ndi anthu angati omwe anali patsambalo panjira imodzi? Kodi panali zovuta zilizonse zogwira ntchito?

Nikolay: Panalibe zovuta zogwirira ntchito, monga tanenera kale. Chiwerengero chachikulu cha anthu omwe adapezekapo pa lipoti limodzi chinali anthu 1300, izi zili pa Heisenbug.

- Kodi panali zovuta zilizonse pakuwonera kwanuko? Ndipo ndizotheka kukhala ndi kufotokozera mwaukadaulo ndi zithunzi za momwe zimagwirira ntchito?

Nikolay: Tipanganso nkhani ya izi pambuyo pake.

Mutha kusinthanso mitsinje kwanuko. Misonkhanoyo itayamba, zidakhala zosavuta, chifukwa mitsinje yopangira idawoneka yomwe titha kuyang'ana nthawi zonse.

Vladimir: Monga ndikumvetsetsa, oyambitsa kutsogolo adagwira ntchito kwanuko ndi zonyoza, ndiyeno, popeza nthawi yopitira ku ma devs kutsogolo ndi yochepa (mphindi 5), palibe mavuto poyang'ana zomwe zikuchitika ndi zizindikiro.

- Chilichonse chimayesedwa ndikusinthidwa, ngakhale kwanuko. Izi zikutanthauza kuti tidzalemba nkhani yokhala ndi zida zonse zaukadaulo, kukuwonetsani, ndikukuwuzani chilichonse chokhala ndi zithunzi, momwe zidalili.

Vladimir: Mutha kutenga ndikubwereza.

- M'miyezi 3.

Zotsatira

- Chilichonse chofotokozedwa palimodzi chikumveka bwino, poganizira kuti chinachitidwa ndi gulu laling'ono m'miyezi itatu.

Nikolay: Gulu lalikulu silingachite izi. Koma kagulu kakang'ono ka anthu omwe amalankhulana bwino kwambiri ndipo amatha kugwirizana. Iwo alibe zotsutsana, zomangamanga anatulukira mu masiku awiri, anamaliza ndipo sanasinthe kwenikweni. Pali kuwongolera mwamphamvu kwambiri kwa zomwe zikubwera zamabizinesi potengera zopempha ndi zosintha.

- Ndi chiyani chomwe chinali pamndandanda wanu wa ntchito zina pomwe misonkhano yachilimwe idachitika kale?

Nikolay: Mwachitsanzo, ngongole. Mizere yokwawa pavidiyo, ma pop-ups m'malo ena mu kanema kutengera zomwe zikuwonetsedwa. Mwachitsanzo, wokamba nkhani akufuna kufunsa funso kwa omvera, ndipo voti ikuwonekera pawindo, yomwe imabwerera kumbuyo kutengera zotsatira za voti kwa wokamba nkhani mwiniwakeyo. Zochita zamtundu wina monga zokonda, mitima, malingaliro a lipoti panthawi yowonetsera yokha, kuti mutha kudzaza ndemanga panthawi yoyenera popanda kusokonezedwa pambuyo pake ndi mafomu ofotokozera. Poyamba monga chonchi.

Komanso kuwonjezera pa nsanja yonse, kupatula kusonkhana ndi msonkhano, komanso dziko la pambuyo pa msonkhano. Izi ndi mndandanda wamasewera (kuphatikiza omwe adapangidwa ndi ogwiritsa ntchito), mwina zomwe zachokera pamisonkhano ina yam'mbuyomu, zophatikizika, zolembedwa, zopezeka kwa ogwiritsa ntchito, komanso kupezeka kuti muwonere patsamba lathu (live.jugru.org).

- Anyamata, zikomo kwambiri chifukwa cha mayankho anu!

Ngati pakati pa owerenga pali omwe adapezeka pamisonkhano yathu yachilimwe, chonde gawanani zomwe mukuwona za wosewerayo ndikuwulutsa. Zomwe zinali zabwino, zomwe zidakukwiyitsani, mungakonde kuwona chiyani m'tsogolomu?

Ngati muli ndi chidwi ndi nsanja ndipo mukufuna kuwona "pankhondo", timagwiritsanso ntchito pazathu misonkhano ya autumn-yozizira. Pali mitundu yonse ya izo, kotero pali pafupifupi imodzi yomwe ili yoyenera kwa inu.

Source: www.habr.com

Kuwonjezera ndemanga