Leideanna agus acmhainní chun feidhmchláir gan fhreastalaí a thógáil

Leideanna agus acmhainní chun feidhmchláir gan fhreastalaí a thógáil
Cé go bhfuil an-tóir ar theicneolaíochtaí gan fhreastalaí le blianta beaga anuas, tá go leor míthuiscintí agus eagla fós ag baint leo. Is ábhar teo iad spleáchas díoltóirí, uirlisí, bainistíocht costais, tosú fuar, monatóireacht agus saolré forbartha nuair a thagann sé le teicneolaíochtaí gan freastalaí. San Airteagal seo, déanfaimid iniúchadh ar roinnt de na topaicí a luaitear, chomh maith le leideanna agus naisc a roinnt le foinsí cabhrach faisnéise chun cabhrú le tosaitheoirí feidhmchláir chumhachtacha, solúbtha agus cost-éifeachtacha gan freastalaí a chruthú.

Míthuiscintí faoi Theicneolaíochtaí Gan Freastalaí

Ceapann go leor daoine go bhfuil próiseáil gan fhreastalaí agus gan fhreastalaí (Feidhmeanna mar Sheirbhís, FaaS) beagnach an rud céanna. Ciallaíonn sé seo nach bhfuil an difríocht ró-mhór agus is fiú úrnuacht a thabhairt isteach. Cé go raibh AWS Lambda ar cheann de na réaltaí sa lá gan fhreastalaí agus ar cheann de na heilimintí is mó tóir ar an ailtireacht gan fhreastalaí, áfach, tá an ailtireacht seo i bhfad níos mó ná FaaS.

Is é an bunphrionsabal atá taobh thiar de theicneolaíochtaí gan fhreastalaí ná nach gá duit a bheith buartha faoi do bhonneagar a bhainistiú agus a scála, ní íocann tú ach as an méid a úsáideann tú. Baineann go leor seirbhísí leis na critéir seo - AWS DynamoDB, S3, SNS nó SQS, Graphcool, Auth0, Now, Netlify, Firebase agus go leor eile. Go ginearálta, ciallaíonn gan fhreastalaí cumhacht iomlán na néalríomhaireachta a úsáid gan gá le bonneagar a bhainistiú agus é a bharrfheabhsú le haghaidh scálaithe. Ciallaíonn sé freisin nach bhfuil an tslándáil ar leibhéal an bhonneagair ina ábhar imní duit a thuilleadh, agus is buntáiste ollmhór é sin i bhfianaise na deacrachta agus na gcastacht a bhaineann le caighdeáin slándála a chomhlíonadh. Ar deireadh, ní gá duit an bonneagar a chuirtear ar fáil duit a cheannach.

Is féidir a mheas mar “staid mheoin”: dearcadh áirithe agus réitigh á ndearadh. Seachain cuir chuige a éilíonn cothabháil aon bhonneagair. Le cur chuige gan freastalaí, caithimid am ag réiteach tascanna a théann i bhfeidhm go díreach ar an tionscadal agus a thugann buntáistí dár n-úsáideoirí: cruthaímid loighic gnó inbhuanaithe, forbraimid comhéadain úsáideora, agus forbraimid APIanna oiriúnaitheacha agus iontaofa.

Mar shampla, más féidir ardán cuardaigh téacs saor in aisce a bhainistiú agus a chothabháil, is é sin a dhéanfaimid. Is féidir leis an gcur chuige seo maidir le hiarratais tógála an t-am chun an mhargaidh a luasú go mór, mar ní gá duit smaoineamh ar bhonneagar casta a bhainistiú a thuilleadh. Deireadh a chur le freagrachtaí agus costais bhainistíocht bonneagair agus dírigh ar na feidhmchláir agus na seirbhísí a theastaíonn ó do chustaiméirí a thógáil. Patrick Debois a thug an cur chuige seo 'seirbhíseach', glactar leis an téarma sa phobal gan fhreastalaí. Ba cheart smaoineamh ar fheidhmeanna mar nasc chuig seirbhísí mar mhodúil in-imscartha (in ionad leabharlann iomlán nó feidhmchlár gréasáin a úsáid). Soláthraíonn sé seo gráinneacht dochreidte chun imscaradh agus athruithe ar an bhfeidhmchlár a bhainistiú. Murar féidir leat feidhmeanna a imscaradh ar an mbealach seo, d’fhéadfadh sé a thabhairt le fios go ndéanann na feidhmeanna an iomarca tascanna agus gur gá iad a athmhacrú.

