Fomba fiasa tsy misy mpizara ho an'ny fampandrosoana haingana ny serivisy horonantsary miasa

Fomba fiasa tsy misy mpizara ho an'ny fampandrosoana haingana ny serivisy horonantsary miasa

Miasa amin'ny outsourcing aho, izay azo faritana amin'ny fehezan-teny hoe "mivarotra betsaka, ataovy haingana." Arakaraky ny haingantsika izany no hahazoantsika bebe kokoa. Ary, irina fa ny zava-drehetra dia tsy miasa amin'ny crutches sy snot, fa amin'ny kalitao azo ekena. Holazaiko aminao ny zavatra niainako rehefa nilaina ny namolavola serivisy fampiroboroboana tao anatin'ny fotoana fohy.

nomena: kaonty faka ao amin'ny AWS, tsy misy famerana ny safidin'ny stack teknolojia, backend iray ary iray volana ho an'ny fampandrosoana.

Asa iray: Mampihatra tolotra fampiroboroboana izay ahafahan'ny mpampiasa mampakatra lahatsary iray ka hatramin'ny efatra maharitra iray ka hatramin'ny efatra segondra, izay ampidirina ao amin'ny andian-dahatsary voalohany avy eo.

fanapahan-kevitra

Tsy hevitra tsara ny manoratra ny serivisy amin'ny bisikiletanao ao anatin'ny fotoana fohy. Ankoatra izay, mba hahazaka ny enta-mavesatry ny sampan-draharaha sy hahazoan’ny rehetra ny horonan-tsary nitsiriritra dia ilaina ny fotodrafitrasa. Ary aleo tsy miaraka amin'ny vidin'ny fiaramanidina. Noho izany, mifantoka avy hatrany amin'ny vahaolana efa vita miaraka amin'ny fanamboarana kely indrindra.

Ny vahaolana mahazatra amin'ny fiaraha-miasa amin'ny horonan-tsary dia FFmpeg, fitaovana fampiononana cross-platform izay, amin'ny alàlan'ny tohan-kevitra, dia ahafahanao manapaka sy manapaka feo. Ny hany azo atao dia ny manoratra fonon-taratasy ary mamoaka izany amin'ny fiainana. Manoratra prototype izahay izay manjaitra horonan-tsary roa, ary... manomboka ny fahafinaretana. Ny tranomboky dia mifototra amin'ny .NET Core 2, tokony handeha amin'ny milina virtoaly rehetra izy, noho izany dia maka ohatra AWS EC2 izahay ary handeha ny zava-drehetra.

Lahatsoratra miafinatsia, tsy mety izany
.
Na dia manatsotra ny asa aza ny FFmpeg, ho an'ny vahaolana tena miasa dia mila mamorona ohatra EC2 ianao ary mamolavola fotodrafitrasa tambajotra ho azy, anisan'izany ny Load Balancer. Ny asa tsotra amin'ny fametrahana hatramin'ny voalohany dia lasa "kely" sarotra kokoa, ary manomboka mitaky vola avy hatrany ny fotodrafitrasa - isaky ny ora dia esorina amin'ny kaontin'ny mpanjifa ny vola ho an'ny fotoana.

Ny serivisy ataonay dia tsy tafiditra ao anatin'ny dingana maharitra maharitra, tsy mitaky angon-drakitra fifandraisana lehibe sy matavy, ary mifanaraka tsara amin'ny rafitra mifototra amin'ny hetsika miaraka amin'ny rojom-pifandraisana microservice. Ny vahaolana dia manolo-kevitra - afaka miala amin'ny EC2 isika ary mampihatra fampiharana tsy misy mpizara marina, toy ny Image Resizer miorina amin'ny AWS Lambda.

Etsy ankilany, na dia eo aza ny tsy fitiavan'ireo mpamorona AWS ho an'ny .NET, dia manohana ny .NET Core 2.1 ho toy ny fotoana fandehanana izy ireo, izay manome fahafaha-manao fampandrosoana feno.

Ary ny serizy amin'ny mofomamy - AWS dia manome serivisy misaraka amin'ny fiasana amin'ny rakitra video - AWS Elemental MediaConvert.

Ny fototry ny asa dia tena tsotra: maka rohy S3 mankany amin'ny horonan-tsary mivoaka izahay, manoratra amin'ny alàlan'ny AWS Console, .NET SDK na JSON tsotra fotsiny izay tiantsika hatao amin'ny horonan-tsary ary miantso ny serivisy. Izy io ihany no mametraka filaharana amin'ny fanodinana ny fangatahana ho avy, mampakatra ny valiny amin'ny S3 mihitsy ary, indrindra indrindra, mamorona CloudWatch Event ho an'ny fanovana sata tsirairay. Izany dia mamela antsika hampihatra lambda trigger hamita ny fanodinana horonan-tsary.

