Dòigh-obrach gun fhrithealaiche airson leasachadh luath air seirbheis bhidio obrach

Dòigh-obrach gun fhrithealaiche airson leasachadh luath air seirbheis bhidio obrach

Bidh mi ag obair ann an taobh a-muigh, far am faodar am prìomh phrionnsapal a mhìneachadh leis an abairt “reic tòrr, dèan gu sgiobalta.” Mar as luaithe a nì sinn e, is ann as motha a chosnaicheas sinn. Agus, tha e ion-mhiannaichte nach obraich a h-uile dad air crutches agus snot, ach le ìre càileachd iomchaidh. Innsidh mi dhut mun eòlas agam nuair a bha feum air seirbheis adhartachaidh a leasachadh ann an ùine ghoirid.

Leis: cunntas bunaiteach air AWS, gun bhacadh sam bith air roghainn stac teicneòlais, aon chùl-raon, agus aon mhìos airson leasachadh.

Obair: cuir an gnìomh seirbheis adhartachaidh far am bi luchd-cleachdaidh a’ luchdachadh suas bho aon gu ceithir bhideothan a mhaireas bho aon gu ceithir diogan, a tha an uairsin freumhaichte anns an t-sreath bhidio tùsail.

co-dhùnadh

Chan e deagh bheachd a th’ ann an t-seirbheis baidhsagal agad fhèin a sgrìobhadh ann an ùine cho goirid. A bharrachd air an sin, gus an urrainn don t-seirbheis dèiligeadh ris an luchd agus gus am faigh a h-uile duine am bhidio falaichte, bidh feum air bun-structar. Agus b'fheàrr chan ann leis a' phrìs bhon itealan. Mar sin, bidh sinn a’ cuimseachadh sa bhad air fuasglaidhean deiseil le glè bheag de ghnàthachadh.

Is e am fuasgladh àbhaisteach airson a bhith ag obair le bhidio FFmpeg, goireas tòcan tar-àrd-ùrlar a leigeas leat, tro argamaidean, claisneachd a ghearradh agus a chuir thairis. Chan eil air fhàgail ach clò-bhualadh a sgrìobhadh agus a leigeil ma sgaoil gu beatha. Bidh sinn a’ sgrìobhadh prototype a chuireas dà bhidio ri chèile, agus... tòisichidh an spòrs. Tha an leabharlann stèidhichte air .NET Core 2, bu chòir dha ruith air inneal brìgheil sam bith, agus mar sin gabhaidh sinn eisimpleir AWS EC2 agus obraichidh a h-uile càil

Teacs falaichtechan e, chan obraich e
.
Ged a bhios FFmpeg a’ sìmpleachadh na h-obrach, airson fuasgladh a tha dha-rìribh ag obair feumaidh tu eisimpleir EC2 a chruthachadh agus bun-structar lìonra a dhealbhadh air a shon, a’ toirt a-steach cothromachadh luchdan. Bidh an obair shìmplidh a bhith a 'cleachdadh bhon toiseach a' fàs "beagan" nas iom-fhillte, agus tha am bun-structar a 'tòiseachadh ag iarraidh airgead sa bhad - gach uair a thìde thèid an t-suim airson ùine ruith a thoirt a-mach à cunntas an neach-cleachdaidh.

Chan eil an t-seirbheis againn a’ toirt a-steach pròiseasan Long-Running, chan eil feum air stòr-dàta dàimh mòr agus reamhar, agus bidh i gu foirfe a’ freagairt air ailtireachd stèidhichte air tachartas le sreath de ghairmean microservice. Tha am fuasgladh ga mholadh fhèin - is urrainn dhuinn EC2 a thrèigsinn agus tagradh fìor gun fhrithealaiche a chuir an gnìomh, mar an Image Resizer àbhaisteach stèidhichte air AWS Lambda.

Air an t-slighe, a dh'aindeoin mì-thoileachas follaiseach luchd-leasachaidh AWS airson .NET, tha iad a 'toirt taic do .NET Core 2.1 mar runtime, a tha a' toirt seachad raon farsaing de chothroman leasachaidh.

Agus an cherry air a’ chèic - tha AWS a’ toirt seachad seirbheis air leth airson a bhith ag obair le faidhlichean bhidio - AWS Elemental MediaConvert.

Tha brìgh na h-obrach gu math sìmplidh: bidh sinn a’ gabhail ceangal S3 ris a’ bhidio a tha a’ dol a-mach, a’ sgrìobhadh tro AWS Console, .NET SDK no dìreach JSON dè tha sinn ag iarraidh a dhèanamh leis a’ bhidio agus an t-seirbheis a ghairm. Bidh e fhèin a’ cur an gnìomh ciudha airson a bhith a’ giullachd iarrtasan a tha a’ tighinn a-steach, a’ luchdachadh suas an toradh gu S3 fhèin agus, nas cudromaiche, a’ gineadh Tachartas CloudWatch airson gach atharrachadh inbhe. Leigidh seo leinn innealan-brosnachaidh lambda a chuir an gnìomh gus giollachd bhidio a chrìochnachadh.

