Server-la'aan on racks

Server-la'aan on racks
Server-la'aanta maaha wax ku saabsan maqnaanshaha jireed ee server-yada. Kani maaha weel dilaaye ama isbeddel gudub. Tani waa hab cusub oo lagu dhisayo nidaamyada daruuraha. Maqaalka maanta waxaan ku taaban doonaa naqshadeynta codsiyada Serverless, aynu aragno doorka adeeg bixiyaha adeegga server-ka iyo mashaariicda il furan. Ugu dambeyntii, aan ka hadalno arrimaha isticmaalka Serverless.

Waxaan rabaa inaan qoro qayb server ah oo codsi ah (ama xitaa dukaanka internetka). Tani waxay noqon kartaa wada sheekaysi, adeeg daabacaadda nuxurka, ama dheellitirka culeyska. Xaalad kasta, waxaa jiri doona madax-xanuun badan: waa inaad diyaarisaa kaabayaasha, go'aaminta ku-tiirsanaanta codsiga, oo aad ka fikirto nidaamka hawlgalka martida loo yahay. Markaa waxaad u baahan doontaa inaad cusboonaysiiso qaybo yaryar oo aan saamaynaynin hawlgalka inta ka hadhay monolith. Hagaag, yeynan iloobin miisaanka hoostiisa.

Maxaa dhacaya haddii aan qaadno weelasha ephemeral, kuwaas oo ku-tiirsanaanta loo baahan yahay horay loo sii rakibay, iyo weelasha laftooda ayaa ka go'doonsan midba midka kale iyo OS-ga martida loo yahay? Waxaan u qaybin doonaa monolith-ka adeeg-yaro, mid kasta oo ka mid ah waa la cusboonaysiin karaa oo la miisaami karaa si ka madax bannaan kuwa kale. Adiga oo dhigaya koodhka weelkan oo kale, waxaan ku socodsiin karaa kaabayaal kasta. Durba ka sii fiican.

Maxaa dhacaya haddii aadan rabin inaad hagaajiso weelasha? Ma rabo inaan ka fikiro cabirida codsiga. Ma rabo in aan bixiyo weelasha shaqo-la'aanta ah marka culeyska saaran adeeggu uu yar yahay. Waxaan rabaa inaan kood qoro Diirada saar macquulka ganacsiga oo u keen badeecooyinka suuqa xawliga iftiinka.

Fikradaha noocan oo kale ah ayaa ii horseeday kombuyuutar aan server lahayn. Serverless kiiskan macnaheedu waa ma aha maqnaanshaha jireed ee server-yada, laakiin maqnaanshaha madax xanuunka maareynta kaabayaasha.

Fikradda ayaa ah in macquulka codsiga loo kala qaybiyay hawlo madaxbannaan. Waxay leeyihiin qaab-dhismeedka dhacdada. Hawl kastaa waxay qabataa hal "microtask". Waxa kaliya ee looga baahan yahay horumariyaha ayaa ah inuu ku shubo hawlaha konsole-ka uu bixiyo bixiyaha daruuraha oo uu ku xidho ilaha dhacdada. Koodhka waxaa lagu fulin doonaa dalabka weel si toos ah loo diyaariyey, waxaana kaliya oo bixin doona wakhtiga fulinta.

Aynu aragno habka horumarinta codsigu hadda u ekaan doono.

Laga soo bilaabo dhinaca horumariyaha

Horaan waxaan bilownay inaan ka hadalno codsiga dukaanka internetka. Habka dhaqameed, macquulka ugu weyn ee nidaamka waxaa lagu sameeyaa codsi monolithic ah. Iyo server-ka arjiga leh ayaa si joogto ah u shaqeeya, xitaa haddii aysan jirin wax culeys ah.

Si aad ugu guurto server-la'aan, waxaan u jebineynaa codsiga microtasks. Mid kasta oo iyaga ka mid ah ayaan u qoraynaa shaqadayada. Shaqadu waa ka madax banaan yihiin midba midka kale mana kaydiyaan macluumaadka gobolka (dal la'aan). Xitaa waxaa laga yaabaa in lagu qoro luqado kala duwan. Haddii mid iyaga ka mid ah "dhaco", codsiga oo dhan ma joogsan doono. Qaab dhismeedka codsigu wuxuu u ekaan doonaa sidan:

