Ayinaseva kuma-racks

Ayinaseva kuma-racks
I-Serverless ayiphathelene nokungabi khona ngokomzimba kwamaseva. Lokhu akuwona umbulali wezitsha noma umkhuba odlulayo. Lena indlela entsha yokwakha amasistimu emafini. Esihlokweni sanamuhla sizothinta ukwakhiwa kwezinhlelo zokusebenza ezingenayo i-Serverless, ake sibone ukuthi umhlinzeki wesevisi ye-Serverless kanye namaphrojekthi womthombo ovulekile adlala yiphi indima. Ekugcineni, ake sikhulume ngezinkinga zokusebenzisa i-Serverless.

Ngifuna ukubhala ingxenye yeseva yohlelo lokusebenza (noma isitolo se-inthanethi). Lokhu kungaba ingxoxo, isevisi yokushicilela okuqukethwe, noma isilinganisi somthwalo. Kunoma yikuphi, kuzoba nekhanda eliningi: kuzodingeka ulungise ingqalasizinda, unqume ukuncika kwesicelo, futhi ucabange ngohlelo lokusebenza lomsingathi. Khona-ke uzodinga ukuvuselela izingxenye ezincane ezingaphazamisi ukusebenza kwayo yonke enye i-monolith. Hhayi-ke, masingakhohlwa mayelana nokukala ngaphansi komthwalo.

Kuthiwani uma sithatha iziqukathi ze-ephemeral, lapho ukuncika okudingekayo sekuvele kufakwe ngaphambili, futhi iziqukathi ngokwazo zihlukanisiwe komunye nomunye naku-OS yokusingatha? Sizohlukanisa i-monolith ibe yizinsizakalo ezincane, ngayinye yazo engabuyekezwa futhi ikalwe ngokuzimela ngaphandle kwamanye. Ngokubeka ikhodi esitsheni esinjalo, ngingayisebenzisa kunoma iyiphi ingqalasizinda. Sekungcono.

Kuthiwani uma ungafuni ukulungisa iziqukathi? Angifuni ukucabanga ngokukala uhlelo lokusebenza. Angifuni ukukhokhela iziqukathi ezigijimayo ezingasebenzi lapho umthwalo osenkonzweni umncane. Ngifuna ukubhala ikhodi. Gxila kumqondo webhizinisi futhi ulethe imikhiqizo emakethe ngesivinini sokukhanya.

Imicabango enjalo ingiholele kukhompyutha engena-server. Serverless kuleli cala kusho hhayi ukungabikho ngokomzimba kwamaseva, kodwa ukungabi khona kwekhanda lokuphathwa kwengqalasizinda.

Umqondo uwukuthi i-logic yohlelo lokusebenza ihlukaniswe yaba imisebenzi ezimele. Banesakhiwo somcimbi. Umsebenzi ngamunye wenza "i-microtask" eyodwa. Okudingekayo kunjiniyela ukulayisha imisebenzi kukhonsoli enikezwe umhlinzeki wamafu futhi ayihlobanise nemithombo yomcimbi. Ikhodi izosetshenziswa ngokufunwa esitsheni esilungiselelwe ngokuzenzakalelayo, futhi ngizokhokhela kuphela isikhathi sokwenza.

Ake sibone ukuthi inqubo yokuthuthukisa isicelo izobukeka kanjani manje.

Kusukela ohlangothini lonjiniyela

Ngaphambilini siqale ukukhuluma ngesicelo sesitolo se-inthanethi. Ngendlela yendabuko, i-logic eyinhloko yesistimu yenziwa isicelo se-monolithic. Futhi iseva enohlelo lokusebenza isebenza njalo, noma ungekho umthwalo.

Ukuze siye kokungenasiphakeli, sihlukanisa uhlelo lokusebenza lube imisebenzi emincane. Sibhala umsebenzi wethu ngamunye wabo. Imisebenzi izimele komunye nomunye futhi ayigcini ulwazi lwezwe (olungenasimo). Angase abhalwe nangezilimi ezihlukahlukene. Uma omunye wabo "ewa", lonke uhlelo lokusebenza ngeke lime. I-architecture yohlelo lokusebenza izobukeka kanje:

Ayinaseva kuma-racks
Ukuhlukaniswa kwemisebenzi ku-Serverless kufana nokusebenza ngama-microservices. Kodwa i-microservice ingenza imisebenzi eminingana, futhi umsebenzi kufanele wenze owodwa ngendlela efanele. Ake sicabange ukuthi umsebenzi uwukuqoqa izibalo futhi sizibonise ngokwesicelo somsebenzisi. Endleleni ye-microservice, umsebenzi wenziwa yinkonzo eyodwa enamaphuzu amabili okungena: ukubhala nokufunda. Kukhompyutha engenasiphakeli, lokhu kuzoba imisebenzi emibili ehlukene engahlobene. Umthuthukisi ulondoloza izinsiza zekhompuyutha uma, ngokwesibonelo, izibalo zibuyekezwa kaningi kunalokho ezilandiwe.

Imisebenzi engenasiphakeli kufanele yenziwe ngesikhathi esifushane (isikhathi sokuvala), esinqunywa umhlinzeki wesevisi. Isibonelo, ku-AWS isikhathi sokuvala siyimizuzu eyi-15. Lokhu kusho ukuthi imisebenzi ephile isikhathi eside kuyodingeka ishintshwe ukuze ivumelane nezimfuneko - yilokhu okuhlukanisa i-Serverless kobunye ubuchwepheshe obudumile namuhla (iziqukathi kanye Nenkundla Njengesevisi).

Sabela umcimbi kumsebenzi ngamunye. Umcimbi uyisiqalo sesenzo:

Umcimbi
Isenzo owenziwa umsebenzi

Isithombe somkhiqizo silayishwe endaweni yokugcina.
Cindezela isithombe bese ulayisha ohlwini lwemibhalo

Ikheli lesitolo sangempela libuyekeziwe kusizindalwazi
Layisha indawo entsha kumamephu

Iklayenti likhokhela izimpahla
Qala ukucubungula inkokhelo

Imicimbi ingaba izicelo ze-HTTP, idatha yokusakaza, imigqa yemilayezo, nokunye. Imithombo yomcimbi izinguquko noma izenzakalo zedatha. Ngaphezu kwalokho, imisebenzi ingaqalwa isibali sikhathi.

Isakhiwo senziwe, futhi isicelo sacishe saphelelwa yiseva. Okulandelayo siya kumhlinzeki wesevisi.

Kusukela ohlangothini lomhlinzeki

Ngokuvamile, i-serverless computing inikezwa abahlinzeki besevisi yamafu. Abizwa ngokuhlukile: Imisebenzi ye-Azure, i-AWS Lambda, i-Google Cloud Functions, i-IBM Cloud Functions.

Sizosebenzisa isevisi ngekhonsoli yomhlinzeki noma i-akhawunti yomuntu siqu. Ikhodi yomsebenzi ingalandwa ngenye yezindlela ezilandelayo:

  • bhala ikhodi kubahleli abakhelwe ngaphakathi usebenzisa ikhonsoli yewebhu,
  • landa ingobo yomlando ngekhodi,
  • sebenza namakhosombe omphakathi noma angasese we-git.

Lapha simisa imicimbi ebiza umsebenzi. Amasethi emicimbi angase ahluke kubahlinzeki abahlukahlukene.

Ayinaseva kuma-racks

Umhlinzeki wakhe futhi wenza ngokuzenzakalelayo uhlelo lwe-Function as a Service (FaaS) nengqalasizinda yayo:

  1. Ikhodi yokusebenza igcina isendaweni yokugcina ohlangothini lomhlinzeki.
  2. Uma kwenzeka umcimbi, iziqukathi ezinendawo elungiselelwe zifakwa ngokuzenzakalelayo kuseva. Isenzakalo ngasinye sokusebenza sinesitsha saso esisodwa.
  3. Kusukela kusitoreji, umsebenzi uthunyelwa esitsheni, ubalwa, futhi ubuyisela umphumela.
  4. Inani lemicimbi ehambisanayo liyakhula - inani leziqukathi liyakhula. Uhlelo luyakala ngokuzenzakalelayo. Uma abasebenzisi bengafinyeleli umsebenzi, uzobe ungasebenzi.
  5. Umhlinzeki usetha isikhathi sokungenzi lutho seziqukathi - uma phakathi nalesi sikhathi imisebenzi ingaveli esitsheni, siyabhujiswa.

