Indlela engenaseva yophuhliso olukhawulezayo lwenkonzo yevidiyo esebenzayo

Indlela engenaseva yophuhliso olukhawulezayo lwenkonzo yevidiyo esebenzayo

Ndisebenza kwi-outsourcing, apho umgaqo ophambili unokuchazwa ngebinzana elithi "thengisa kakhulu, yenze ngokukhawuleza." Okukhona siyenza ngokukhawuleza, kokukhona siya kwamkela ngakumbi. Kwaye, kuyinqweneleka ukuba yonke into ingasebenzi kwiintonga kunye ne-snot, kodwa kunye nenqanaba elamkelekileyo lomgangatho. Ndiza kukuxelela ngamava am xa kwakuyimfuneko ukuphuhlisa inkonzo yokuthengisa ngexesha elifutshane.

Nikiwe: iakhawunti yengcambu kwi-AWS, akukho zithintelo ekukhethweni kwesitaki sobuchwephesha, umva omnye, kunye nenyanga enye yophuhliso.

Umsebenzi: sebenzisa inkonzo yokuthengisa apho abasebenzisi balayisha ukusuka kwividiyo enye ukuya kwezine ezihlala kwisekondi enye ukuya kwezine, ezithi ke zifakwe kuthotho lwevidiyo.

Isisombululo

Ukubhala eyakho inkonzo yebhayisekile ngexeshana elifutshane ayilombono ilungileyo. Ukongeza, ukuze inkonzo imelane nomthwalo kwaye wonke umntu afumane ividiyo ebawelayo, iziseko zophuhliso ziya kufuneka. Kwaye ngokukhethekileyo hayi ngethegi yexabiso evela kwinqwelomoya. Ke ngoko, sijonga kwangoko kwizisombululo esezenziwe ngobuchule obuncinci.

Isisombululo esisemgangathweni sokusebenza kunye nevidiyo yiFFmpeg, i-cross-platform ye-console esetyenziswayo ethi, ngeengxabano, ikuvumela ukuba usike kwaye ugqithise i-audio. Ekuphela kwento eseleyo kukuba ubhale i-wrapper kwaye uyikhulule ebomini. Sibhala iprototype edibanisa iividiyo ezimbini kunye, kwaye ... ubumnandi buqala. Ithala leencwadi lisekelwe kwi-.NET Core 2, kufuneka isebenze kuwo nawuphi na umatshini wenyani, ngoko sithatha umzekelo we-AWS EC2 kwaye yonke into iya kusebenza.

Isicatshulwa esifihliweyohayi, ayizukusebenza
.
Nangona i-FFmpeg iwenza lula umsebenzi, kwisisombululo esisebenzayo ngokwenene kufuneka wenze umzekelo we-EC2 kwaye uyile isiseko sothungelwano kuyo, kubandakanywa iBalancer yoMlayisho. Umsebenzi olula wokuhambisa ukusuka ekuqaleni uba "kancinci" unzima ngakumbi, kwaye iziseko zophuhliso ziqala ukufuna imali ngokukhawuleza - iyure nganye imali yokuqhuba iyarhoxiswa kwiakhawunti yomxhasi.

Inkonzo yethu ayibandakanyi iinkqubo ze-Long-Running, ayifuni i-database enkulu kunye ne-fat relation, kwaye ingena ngokugqibeleleyo kwi-architecture esekelwe kwisiganeko kunye nekhonkco leefowuni ze-microservice. Isisombululo sicebisa ngokwaso - sinokuyishiya i-EC2 kwaye siphumeze usetyenziso lwenyani, njengomgangatho weResizer yoMfanekiso esekwe kwi-AWS Lambda.

Ngendlela, nangona ukungathandi okucacileyo kwabaphuhlisi be-AWS kwi-.NET, baxhasa i-NET Core 2.1 njengexesha lokugijima, elibonelela ngamathuba apheleleyo ophuhliso.

Kwaye i-cherry kwikhekhe - i-AWS inikezela ngenkonzo eyahlukileyo yokusebenza kunye neefayile zevidiyo - i-AWS Elemental MediaConvert.

Undoqo womsebenzi ulula ngendlela emangalisayo: sithatha ikhonkco le-S3 kwividiyo ephumayo, bhala nge-AWS Console, .NET SDK okanye ngokulula JSON into esifuna ukuyenza ngevidiyo kwaye sibize inkonzo. Yona ngokwayo iphumeza imigca yokucubungula izicelo ezingenayo, ilayishe isiphumo kwi-S3 ngokwayo kwaye, okona kubaluleke kakhulu, ivelisa uMnyhadala we-CloudWatch kutshintsho lwesimo ngasinye. Oku kusivumela ukuba siphumeze izixhokonxa ze-lambda ukugqiba ukusetyenzwa kwevidiyo.