Server-la'aan on racks
Kala qaybinta hawlaha Serverless waxay la mid tahay la shaqaynta adeegaha yar yar. Laakiin adeeg-yaraha ayaa qaban kara hawlo badan, shaqaduna waa inay sida ugu habboon u qabato mid. Aynu qiyaasno in hawshu tahay in la ururiyo tirakoobyada oo aan soo bandhigno codsiga isticmaalaha. Habka adeeg-yaraha, hawl waxaa qabta hal adeeg oo leh laba qodob oo laga soo galo: qorista iyo akhrinta. Xisaabinta server-la'aanta, kuwani waxay noqon doonaan laba hawlood oo kala duwan oo aan xidhiidh la lahayn midba midka kale. Horumariyuhu waxa uu kaydiyaa agabka xisaabinta haddii, tusaale ahaan, tirokoobyada la cusboonaysiiyo in ka badan inta la soo dejiyo.

Hawlaha server-la'aanta ah waa in lagu fuliyaa waqti gaaban (wakhti-dhaaf), kaas oo uu go'aamiyo bixiyaha adeegga. Tusaale ahaan, AWS wakhtigu waa 15 daqiiqo. Tani waxay ka dhigan tahay in hawlaha muddada dheer ay tahay in la beddelo si loo waafajiyo shuruudaha - tani waa waxa ka sooca Serverless teknoolajiyada kale ee caanka ah maanta (konteenarada iyo Platform ahaan Adeeg ahaan).

Waxaan u xilsaarnaa dhacdo hawl kasta. Dhacdo waa kicinta fal:

Dhacdada
Ficilka ay shaqadu qabato

Sawirka badeecada ayaa la soo galiyay kaydka
Cadaadi sawirka oo soo rar hagaha

Ciwaanka bakhaarka jir ahaaneed ayaa lagu cusboonaysiiyay kaydka
Ku shub meel cusub khariidado

Macmiilka ayaa iska bixinaya alaabta
Bilow habaynta lacag bixinta

Dhacdooyinka waxay noqon karaan codsiyada HTTP, xogta qulqulka, safafka fariimaha, iyo wixii la mid ah. Ilaha dhacdooyinka waa isbeddelada ama dhacdooyinka xogta. Intaa waxaa dheer, hawlaha waxaa kicin kara waqti-qaade.

Naqshadeynta waa la soo shaqeeyay, codsiguna wuxuu ku dhawaaday inuu noqdo server-la'aan. Marka xigta waxaan aadeynaa adeeg bixiyaha.

Laga soo bilaabo dhinaca bixiyaha

Caadi ahaan, xisaabinta server-la'aanta waxaa bixiya adeeg bixiyayaasha daruuraha. Waxaa loo yaqaan si kala duwan: Hawlaha Azure, AWS Lambda, Google Cloud Functions, IBM Cloud Functions.

Waxaan u isticmaali doonaa adeegga iyada oo loo marayo console bixiyaha ama koontada gaarka ah. Koodhka shaqada waxaa lagu soo dejisan karaa mid ka mid ah siyaabaha soo socda:

  • ku qor koodka tifaftirayaasha gudaha ku dhex jira adiga oo isticmaalaya console-ka webka,
  • soo deji kaydka koodka,
  • la shaqee xarumaha guud ama kuwa gaarka ah.

Halkan waxaan ku dejinay dhacdooyinka u yeera shaqada. Qaybaha dhacdooyinku way ku kala duwanaan karaan bixiyayaasha kala duwan.

Server-la'aan on racks

Bixiyuhu waxa uu dhisay oo otomaatig ka dhigay nidaamka Function as a Service (FaaS) ee kaabayaashiisa:

  1. Koodhka shaqadu wuxuu ku dhamaanayaa kaydinta dhinaca bixiyaha.
  2. Marka ay dhacdo dhacdo, weelasha leh jawi diyaarsan ayaa si toos ah loogu dhejiyaa server-ka. Tusaale kasta oo shaqo wuxuu leeyahay weel gooni ah oo gooni ah.
  3. Laga soo bilaabo kaydinta, shaqada waxaa loo diraa weelka, la xisaabiyaa, oo soo celiyaa natiijada.
  4. Tirada dhacdooyinka isku midka ah ayaa sii kordhaya - tirada weelasha ayaa sii kordhaya. Nidaamku si toos ah ayuu u miisaamaa. Haddii isticmaalayaashu aysan geli karin shaqada, waxay noqon doontaa mid aan shaqaynayn.
  5. Bixiyuhu wuxuu dejiyaa wakhtiga aan shaqayn ee weelasha - haddii inta lagu jiro wakhtigan hawluhu aysan ka muuqan weelka, waa la burburiyaa.