Tá mearbhall ar chuid acu mar gheall ar an spleáchas atá ar an díoltóir agus é ag forbairt feidhmchláir scamall. Tá an rud céanna fíor maidir le teicneolaíochtaí gan fhreastalaí, agus ar éigean gur míthuiscint é seo. Inár dtaithí, tá tógáil feidhmchláir gan fhreastalaí ar AWS, in éineacht le cumas AWS Lambda seirbhísí AWS eile a chuachadh le chéile, mar chuid de neart ailtireachtaí gan fhreastalaí. Is sampla maith é seo de shineirgíocht, nuair is mó toradh an teaglaim ná suim na dtéarmaí amháin. Féadann níos mó fadhbanna fós a bheith ag baint le hiarracht a dhéanamh spleáchas díoltóirí a sheachaint. Agus tú ag obair le coimeádáin, tá sé níos éasca do chiseal astarraingthe féin a bhainistiú idir soláthraithe scamall. Ach maidir le réitigh gan fhreastalaí, ní íocfaidh an iarracht, go háirithe má chuirtear cost-éifeachtacht san áireamh ón tús. Bí cinnte a fháil amach conas a sholáthraíonn díoltóirí seirbhísí. Braitheann roinnt seirbhísí speisialaithe ar phointí comhtháthaithe le díoltóirí eile agus féadfaidh siad nascacht plug-and-play a sholáthar as an mbosca. Tá sé níos éasca glao Lambda a sholáthar ó chríochphointe API geata ná an t-iarratas a sheachvótálaí chuig coimeádán nó ásc EC2 éigin. Soláthraíonn Graphcool cumraíocht éasca le Auth0, atá níos éasca ná uirlisí fíordheimhnithe tríú páirtí a úsáid.

Is cinneadh ailtireachta é an díoltóir ceart a roghnú le haghaidh d’fheidhmchláir gan fhreastalaí. Nuair a chruthaíonn tú feidhmchlár, ní bhíonn tú ag súil go bhfillfidh lá amháin ar fhreastalaithe a bhainistiú. Ní hionann díoltóir néil a roghnú ná coimeádáin nó bunachar sonraí a úsáid, nó fiú teanga cláir.

Mheas:

  • Cad iad na seirbhísí atá uait agus cén fáth.
  • Cad iad na seirbhísí a sholáthraíonn soláthraithe scamall agus conas is féidir leat iad a chomhcheangal leis an réiteach FaaS atá roghnaithe agat.
  • Cad iad na teangacha cláir a thacaítear leo (le clóscríobh dinimiciúil nó statach, a thiomsú nó a léirmhíniú, cad iad na tagarmharcanna, cad é an fheidhmíocht ar thosú fuar, cad é an t-éiceachóras foinse oscailte, etc.).
  • Cad iad do riachtanais slándála (SLA, 2FA, OAuth, HTTPS, SSL, etc.).
  • Conas do thimthriallta CI/CD agus forbairt bogearraí a bhainistiú.
  • Cé na réitigh bhonneagair mar chóid ar féidir leat leas a bhaint astu.

Má shíneann tú feidhmchlár atá ann cheana féin agus má chuireann tú feidhmiúlacht gan fhreastalaí leis go hincriminteach, d’fhéadfadh sé seo teorainn éigin a chur leis na cumais atá ar fáil. Mar sin féin, soláthraíonn beagnach gach teicneolaíocht gan fhreastalaí API de chineál éigin (trí scuainí REST nó teachtaireachta) a ligeann duit síntí a chruthú neamhspleách ar chroílár an fheidhmchláir agus le comhtháthú éasca. Cuardaigh seirbhísí le API soiléir, doiciméadú maith, agus pobal láidir, agus ní féidir leat dul amú. Is féidir le héascaíocht an chomhtháthaithe a bheith ina phríomhmhéadrach go minic, agus is dócha gurb é ceann de na príomhchúiseanna a d’éirigh chomh maith sin le AWS ó scaoileadh Lambda in 2015.