Ngale ndlela sithola i-Serverless ngaphandle kwebhokisi. Sizokhokhela isevisi sisebenzisa imodeli ye-pay-as-you-go futhi kuphela leyo misebenzi esetshenzisiwe, futhi kuphela isikhathi lapho isetshenziswe khona.

Ukwethula onjiniyela kusevisi, abahlinzeki banikeza kufikela ezinyangeni eziyi-12 zokuhlola kwamahhala, kodwa bakhawulele isamba sesikhathi sokubala, inombolo yezicelo ngenyanga, izimali noma ukusetshenziswa kwamandla.

Inzuzo enkulu yokusebenza nomhlinzeki yikhono lokungakhathazeki ngengqalasizinda (amaseva, imishini ebonakalayo, iziqukathi). Ngokwengxenye yayo, umhlinzeki angasebenzisa i-FaaS kokubili esebenzisa ukuthuthukiswa kwayo futhi esebenzisa amathuluzi omthombo ovulekile. Ake sixoxe ngazo ngokuqhubekayo.

Kusukela ohlangothini lomthombo ovulekile

Umphakathi womthombo ovulekile ubusebenza ngokuzikhandla kumathuluzi e-Serverless kule minyaka embalwa edlule. Abadlali bemakethe abakhulu kakhulu nabo baneqhaza ekuthuthukisweni kwezinkundla ezingenaseva:

  • -Google inikeza abathuthukisi ithuluzi labo lomthombo ovulekile - I-Knative. I-IBM, i-RedHat, i-Pivotal ne-SAP ibambe iqhaza ekuthuthukisweni kwayo;
  • IBM usebenze ku-Serverless platform VulaWhisk, okwabe sekuba iphrojekthi ye-Apache Foundation;
  • Microsoft uvule kancane ikhodi yesikhulumi Imisebenzi ye-Azure.

Intuthuko nayo iyaqhubeka maqondana nezinhlaka ezingenaseva. Kubeless и Ukunikezwa kufakwe ngaphakathi kwamaqoqo e-Kubernetes alungiselelwe ngaphambili, I-OpenFaaS isebenza nge-Kubernetes kanye ne-Docker Swarm. Uhlaka lusebenza njengohlobo lwesilawuli - uma lucelwa, lulungiselela indawo yesikhathi sokusebenza ngaphakathi kweqoqo, bese lwethula umsebenzi lapho.

Izinhlaka zishiya indawo yokumisa ithuluzi ukuze lihambisane nezidingo zakho. Ngakho-ke, ku-Kubeless, umthuthukisi angamisa isikhathi sokuvala sokwenza umsebenzi (inani elizenzakalelayo amasekhondi angu-180). I-Fission, emzamweni wokuxazulula inkinga yokuqalisa okubandayo, iphakamisa ukugcina ezinye iziqukathi zisebenza ngaso sonke isikhathi (yize lokhu kuhlanganisa izindleko zokuphelelwa yisikhathi kwensiza). Futhi i-OpenFaaS inikeza isethi yezingqalabutho zakho konke ukunambitheka nombala: i-HTTP, i-Kafka, i-Redis, i-MQTT, i-Cron, i-AWS SQS, i-NATs nezinye.

Imiyalo yokuqalisa ingatholakala emibhalweni esemthethweni yezinhlaka. Ukusebenza nabo kudinga ukuba namakhono athe xaxa kunalapho usebenza nomhlinzeki - lokhu okungenani kuyikhono lokwethula iqoqo le-Kubernetes nge-CLI. Kakhulu, faka amanye amathuluzi omthombo ovulekile (isibonelo, umphathi womugqa we-Kafka).