Sidan ayaanu uga helnaa Serverless sanduuqa. Waxaanu ku bixin doonaa adeega anagoo adeegsanayna qaabka lacag bixinta-sida-aad-go iyo kaliya shaqooyinka la isticmaalay, iyo kaliya wakhtiga la isticmaalay.

Si loo soo bandhigo horumariyeyaasha adeegga, bixiyeyaasha ayaa bixiya ilaa 12 bilood oo tijaabo bilaash ah, laakiin xaddid wadarta wakhtiga xisaabinta, tirada codsiyada bishii, lacagaha ama isticmaalka tamarta.

Faa'iidada ugu weyn ee la shaqeynta bixiyaha waa awoodda inaadan ka welwelin kaabayaasha (servers, mashiinnada farsamada, weelasha). Dhankeeda, bixiyaha ayaa hirgelin kara FaaS labadaba isagoo isticmaalaya horumarkiisa iyo adeegsiga agabka il furan. Aynu ka sii hadalno iyaga.

Laga soo bilaabo dhinaca isha furan

Bulshada isha furan ayaa si firfircoon uga shaqaynaysay agabka Server-laawayaasha labadii sano ee la soo dhaafay. Ciyaartoyda suuqa ugu weyn ayaa sidoo kale gacan ka geysta horumarinta goobo aan server lahayn:

  • Google waxay siisaa horumariyayaasha qalabkooda il furan - Midnimo. IBM, RedHat, Pivotal iyo SAP ayaa ka qaybqaatay horumarinteeda;
  • IBM ka shaqeeyay madal Serverless ah Fur Whisk, kaas oo markaas noqday mashruuc ka mid ah Apache Foundation;
  • Microsoft qayb ka mid ah furay code goobta Hawlaha Azure.

Horumarintu waxay sidoo kale ku socotaa jihada qaab-dhismeedka server-la'aanta. Kubeless ΠΈ Firxad la geeyey gudaha kooxihii hore loo sii diyaariyey ee Kubernetes, FurFaaS Waxay la shaqeysaa Kubernetes iyo Docker Swarm labadaba. Qaabku wuxuu u shaqeeyaa sidii nooc ka mid ah kontaroolayaasha - marka la codsado, waxay diyaarisaa jawi runtime gudaha kooxda, ka dibna halkaas ayuu hawl ka bilaabaa.

Qaab-dhismeedyadu waxay u baneeyaan meel ay ku habeeyaan aaladda si ay ugu habboonaato baahiyahaaga. Marka, gudaha Kubeless, horumariye ayaa habeyn kara waqtiga fulinta shaqada (qiimaha caadiga ah waa 180 ilbiriqsi). Fission, oo isku dayaya in lagu xalliyo dhibaatada bilawga qabow, waxay soo jeedinaysaa in weelasha qaarkood ay socdaan mar kasta (inkasta oo tani ay keenayso kharashyada wakhtiga dhimista ee kheyraadka). OpenFaaS waxay bixisaa kiciyeyaal dhadhan iyo midab kasta: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs iyo kuwa kale.

Tilmaamaha bilaabista waxaa laga heli karaa dukumeentiyada rasmiga ah ee qaab-dhismeedka. La shaqaynta iyaga waxa ay u baahantahay in aad yeelato xirfado ka badan marka loo eego marka aad la shaqaynayso bixiye – tani waa ugu yaraan awooda lagu bilaabi karo kooxda Kubernetes iyada oo loo sii marayo CLI. Ugu badnaan, ku dar qalabyada kale ee furan (tusaale, maamulaha safka Kafka).