Nuair a bhíonn Serverless Maith

Is féidir teicneolaíochtaí gan fhreastalaí a chur i bhfeidhm beagnach i ngach áit. Mar sin féin, níl a gcuid buntáistí teoranta do bhealach amháin iarratais. Tá an bacainn iontrála don néalríomhaireacht inniu chomh híseal sin a bhuíochas do theicneolaíochtaí gan fhreastalaí. Má tá smaoineamh ag forbróirí, ach nach bhfuil a fhios acu conas bonneagar scamall a bhainistiú agus costais a bharrfheabhsú, ansin ní gá dóibh innealtóir de chineál éigin a lorg chun é a dhéanamh. Más mian le gnólacht tosaithe ardán a thógáil ach go bhfuil faitíos air go n-éireoidh costais as smacht, is féidir leo réiteach gan freastalaí a dhéanamh go héasca.

Mar gheall ar choigilteas costais agus éascaíocht scálú, tá réitigh gan fhreastalaí chomh infheidhme maidir le córais inmheánacha agus sheachtracha araon, suas le feidhmchlár gréasáin a bhfuil lucht féachana ilmhilliún aige. Déantar cuntais a thomhas seachas in euro, ach mar cent. Cosnóidh sé €2 an sampla is simplí de AWS EC1 (t15.micro) a fháil ar cíos ar feadh míosa, fiú mura ndéanann tú tada leis (nach ndearna tú dearmad riamh é a mhúchadh?!). I gcomparáid leis sin, chun an leibhéal caiteachais seo a bhaint amach thar an tréimhse chéanna ama, bheadh ​​ort Lambda 512 MB a rith ar feadh 1 soicind thart ar 3 mhilliún uair. Agus mura n-úsáideann tú an ghné seo, ní íocann tú rud ar bith.

Toisc gur imeacht-tiomáinte go príomha é gan fhreastalaí, tá sé measartha éasca bonneagar gan fhreastalaí a chur le córais níos sine. Mar shampla, ag baint úsáide as AWS S3, Lambda, agus Kinesis, is féidir leat seirbhís anailíse a chruthú do sheanchóras miondíola ar féidir sonraí a fháil trí API.

Tacaíonn formhór na n-ardán gan fhreastalaí le teangacha iolracha. Is minice Python, JavaScript, C#, Java agus Téigh. De ghnáth níl aon srianta ar úsáid leabharlanna i ngach teanga, mar sin is féidir leat na leabharlanna foinse oscailte is fearr leat a úsáid. Mar sin féin, tá sé inmholta gan mí-úsáid a bhaint as spleáchais ionas go bhfeidhmeoidh do chuid feidhmeanna go barrmhaith agus nach ndéanann siad na buntáistí a bhaineann le hinscálaitheacht ollmhór d'fheidhmchláir gan fhreastalaí a dhiúltú. Na pacáistí níos mó a chaithfear a luchtú isteach sa choimeádán, an níos faide a ghlacfaidh an tús fuar.

Tús fuar is ea nuair is gá duit an coimeádán, an t-am rite agus an láimhseálaí earráide a thúsú roimh iad a úsáid. Mar gheall air seo, is féidir an mhoill ar fhorghníomhú feidhmeanna a bheith suas le 3 soicind, agus ní hé seo an rogha is fearr d’úsáideoirí mífhoighneach. Tarlaíonn an slaghdán, áfach, ag an gcéad ghlao tar éis cúpla nóiméad d’fheidhm dhíomhaoin. Measann an oiread sin gur beag imní é seo ar féidir oibriú timpeall air ach an fheidhm a phingeáil go rialta chun í a choinneáil réchúiseach. Nó déanann siad neamhaird ar an ngné seo ar fad.