Indlela engenaseva yophuhliso olukhawulezayo lwenkonzo yevidiyo esebenzayo
Nantsi indlela ulwakhiwo lokugqibela olujongeka ngayo:

I-backend yonke igcinwe kwii-lambdas ezimbini. Enye yeyokujikelezisa iividiyo ezithe nkqo, kuba loo msebenzi awunakwenziwa ngepasi elinye.

Siza kubeka phambili ngendlela yesicelo se-SPA esibhalwe kwi-JS kwaye sihlanganiswe nge-pug kwibhakethi ye-S3 yoluntu. Ukukhuphela iividiyo ngokwazo, asifuni nayiphi na ikhowudi yeseva - sifuna nje ukuvula i-REST endpoints esibonelelwa yi-S3. Into kuphela musa ukulibala ukuqwalasela imigaqo-nkqubo kunye ne-CORS.

ngenye into

  • I-AWS MediaConvert, ngesizathu esingaziwayo, isebenza kuphela isandi kwiqhekeza ngalinye levidiyo ngokwahlukileyo, kodwa sifuna ingoma echwayitileyo evela kwisigcini sesikrini sonke.
  • Iividiyo ezithe nkqo kufuneka ziqwalaselwe ngokwahlukeneyo. I-AWS ayithandi imivalo emnyama kwaye ibeka ii-roller kwi-90 Β°.

Irenki yokutyibiliza elula

Ngaphandle kwabo bonke ubuhle be-Stateless, kufuneka ugcine umkhondo wento ekufuneka yenziwe ngevidiyo: iglu okanye ukongeza iaudio kulandelelwano lwevidiyo olugqityiweyo. Ngethamsanqa, iMediaConvert ixhasa ukugqithiswa kwemethadatha kwiMisebenzi yayo, kwaye singasoloko sisebenzisa iflegi elula yohlobo β€œisMasterSoundJob”, sicazulula le metadata nakweliphi na inqanaba.

I-Serverless ivumela ngokugqibeleleyo ukusebenza kunye ne-NoOps - indlela ethatha ukungeyomfuneko kweqela elahlukileyo elijongene nesiseko seprojekthi. Ngoko ke, kwakuyinto encinci - sihambisa isisombululo kwi-AWS ngaphandle kokuthatha inxaxheba kwabalawuli benkqubo, abahlala benento yokwenza nantoni na.
Kwaye ukukhawulezisa konke oku, senza ngokuzenzekelayo iskripthi sokuthumela kangangoko sinakho kwi-AWS CloudFormation, ekuvumela ukuba usebenzise iqhosha elinye ngqo kwi-VS. Ngenxa yoko, ifayile yemigca ye-200 yekhowudi ikuvumela ukuba ukhuphe isisombululo esenziwe ngokufanelekileyo, nangona i-syntax ye-CloudFormation inokumangalisa ukuba awuqhelekanga kuyo.

Iyonke

I-Serverless ayiyo-panacea. Kodwa iya kwenza ubomi bube lula kakhulu kwiimeko ezinemida emithathu: "izixhobo ezilinganiselweyo-ixesha elifutshane-imali encinci."

Iimpawu zezicelo ezifanelekileyo kwi-Serverless

  • ngaphandle kweenkqubo ezisebenza ixesha elide. API Gateway nzima umda yi 29 imizuzwana, lambda nzima umda yi 5 imizuzu;
  • ichazwe yi-Event-Driven architecture;
  • idiliza ibe ngamacandelo adityanisiweyo ngokukhululekileyo njenge-SOA;
  • ayifuni umsebenzi omninzi ngemeko yakho;
  • ibhalwe kwi.NET Core. Ukusebenza nge-.NET Framework, uya kusafuna ubuncinci iDocker ngexesha elifanelekileyo lokubaleka.

Iinzuzo zendlela ye-Serverless

  • inciphisa iindleko zeziseko zophuhliso;
  • kunciphisa iindleko zokuhambisa isisombululo;
  • ukulinganisa okuzenzekelayo;
  • uphuhliso kwinqanaba lenkqubela phambili yetekhnoloji.

Ukungalungi, kunye nomzekelo othile

  • Ukuhanjiswa kunye nokugawulwa kwemithi - kusonjululwe ngokuyinxenye nge-AWS X-Ray kunye ne-AWS CloudWatch;
  • ukulungisa ingxaki;
  • I-Cold Start xa kungekho mthwalo;
  • Ujongano lomsebenzisi we-AWS yingxaki yendawo yonke :)

umthombo: www.habr.com

Yongeza izimvo