Iyadoo aan loo eegin sida aan ula shaqeyno Serverless - iyada oo loo marayo bixiyaha ama isticmaalka il furan, waxaan heli doonaa tiro faa'iidooyin iyo faa'iido darrooyin ah habka Serverless.

Marka laga eego dhinaca faa'iidada iyo khasaaraha

Serverless waxay horumarisaa fikradaha kaabayaasha weelka iyo habka adeeg-yaraha, kaas oo kooxuhu ay ku shaqeyn karaan qaab luqado badan ah iyada oo aan lagu xidhin hal madal. Dhismaha nidaamka waa la fududeeyay khaladaadkana way fududahay in la saxo. Naqshadeynta Microservice waxay kuu ogolaaneysaa inaad ku darto shaqeyn cusub nidaamka si ka dhaqso badan marka loo eego kiiska codsiga monolithic.

Server-la'aanta waxay yaraynaysaa wakhtiga horumarka xitaa in ka sii badan, u ogolaanaya horumariyaha inuu diirada saaro kaliya macquulnimada ganacsiga iyo koodka codsiga. Natiijo ahaan, wakhtiga suuqgeynta wax soo saarka ayaa yaraada.

Gunno ahaan, waxaan helnaa miisaan toos ah ee culeyska, waxaanan bixinaa kaliya agabka la isticmaalo iyo kaliya xiliga la isticmaalayo.

Sida tignoolajiyada kasta, Serverless waxay leedahay faa'iidooyin.

Tusaale ahaan, khasaarahan oo kale wuxuu noqon karaa wakhtiga bilowga qabow (celcelis ahaan ilaa 1 ilbiriqsi ee luqadaha sida JavaScript, Python, Go, Java, Ruby).

Dhinaca kale, xaqiiqda, wakhtiga bilawga qabowgu wuxuu ku xiran yahay doorsoomayaal badan: luqadda shaqada lagu qoray, tirada maktabadaha, qadarka koodka, isgaarsiinta leh ilo dheeraad ah (databases ama server-yada aqoonsiga). Maadaama horumariyuhu uu koontaroolo doorsoomayaashan, wuxuu yarayn karaa wakhtiga bilowga. Laakiin dhinaca kale, horumariyahu ma xakamayn karo wakhtiga bilawga ah ee weelka - dhammaan waxay kuxirantahay bixiyaha.

Bilawga qabow waxa uu isu rogi karaa bilow diiran marka hawshu dib u isticmaasho weel ay bilawday dhacdo hore. Xaaladdani waxay ku soo bixi doontaa saddex xaaladood:

  • haddii macaamiishu si joogto ah u isticmaalaan adeegga oo tirada wicitaannada shaqada ay korodho;
  • haddii bixiyaha, madal ama qaab-dhismeedku kuu oggolaado inaad haysatid weelasha qaarkood oo socda mar kasta;
  • haddii horumariyahu uu ku shaqeeyo saacada (sheeg 3dii daqiqiba mar).

Codsiyo badan, bilow qabow dhib maaha. Halkan waxaad u baahan tahay inaad ku dhisto nooca iyo hawlaha adeegga. Daahitaanka bilawga ilbiriqsi had iyo jeer maaha mid muhiim u ah codsiga ganacsiga, laakiin waxay noqon kartaa mid muhiim u ah adeegyada caafimaadka. Xaaladdan oo kale, habka server-la'aanta ah waxay u badan tahay inuusan ku habboonayn.

Khasaaraha soo socda ee Serverless waa cimriga gaaban ee shaqada (waqti dhammaatay oo ay tahay in shaqada la fuliyo).

Laakiin, haddii ay tahay inaad la shaqeyso hawlo cimri dheer, waxaad isticmaali kartaa qaab-dhismeedka isku-dhafka ah - ku dar Serverless iyo tignoolajiyad kale.

Nidaamyada oo dhan ma awoodi doonaan inay ku shaqeeyaan nidaamka Serverless.

Codsiyada qaar ayaa wali kaydin doona xogta oo sheegi doona inta lagu jiro fulinta. Dhismayaasha qaarkood waxay ahaan doonaan monolithic iyo sifooyinka qaarkood waxay ahaan doonaan kuwo cimri dheer. Si kastaba ha ahaatee (sida teknoolajiyada daruuriga ah iyo ka dibna weelasha), Serverless waa tignoolajiyada mustaqbal weyn leh.