Kungakhathaliseki ukuthi sisebenza kanjani ne-Serverless - ngomhlinzeki noma sisebenzisa umthombo ovulekile, sizothola izinzuzo eziningi kanye nokubi kwendlela ye-Serverless.

Ngokombono wezinzuzo kanye nokungalungi

I-Serverless ithuthukisa imibono yengqalasizinda yesiqukathi nendlela ye-microservice, lapho amaqembu angasebenza ngemodi yezilimi eziningi ngaphandle kokuboshelwa endaweni eyodwa. Ukwakha uhlelo kwenziwa lula futhi amaphutha kulula ukuwalungisa. I-Microservice architecture ikuvumela ukuthi ungeze ukusebenza okusha ohlelweni ngokushesha kakhulu kunasesimeni sohlelo lokusebenza lwe-monolithic.

I-Serverless inciphisa isikhathi sokuthuthukiswa nakakhulu, ukuvumela unjiniyela ukuthi agxile kuphela kumqondo webhizinisi wohlelo lokusebenza nokubhala ikhodi. Ngenxa yalokho, isikhathi sokumaketha ngentuthuko siyancipha.

Njengebhonasi, sithola ukukala okuzenzakalelayo komthwalo, futhi sikhokhela kuphela izinsiza ezisetshenzisiwe futhi kuphela ngesikhathi lapho zisetshenziswa.

Njenganoma ibuphi ubuchwepheshe, i-Serverless inezimo ezingezinhle.

Isibonelo, ukonakala okunjalo kungase kube isikhathi sokuqala esibandayo (ngokwesilinganiso kufika kusekhondi elingu-1 ezilimini ezifana neJavaScript, Python, Go, Java, Ruby).

Ngakolunye uhlangothi, empeleni, isikhathi sokuqala esibandayo sincike ezintweni eziningi eziguquguqukayo: ulimi lapho umsebenzi ubhalwa khona, inani lemitapo yolwazi, inani lekhodi, ukuxhumana nezinsiza ezengeziwe (imininingwane efanayo noma amaseva wokuqinisekisa). Njengoba unjiniyela elawula lezi ziguquko, angakwazi ukunciphisa isikhathi sokuqalisa. Kodwa ngakolunye uhlangothi, umthuthukisi akakwazi ukulawula isikhathi sokuqalisa sesitsha - konke kuncike kumhlinzeki.

Isiqalo esibandayo singaphenduka isiqalo esifudumele lapho umsebenzi usebenzisa kabusha isiqukathi esiqaliswe umcimbi wangaphambilini. Lesi simo sizovela ezimweni ezintathu:

  • uma amaklayenti evame ukusebenzisa isevisi kanye nenani lezingcingo eziya kuhlelo landa;
  • uma umhlinzeki, inkundla noma uhlaka ikuvumela ukuthi ugcine ezinye iziqukathi zisebenza ngaso sonke isikhathi;
  • uma umthuthukisi enza imisebenzi ngesibali sikhathi (yisho njalo ngemizuzu emi-3).

Kuzinhlelo zokusebenza eziningi, ukuqala okubandayo akuyona inkinga. Lapha udinga ukwakha phezu kohlobo nemisebenzi yesevisi. Ukubambezeleka kokuqala kwesekhondi akuhlali kubalulekile ohlelweni lwebhizinisi, kodwa kungaba bucayi ezinsizeni zezokwelapha. Kulokhu, indlela engenasiphakeli cishe ngeke isafaneleka.

Ububi obulandelayo be-Serverless ukuphila okufushane komsebenzi (isikhathi sokuvala lapho umsebenzi kumele wenziwe).

Kodwa, uma kufanele usebenze ngemisebenzi ehlala isikhathi eside, ungasebenzisa ukwakheka kwe-hybrid - hlanganisa i-Serverless nobunye ubuchwepheshe.

Akuwona wonke amasistimu azokwazi ukusebenza kusetshenziswa i-Serverless scheme.

Ezinye izinhlelo zokusebenza zisazogcina idatha futhi zisho phakathi nokusetshenziswa. Ezinye izakhiwo zizohlala zi-monolithic kanti ezinye izici zizophila isikhathi eside. Nokho (njengobuchwepheshe bamafu kanye neziqukathi), i-Serverless ubuchwepheshe obunekusasa elihle.