Cé gur scaoileadh AWS Bunachar sonraí SQL gan fhreastalaí Aurora gan fhreastalaíNíl bunachair shonraí SQL oiriúnach don fheidhmchlár seo, áfach, toisc go mbraitheann siad ar naisc chun idirbhearta a dhéanamh, rud a d’fhéadfadh a bheith ina bhac go tapa le trácht trom ar AWS Lambda. Sea, tá na forbróirí ag feabhsú Serverless Aurora i gcónaí, agus ba cheart duit triail a bhaint as, ach inniu is maith le réitigh NoSQL dynamodb. Mar sin féin, níl aon amhras ach go dtiocfaidh athrú ar an scéal seo go han-luath.

Cuireann an fhoireann uirlisí go leor srianta i bhfeidhm freisin, go háirithe i réimse na tástála áitiúil. Cé go bhfuil réitigh cosúil le Docker-Lambda, DynamoDB Local agus LocalStack, éilíonn siad obair chrua agus méid suntasach cumraíochta. Mar sin féin, déantar na tionscadail seo go léir a fhorbairt go gníomhach, mar sin níl ann ach beagán ama sula sroicheann an fhoireann uirlisí an leibhéal a theastaíonn uainn.

Tionchar na dteicneolaíochtaí gan freastalaí ar an timthriall forbartha

Toisc nach bhfuil i do bhonneagar ach cumraíocht, is féidir leat cód a shainiú agus a imscaradh ag baint úsáide as scripteanna, mar scripteanna sliogán. Nó is féidir leat dul i muinín réitigh ranga cumraíochta-mar-cód mar Foirmiú Cloud AWS. Cé nach soláthraíonn an tseirbhís seo cumraíocht do gach réimse, ceadaíonn sé duit acmhainní sonracha a shainiú le húsáid mar fheidhmeanna Lambda. Is é sin, nuair a theipeann ar CloudFormation tú, is féidir leat d'acmhainn féin (feidhm Lambda) a scríobh a dhúnfaidh an bhearna seo. Ar an mbealach seo is féidir leat aon rud a dhéanamh, fiú spleáchais a chumrú lasmuigh de do thimpeallacht AWS.

Toisc nach bhfuil ann ach cumraíocht, is féidir leat do scripteanna imscaradh a shaincheapadh le haghaidh timpeallachtaí, réigiúin agus úsáideoirí sonracha, go háirithe má tá tú ag baint úsáide as réitigh bonneagair-mar-chóid cosúil le CloudFormation. Mar shampla, is féidir leat cóip den bhonneagar a imscaradh do gach brainse sa stór ionas gur féidir leat iad a thástáil go hiomlán leat féin le linn na forbartha. Cuireann sé seo dlús mór le haiseolas d’fhorbróirí nuair is mian leo a thuiscint an n-oibríonn a gcód mar is cuí i dtimpeallacht bheo. Ní gá do bhainisteoirí a bheith buartha faoin gcostas a bhaineann le timpeallachtaí iolracha a imscaradh, toisc nach n-íocann siad ach as úsáid iarbhír.

Tá níos lú imní ar DevOps mar ní gá dóibh ach a chinntiú go bhfuil an chumraíocht cheart ag forbróirí. Ní gá duit cásanna, cothromóirí nó grúpaí slándála a bhainistiú a thuilleadh. Dá bhrí sin, úsáidtear an téarma NoOps níos mó, cé go bhfuil sé tábhachtach fós a bheith in ann an bonneagar a chumrú, go háirithe nuair a thagann sé le cumraíocht IAM agus leas iomlán a bhaint as acmhainní scamall.

Tá uirlisí an-chumhachtacha monatóireachta agus léirshamhlaithe ann mar Epsagon, Thundra, Dashbird agus IOPipe. Ligeann siad duit monatóireacht a dhéanamh ar staid reatha d'fheidhmchláir gan fhreastalaí, logáil agus rianú a sholáthar, méadracht feidhmíochta agus scrogaill ailtireachta a ghabháil, anailís agus réamhaisnéis costais a dhéanamh, agus go leor eile. Ní hamháin go dtugann siad léargas cuimsitheach d’innealtóirí, d’fhorbróirí agus d’ailtirí DevOps ar fheidhmíocht iarratais, ach ligeann siad freisin do bhainisteoirí monatóireacht a dhéanamh ar an gcás i bhfíor-am, le costais acmhainne in aghaidh an tsoicind agus réamhaisnéis costais. Tá sé i bhfad níos deacra é seo a eagrú le bonneagar bainistithe.