Dòigh-obrach gun fhrithealaiche airson leasachadh luath air seirbheis bhidio obrach
Seo mar a tha an ailtireachd mu dheireadh coltach:

Tha an cùl-raon gu lèir air a chumail ann an dà lambdas. Tha fear eile airson bhideothan dìreach a thionndadh, leis nach urrainnear obair mar sin a dhèanamh ann an aon bhealaich.

Cuiridh sinn an aghaidh ann an cruth iarrtas SPA sgrìobhte ann an JS agus air a chur ri chèile tro phug ann am bucaid S3 poblach. Gus na bhideothan a luchdachadh sìos iad fhèin, chan fheum sinn còd frithealaiche sam bith - feumaidh sinn dìreach na puingean crìochnachaidh REST a tha S3 a’ toirt dhuinn fhosgladh. Is e an aon rud na dìochuimhnich poileasaidhean agus CORS a rèiteachadh.

an cois

  • Chan eil AWS MediaConvert, airson adhbhar neo-aithnichte, a’ buntainn ach fuaim ri gach criomag bhidio fa leth, ach feumaidh sinn òran sunndach bhon t-sàbhalaiche-sgrìn gu lèir.
  • Feumar bhideothan dìreach a phròiseasadh air leth. Cha toil le AWS bàraichean dubha agus cuiridh e na rolairean aig 90 °.

Rinc spèilidh furasta

A dh'aindeoin a h-uile bòidhchead Stateless, feumaidh tu sùil a chumail air na dh'fheumar a dhèanamh leis a 'bhidio: glaodh no cuir fuaim ris an t-sreath deiseil bhidio. Gu fortanach, tha MediaConvert a’ toirt taic do bhith a’ dol seachad air meata-dàta tro na h-obraichean aige, agus is urrainn dhuinn an-còmhnaidh bratach shìmplidh den fhoirm “isMasterSoundJob” a chleachdadh, a’ parsadh a’ mheata-dàta seo aig ìre sam bith.

Tha Serverless gu foirfe a’ ceadachadh a bhith ag obair le NoOps - dòigh-obrach a tha a’ gabhail ris nach eil feum air sgioba air leth le uallach airson bun-structar a’ phròiseict. Mar sin, b 'e cùis bheag a bh' ann - bidh sinn a 'cleachdadh an fhuasglaidh air AWS gun com-pàirt luchd-rianachd an t-siostaim, aig a bheil an-còmhnaidh rudeigin ri dhèanamh co-dhiù.
Agus gus seo uile a luathachadh, bidh sinn ag fèin-ghluasad an sgriobt cleachdaidh cho mòr ‘s as urrainn air AWS CloudFormation, a leigeas leat cleachdadh le aon phutan gu dìreach bho VS. Mar thoradh air an sin, leigidh faidhle de 200 loidhne de chòd dhut fuasgladh deiseil a chuir a-steach, ged a dh’ fhaodadh an co-chòrdadh CloudFormation a bhith uamhasach mura h-eil thu cleachdte ris.

Iomlan

Chan e panacea a th’ ann an Serverless. Ach nì e beatha gu math nas fhasa ann an suidheachaidhean le trì crìochan: “goireasan cuibhrichte - geàrr-ùine - beagan airgead.”

Feartan thagraidhean a tha iomchaidh airson gun fhrithealaiche

  • às aonais pròiseasan fad-ruith. Is e crìoch cruaidh API Gateway 29 diogan, is e crìoch cruaidh lambda 5 mionaidean;
  • air a mhìneachadh le ailtireachd Event-Driven;
  • a 'briseadh sìos gu co-phàirtean dlùth-cheangailte mar SOA;
  • chan eil feum air mòran obrach ri do staid;
  • sgrìobhte ann an .NET Core. Gus obrachadh leis an .NET Framework, bidh feum agad fhathast air co-dhiù Docker leis an ùine ruith iomchaidh.

Buannachdan an dòigh-obrach Serverless

  • a 'lùghdachadh cosgaisean bun-structair;
  • a 'lùghdachadh cosgais lìbhrigeadh an fhuasglaidh;
  • fèin-ghluasadach scalability;
  • leasachadh aig fìor thoiseach adhartas teicneòlach.

Eas-bhuannachdan, le eisimpleir sònraichte

  • Tracadh agus logadh air a chuairteachadh - air fhuasgladh gu ìre tro AWS X-Ray agus AWS CloudWatch;
  • mì-ghoireasach debugging;
  • Tòisich fuar nuair nach eil luchd ann;
  • Tha eadar-aghaidh cleachdaiche-nàimhdeil AWS na dhuilgheadas uile-choitcheann :)

Source: www.habr.com

Cuir beachd ann