Kulokhu, ngithanda ukuqhubekela phambili kahle endabeni yokusebenzisa indlela ye-Serverless.

Kusukela ohlangothini lwesicelo

Ngo-2018, iphesenti lokusetshenziswa kwe-Serverless lakhula kanye nengxenye. Phakathi kwezinkampani esezivele zisebenzisa ubuchwepheshe emisebenzini yazo kukhona izikhondlakhondla zemakethe ezifana ne-Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. Ngasikhathi sinye, udinga ukuqonda ukuthi i-Serverless ayiyona i-panacea, kodwa iyithuluzi lokuxazulula uhla oluthile lwezinkinga:

  • Yehlisa isikhathi sokungasebenzi kwensiza. Asikho isidingo sokuhlala ugcine umshini obonakalayo wezinkonzo ezinezingcingo ezimbalwa.
  • Cubungula idatha ngokuhamba kwesikhathi. Cindezela izithombe, usike ingemuva, shintsha umbhalo wevidiyo, sebenzisa izinzwa ze-IoT, yenza imisebenzi yezibalo.
  • "Namathisela" ezinye izinkonzo ndawonye. Inqolobane ye-Git enezinhlelo zangaphakathi, i-bot yengxoxo ku-Slack noJira nekhalenda.
  • Linganisa umthwalo. Ake sihlolisise lapha.

Ake sithi kunenkonzo edonsa abantu abangu-50. Ngaphansi kwayo kunomshini obonakalayo onehardware ebuthakathaka. Ngezikhathi ezithile, umthwalo wesevisi ukhula kakhulu. Khona-ke i-hardware ebuthakathaka ayikwazi ukubhekana nayo.

Ungafaka ibhalansi ohlelweni oluzosabalalisa umthwalo, ake sithi, ngaphezu kwemishini emithathu ebonakalayo. Kulesi sigaba, asikwazi ukubikezela ngokunembile umthwalo, ngakho-ke sigcina inani elithile lezinsiza kusebenza "esigciniwe." Futhi sikhokha ngokweqile isikhathi sokuphumula.

Esimeni esinjalo, singakwazi ukukhulisa isistimu ngokusebenzisa indlela exubile: sishiya umshini owodwa obonakalayo ngemuva kwesilinganisi somthwalo bese sibeka isixhumanisi ku-Serverless Endpoint ngemisebenzi. Uma umthwalo udlula umkhawulo, isilinganisi siqalisa izimo zokusebenza ezithatha ingxenye yokucubungula isicelo.

Ayinaseva kuma-racks
Ngakho-ke, i-Serverless ingasetshenziswa lapho kudingekile ukucubungula inombolo enkulu yezicelo hhayi kaningi, kodwa ngokujulile. Kulokhu, ukusebenzisa imisebenzi eminingana imizuzu eyi-15 kunenzuzo enkulu kunokugcina umshini obonakalayo noma iseva ngaso sonke isikhathi.

Ngazo zonke izinzuzo ze-serverless computing, ngaphambi kokuqaliswa, kufanele uqale uhlole i-logic yohlelo lokusebenza futhi uqonde ukuthi yiziphi izinkinga ze-Serverless ezingaxazulula esimweni esithile.

I-Serverless ne-Selectel

KwaSelectel sesivele sikuyo umsebenzi owenziwe lula nge-Kubernetes ngephaneli yethu yokulawula. Manje sakha inkundla yethu ye-FaaS. Sifuna onjiniyela bakwazi ukuxazulula izinkinga zabo besebenzisa i-Serverless ngokusebenzisa isixhumi esibonakalayo esilula, esivumelana nezimo.

Uma unemibono yokuthi inkundla ye-FaaS efanele kufanele ibe yini nokuthi ufuna ukuyisebenzisa kanjani i-Serverless kumaphrojekthi akho, yabelana ngayo kumazwana. Sizocabangela izifiso zakho lapho sithuthukisa inkundla.
 
Izinto ezisetshenziswe ku-athikili:

Source: www.habr.com

Engeza amazwana