Tá sé i bhfad níos éasca feidhmchláir gan fhreastalaí a dhearadh mar ní gá duit freastalaithe gréasáin a imscaradh, meaisíní fíorúla nó coimeádáin, freastalaithe paiste, córais oibriúcháin, geataí idirlín, srl a bhainistiú. Trí na freagrachtaí seo go léir a bhaint, is féidir le hailtireacht gan freastalaí díriú ar an gcroí - riachtanais ghnó agus chustaiméirí.

Cé go bhféadfadh an fhoireann uirlisí a bheith níos fearr (feabhsaítear é gach lá), is féidir le forbróirí díriú ar an loighic ghnó a chur i bhfeidhm agus castacht an fheidhmchláir a dháileadh ar na seirbhísí éagsúla laistigh den ailtireacht is fearr. Tá bainistíocht feidhmchláir gan fhreastalaí bunaithe ar imeachtaí agus astarraingt ag an soláthróir néil (m.sh. SQS, imeachtaí S3 nó sruthanna DynamoDB). Dá bhrí sin, ní gá d’fhorbróirí ach loighic ghnó a scríobh chun freagra a thabhairt ar imeachtaí áirithe, agus ní gá a bheith buartha faoi conas is fearr bunachair shonraí agus scuainí teachtaireachtaí a chur i bhfeidhm, nó conas an obair is fearr a eagrú le sonraí i stórais crua-earraí ar leith.

Is féidir cód a rith agus a dhífhabhtú go háitiúil, mar aon le haon phróiseas forbartha. Fanann tástáil aonaid mar a chéile. Ligeann an cumas chun bonneagar iarratais iomlán a imscaradh le cumraíocht chruach saincheaptha d'fhorbróirí aiseolas tábhachtach a fháil go tapa gan smaoineamh ar chostas na tástála nó ar an tionchar ar thimpeallachtaí costasacha bainistithe.

Uirlisí agus teicnící chun feidhmchláir gan fhreastalaí a thógáil

Níl aon bhealach ar leith ann chun feidhmchláir gan fhreastalaí a thógáil. Chomh maith le sraith seirbhísí don tasc seo. Is é AWS an ceannaire i measc réitigh chumhachtacha gan fhreastalaí inniu, ach féach freisin Google Cloud, am и Firebase. Má tá AWS á úsáid agat, is é an cur chuige a mholtar chun iarratais a bhailiú Samhail Feidhmchláir Gan Fhreastalaí (SAM), go háirithe agus C # in úsáid, toisc go bhfuil uirlisí iontacha ag Visual Studio. Is féidir leis an SAM CLI gach rud is féidir le Visual Studio a dhéanamh, mar sin ní chaillfidh tú aon rud má aistríonn tú chuig IDE nó eagarthóir téacs eile. Ar ndóigh, oibríonn SAM le teangacha eile freisin.

Má tá tú ag scríobh i dteangacha eile, is uirlis foinse oscailte den scoth é an Creat Serverless a ligeann duit aon rud a chumrú le comhaid cumraíochta YAML an-chumhachtach. Tacaíonn an Creat Serverless le seirbhísí scamall éagsúla freisin, mar sin molaimid é dóibh siúd atá ag lorg réiteach il-scamall. Tá pobal ollmhór aige a chruthaigh a lán breiseán do aon ghá.

Le haghaidh tástála áitiúil, tá na huirlisí foinse oscailte Docker-Lambda, Serverless Local, DynamoDB Local, agus LocalStack oiriúnach go maith. Tá teicneolaíochtaí gan freastalaí fós ina gcéimeanna tosaigh forbartha, mar atá na huirlisí dóibh, mar sin agus tú ag socrú le haghaidh cásanna tástála casta, beidh ort oibriú go crua. Mar sin féin, tá sé thar a bheith saor an chairn a imscaradh i dtimpeallacht agus a thástáil. Agus ní gá duit cóip chruinn áitiúil a dhéanamh de thimpeallachtaí scamall.