Sidan, waxaan jeclaan lahaa inaan si habsami leh ugu gudbo arrinta adeegsiga habka Serverless.

Laga soo bilaabo dhinaca codsiga

Sannadka 2018, boqolkiiba isticmaalka Serverless koray hal jeer iyo badh. Waxaa ka mid ah shirkadaha horay u hirgeliyay tignoolajiyada adeegyadooda, sida shirkadaha waaweyn ee suuqa sida Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. Isla mar ahaantaana, waxaad u baahan tahay inaad fahamto in Serverless uusan ahayn daawo, laakiin aalad lagu xalliyo dhibaatooyin kala duwan:

  • Iska yaree kheyraadka wakhtiga. Looma baahna in si joogto ah loo haysto mishiin dalwaddii adeegyada leh wicitaano yar.
  • Habka xogta duulista. Cadaadi sawirada, jar asalka, beddel codaynta fiidiyowga, la shaqeyso dareemayaasha IoT, samee hawlgallo xisaabeed.
  • "Koollo" wadajir ah. Kaydka Git oo wata barnaamijyo gudaha ah, ku sheekee bot gudaha Slack leh Jira iyo kalandarka.
  • Isku dheelli tirka culeyska. Aan si hoose u eegno halkan.

Aynu sheegno inuu jiro adeeg soo jiita 50 qof. Hoostiisa waxaa ku yaal mashiinka farsamada gacanta oo leh qalab daciif ah. Waqti ka waqti, culeyska adeegga ayaa si weyn u kordha. Markaa qalabka daciifka ahi ma xamili karo.

Waxaad ku dari kartaa dheelitiriye nidaamka qaybin doona culayska, dheh, in ka badan saddex mashiin. Marxaladdan, si sax ah uma saadaalin karno culeyska, sidaas darteed waxaan ku haynaa qaddar gaar ah oo agab ah oo ku socda "kaydka." Oo waxaanu bixinaa lacag dheeraad ah wakhtiga dhimista.

Xaaladdan oo kale, waxaan ku wanaajin karnaa nidaamka iyada oo loo marayo hab isku dhafan: waxaan ka tagnaa hal mashiinka farsamada gadaasha miisaanka culeyska waxaanan ku dhejineynaa isku xirka Serverless Endpoint oo leh hawlo. Haddii rarku dhaafo xadka, miisaan-ilaaliyehu waxa uu bilaabayaa tusaalooyin hawleed oo la wareegaya qayb ka mid ah habaynta codsiga.

Server-la'aan on racks
Sidaa darteed, Serverless waxaa loo isticmaali karaa halka ay lagama maarmaan tahay in laga shaqeeyo tiro badan oo codsiyo ah oo aan marar badan ahayn, laakiin si degdeg ah. Xaaladdan oo kale, ku shaqeynta dhowr hawlood 15 daqiiqo ayaa ka faa'iido badan ilaalinta mashiinka farsamada ama serverka mar kasta.

Dhammaan faa'iidooyinka xisaabinta server-la'aanta, ka hor intaan la hirgelin, waa inaad marka hore qiimeysaa macquulka codsiga oo aad fahamto dhibaatooyinka Serverless xalin karo xaalad gaar ah.

Serverless iyo Selectel

Selectel mar hore ayaan joognaa shaqada la fududeeyay ee Kubernetes iyada oo loo marayo guddiga xakamaynta. Hadda waxaan dhiseynaa madal FaaS noo gaar ah. Waxaan rabnaa horumariyayaashu inay awoodaan inay xalliyaan dhibaatooyinkooda iyagoo isticmaalaya Serverless iyada oo loo marayo interface ku habboon oo dabacsan.

Haddii aad hayso fikrado ku saabsan waxa ugu habboon ee madal FaaS ay tahay inay noqoto iyo sida aad rabto inaad u isticmaasho Serverless mashaariicdaada, la wadaag faallooyinka. Waxaan ku xisaabtami doonaa rabitaankaaga markaad horumarinayso madal.
 
Qalabka loo isticmaalo maqaalka:

Source: www.habr.com

Add a comment