Fomba fiasa tsy misy mpizara ho an'ny fampandrosoana haingana ny serivisy horonantsary miasa
Toy izao ny endriky ny architecture farany:

Ny lamosina manontolo dia napetraka ao anaty lambdas roa. Ny iray hafa dia ny fihodinana horonan-tsary mitsangana, satria ny asa toy izany dia tsy azo atao amin'ny lalana iray.

Hapetrakay amin'ny endrika fampiharana SPA voasoratra amin'ny JS ny anoloana ary natambatra amin'ny alàlan'ny pug ao anaty siny S3 ho an'ny daholobe. Raha te-hisintona ireo horonan-tsary dia tsy mila kaody mpizara izahay - mila manokatra ny teboka farany REST izay omen'ny S3 anay. Ny zavatra tokana dia aza adino ny manamboatra politika sy CORS.

fandrika

  • AWS MediaConvert, noho ny antony tsy fantatra, dia tsy misaraka afa-tsy ny feo amin'ny sombin-dahatsary tsirairay, fa mila hira falifaly avy amin'ny efijery manontolo.
  • Mila karakaraina mitokana ny horonan-tsary mitsangana. Ny AWS dia tsy tia bara mainty ary mametraka ny rollers amin'ny 90 °.

Skating rink mora

Na dia eo aza ny hatsaran'ny Stateless, mila manara-maso izay tokony hatao amin'ny horonan-tsary ianao: lakaoly na ampio feo amin'ny filaharan'ny horonan-tsary vita. Soa ihany fa ny MediaConvert dia manohana ny fandefasana metadata amin'ny Asany, ary afaka mampiasa saina tsotra amin'ny endrika “isMasterSoundJob” foana izahay, mamakivaky ity metadata ity amin'ny dingana rehetra.

Ny Serverless dia mamela tanteraka ny fiaraha-miasa amin'ny NoOps - fomba iray izay mihevitra ny tsy filan'ny ekipa misaraka tompon'andraikitra amin'ny fotodrafitrasa tetikasa. Noho izany, olana kely izany - mametraka ny vahaolana amin'ny AWS tsy misy ny fandraisan'anjaran'ny mpitantana ny rafitra, izay manana zavatra hatao foana.
Ary mba hanafainganana izany rehetra izany, dia automatique ny script deployment araka izay azo atao ao amin'ny AWS CloudFormation, izay ahafahanao mametraka amin'ny bokotra iray mivantana avy amin'ny VS. Vokatr'izany, ny rakitra misy kaody 200 dia ahafahanao mamoaka vahaolana efa vita, na dia mety hahagaga aza ny syntax CloudFormation raha tsy zatra azy ianao.

Итого

Ny serverless dia tsy fanafody fitsaboana. Hanamora kokoa ny fiainana anefa izany amin’ny toe-javatra misy fetra telo: “loharanom-bola voafetra — fotoana fohy — vola kely”.

Toetran'ny fampiharana mety amin'ny tsy misy mpizara

  • tsy misy dingana maharitra. Ny fetra mafy amin'ny API Gateway dia 29 segondra, ny fetra mafy lambda dia 5 minitra;
  • nofaritan'ny Architecture Event-Driven;
  • rava ho singa mifamatotra malalaka toy ny SOA;
  • tsy mitaky asa be amin'ny toe-javatra misy anao;
  • voasoratra ao amin'ny .NET Core. Raha hiasa miaraka amin'ny .NET Framework dia mbola mila Docker farafaharatsiny ianao miaraka amin'ny fotoana mety.

Tombontsoa amin'ny fomba fiasa tsy misy mpizara

  • mampihena ny vidin'ny fotodrafitrasa;
  • mampihena ny saran'ny fanaterana ny vahaolana;
  • scalability mandeha ho azy;
  • fampandrosoana amin'ny faran'ny fandrosoana ara-teknolojia.

Ny tsy fahampiana, miaraka amin'ny ohatra manokana

  • Fanaraha-maso sy firaketana an-tsoratra - voavaha amin'ny ampahany amin'ny AWS X-Ray sy AWS CloudWatch;
  • debugging tsy mety;
  • Cold Start rehefa tsy misy entana;
  • Olana manerantany ny AWS mpampiasa-fankahalana :)

Source: www.habr.com

Add a comment