Úsáid AWS Lambda Layers chun méid na bpacáistí imlonnaithe a laghdú agus íoslódálacha a bhrostú.

Úsáid na teangacha ríomhchlárúcháin cearta le haghaidh tascanna sonracha. Tá a gcuid buntáistí agus míbhuntáistí féin ag teangacha éagsúla. Tá go leor tagarmharcanna ann, ach is iad JavaScript, Python, agus C# (. NET Core 2.1+) na cinn i dtéarmaí feidhmíochta AWS Lambda. Thug AWS Lambda isteach an Runtime API le déanaí, a ligeann duit an teanga agus an timpeallacht rite atá uait a shonrú, mar sin déan turgnamh.

Coinnigh méideanna pacáiste beag le himscaradh. Dá lú iad, is amhlaidh is tapúla a luchtaíonn siad. Seachain leabharlanna móra a úsáid, go háirithe má úsáideann tú cúpla gné uathu. Má tá JavaScript á ríomhchlárú agat, bain úsáid as uirlis tógála cosúil le Webpack chun do thógáil a bharrfheabhsú agus gan ach an méid a theastaíonn uait a áireamh. Tá QuickJit agus Tiered Compilation ag NET Core 3.0 a fheabhsaíonn feidhmíocht agus a chabhraíonn go mór le tosú fuar.

D'fhéadfadh sé a bheith deacair loighic ghnó a chomhordú ar dtús nuair a bhraitheann feidhmeanna gan fhreastalaí ar imeachtaí. Maidir leis seo, is féidir le scuainí teachtaireachta agus meaisíní stáit a bheith thar a bheith úsáideach. Is féidir le feidhmeanna Lambda glaoch ar a chéile, ach déan é seo mura bhfuil tú ag súil le freagra ("dóiteáin agus déan dearmad") - ní mian leat bille a fháil as fanacht le feidhm eile a chomhlánú. Tá scuainí teachtaireachta úsáideach chun codanna de loighic ghnó a aonrú, scrogaill feidhmchlár a bhainistiú, agus chun idirbhearta a phróiseáil (ag baint úsáide as scuainí FIFO). Is féidir feidhmeanna AWS Lambda a shannadh do scuainí SQS mar scuainí teachtaireachtaí greamaithe a choinníonn súil ar theachtaireachtaí teipthe le haghaidh anailíse níos déanaí. Tá Feidhmeanna Céim AWS (meaisíní stáit) an-úsáideach chun próisis chasta a bhainistiú a éilíonn slabhraiú feidhmeanna. In ionad feidhm Lambda ag glaoch ar fheidhm eile, is féidir le feidhmeanna céim aistrithe stáit a chomhordú, sonraí a chur ar aghaidh idir feidhmeanna, agus staid dhomhanda feidhmeanna a bhainistiú. Ligeann sé seo duit coinníollacha retry a shainiú, nó cad atá le déanamh nuair a tharlaíonn earráid ar leith - uirlis an-chumhachtach i gcoinníollacha áirithe.

Conclúid

Le blianta beaga anuas, tá teicneolaíochtaí gan fhreastalaí ag forbairt ar luas gan fasach. Tá míthuiscintí áirithe ag baint leis an athrú paradigm seo. Trí bhonneagar a asbhaint agus bainistíocht scálaithe, cuireann réitigh gan fhreastalaí buntáistí suntasacha ar fáil, ó fhorbairt shimplithe agus próisis DevOps go laghduithe ollmhóra ar chostais oibriúcháin.
Cé nach bhfuil an cur chuige gan fhreastalaí gan na míbhuntáistí a bhaineann leis, tá patrúin láidre dearaidh ann ar féidir iad a úsáid chun feidhmchláir láidre gan fhreastalaí a thógáil nó chun eilimintí gan fhreastalaí a chomhtháthú sna hailtireachtaí atá ann cheana féin.

Foinse: will.com

Add a comment