Pam mae'r chwyldro di-weinydd wedi'i ddatgloi

Pwyntiau allweddol

  • Ers sawl blwyddyn bellach rydym wedi cael addewid y bydd cyfrifiadura di-weinydd (di-weinydd) yn agor cyfnod newydd heb OS penodol i redeg cymwysiadau. Dywedwyd wrthym y byddai strwythur o'r fath yn datrys llawer o broblemau scalability. Mewn gwirionedd, mae popeth yn wahanol.
  • Er bod llawer yn gweld technoleg heb weinydd fel syniad newydd, gellir olrhain ei gwreiddiau yn ôl i 2006 gyda Zimki PaaS a Google App Engine, y ddau ohonynt yn defnyddio pensaernïaeth heb weinydd.
  • Mae pedwar rheswm pam fod y chwyldro di-weinydd wedi arafu, o gefnogaeth iaith raglennu gyfyngedig i faterion perfformiad.
  • Nid yw cyfrifiadura di-weinydd yn gwbl ddiwerth. Ymhell oddi wrtho. Fodd bynnag, ni ddylid eu hystyried yn lle gweinyddwyr yn uniongyrchol. Ar gyfer rhai cymwysiadau, gallant fod yn offeryn defnyddiol.

Mae'r gweinydd wedi marw, hir fyw y gweinydd!

Dyma gri frwydr ymlynwyr y chwyldro di-weinydd. Mae cipolwg cyflym ar wasg y diwydiant dros yr ychydig flynyddoedd diwethaf yn ddigon i ddod i'r casgliad bod y model gweinydd traddodiadol wedi marw ac y byddwn i gyd mewn ychydig flynyddoedd yn defnyddio saernïaeth heb weinydd.

Fel y mae unrhyw un yn y diwydiant yn gwybod, ac fel y nodwyd gennym hefyd yn ein herthygl ar cyflwr cyfrifiadura di-weinydd, mae hyn yn anghywir. Er gwaethaf llawer o erthyglau ar rinweddau chwyldro di-weinydd, ni chymerodd le. Yn wir, astudiaethau diweddar yn dangosy gall y chwyldro hwn fod wedi dod i ben.

Mae rhai o'r addewidion ar gyfer modelau di-weinydd yn sicr wedi dod yn wir, ond nid pob un. Nid pawb.

Yn yr erthygl hon rwyf am ystyried y rhesymau dros y cyflwr hwn. Pam mae diffyg hyblygrwydd modelau di-weinydd yn dal i fod yn rhwystr i'w mabwysiadu'n ehangach, er eu bod yn parhau i fod yn ddefnyddiol mewn amgylchiadau penodol, wedi'u diffinio'n dda.

Yr hyn a addawodd medruswyr cyfrifiadura di-weinydd

Cyn symud ymlaen at broblemau cyfrifiadura di-weinydd, gadewch i ni weld beth oedd yn rhaid iddynt ei ddarparu. Addewidion chwyldro di-weinydd yn niferus ac - ar adegau - yn uchelgeisiol iawn.

I'r rhai sy'n anghyfarwydd â'r term, dyma ddiffiniad byr. Mae cyfrifiadura di-weinydd yn diffinio pensaernïaeth lle mae cymwysiadau (neu rannau o gymwysiadau) yn rhedeg ar alw mewn amgylcheddau amser rhedeg sydd fel arfer yn cael eu cynnal o bell. Yn ogystal, gellir cynnal systemau di-weinydd. Mae adeiladu systemau cadarn heb weinydd wedi bod yn bryder mawr i weinyddwyr systemau a chwmnïau SaaS dros yr ychydig flynyddoedd diwethaf, oherwydd (honnir) mae'r bensaernïaeth hon yn cynnig nifer o fanteision allweddol dros y model cleient / gweinydd "traddodiadol":

  1. Nid yw modelau di-weinydd yn ei gwneud yn ofynnol i ddefnyddwyr gynnal eu systemau gweithredu eu hunain na hyd yn oed adeiladu cymwysiadau sy'n gydnaws â systemau gweithredu penodol. Yn lle hynny, mae datblygwyr yn creu cod a rennir, yn ei uwchlwytho i lwyfan heb weinydd, a'i wylio'n rhedeg.
  2. Mae adnoddau mewn fframweithiau di-weinydd fel arfer yn cael eu bilio fesul munud (neu hyd yn oed eiliadau). Mae hyn yn golygu mai dim ond am yr amser y maent yn gweithredu'r cod y mae cleientiaid yn ei dalu. Mae hyn yn cymharu'n ffafriol â'r cwmwl VM traddodiadol, lle mae'r peiriant yn segur y rhan fwyaf o'r amser, ond mae'n rhaid i chi dalu amdano.
  3. Datryswyd problem scalability hefyd. Mae adnoddau mewn fframweithiau di-weinydd yn cael eu neilltuo'n ddeinamig fel y gall y system ymdopi'n hawdd â chynnydd sydyn yn y galw.

Yn fyr, mae modelau heb weinydd yn darparu datrysiadau hyblyg, cost isel, graddadwy. Rwy'n synnu na wnaethom feddwl am y syniad hwn yn gynharach.

Ydy hwn yn syniad newydd mewn gwirionedd?

Mewn gwirionedd nid yw'r syniad yn newydd. Mae'r cysyniad o ganiatáu i ddefnyddwyr dalu dim ond am yr amser y mae'r cod yn rhedeg mewn gwirionedd wedi bod o gwmpas ers iddo gael ei gyflwyno o dan Zimki PaaS yn 2006, a thua'r un pryd, lluniodd Google App Engine ateb tebyg iawn.

Mewn gwirionedd, mae'r hyn rydyn ni'n ei alw nawr yn fodel “di-weinydd” yn hŷn na llawer o'r technolegau a elwir bellach yn “gwmwl brodorol” sy'n darparu bron yr un peth. Fel y nodwyd, dim ond estyniad o'r model busnes SaaS sydd wedi bod o gwmpas ers degawdau yw modelau heb weinydd yn eu hanfod.

Mae'n werth cydnabod hefyd nad yw'r model di-weinydd yn bensaernïaeth FaaS, er bod cysylltiad rhwng y ddau. Yn ei hanfod, FaaS yw'r rhan gyfrifiadurol-ganolog o bensaernïaeth heb weinydd, ond nid yw'n cynrychioli'r system gyfan.

Felly pam yr holl hype hwn? Wel, wrth i gyfradd treiddiad Rhyngrwyd mewn gwledydd sy'n datblygu barhau i neidio, felly hefyd y galw am adnoddau cyfrifiadurol. Er enghraifft, nid oes gan lawer o wledydd sydd â sectorau e-fasnach sy'n tyfu'n gyflym y seilwaith cyfrifiadurol ar gyfer cymwysiadau ar y llwyfannau hyn. Dyma lle mae platfformau heb weinydd cyflogedig yn dod i mewn.

Problemau gyda Modelau Di-weinydd

Y dal yw bod modelau heb weinydd wedi … problemau. Peidiwch â fy nghael yn anghywir: nid wyf yn dweud eu bod yn ddrwg ynddynt eu hunain nac yn rhoi gwerth sylweddol i rai cwmnïau o dan rai amgylchiadau. Ond y prif honiad y "chwyldro" - y bydd y bensaernïaeth serverless gyflym disodli'r un traddodiadol - byth yn dwyn ffrwyth.

Dyna pam.

Cefnogaeth gyfyngedig i ieithoedd rhaglennu

Mae'r rhan fwyaf o lwyfannau di-weinydd yn caniatáu i gymwysiadau a ysgrifennwyd mewn ieithoedd penodol redeg yn unig. Mae hyn yn cyfyngu'n ddifrifol ar hyblygrwydd a chymhwysedd y systemau hyn.

Ystyrir bod llwyfannau di-weinydd yn cynnal y mwyafrif o ieithoedd mawr. Mae Swyddogaethau AWS Lambda ac Azure hefyd yn darparu deunydd lapio ar gyfer rhedeg cymwysiadau a swyddogaethau mewn ieithoedd heb eu cefnogi, er bod hyn yn aml yn dod ar gost perfformiad. Felly i'r rhan fwyaf o sefydliadau, nid yw'r cyfyngiad hwn fel arfer yn fargen fawr. Ond dyma y peth. Un o fanteision modelau di-weinydd i fod yw y gellir defnyddio rhaglenni aneglur na ddefnyddir yn aml yn rhatach oherwydd dim ond am yr amser y maent yn rhedeg y byddwch yn talu. Ac mae rhaglenni aneglur, na ddefnyddir yn aml yn cael eu hysgrifennu mewn... ieithoedd rhaglennu aneglur, na ddefnyddir yn aml.

Mae hyn yn tanseilio un o fanteision allweddol y model di-weinydd.

Rhwymo i werthwr

Yr ail broblem gyda llwyfannau di-weinydd, neu o leiaf y ffordd y cânt eu gweithredu ar hyn o bryd, yw nad ydynt fel arfer yn edrych fel ei gilydd ar y lefel weithredol. Nid oes bron unrhyw safoni o ran swyddogaethau ysgrifennu, lleoli a rheoli. Mae hyn yn golygu bod mudo nodweddion o un platfform i'r llall yn cymryd llawer o amser.

Nid y nodweddion cyfrifiannol yw'r rhan anoddaf o symud i fodel heb weinydd, sydd fel arfer yn ddarnau o god yn unig, ond sut mae cymwysiadau'n cyfathrebu â systemau cysylltiedig megis storio gwrthrychau, rheoli hunaniaeth, a chiwiau. Gellir symud swyddogaethau, ond ni all gweddill y cais. Dyma'r union gyferbyn â'r llwyfannau rhad a hyblyg a addawyd.

Mae rhai yn dadlau bod modelau heb weinydd yn newydd ac nad oes amser wedi bod i safoni sut maen nhw'n gweithio. Ond nid ydynt mor newydd â hynny, fel y nodais uchod, ac mae llawer o dechnolegau cwmwl eraill megis cynwysyddion eisoes wedi dod yn llawer mwy cyfleus oherwydd datblygiad a mabwysiad eang safonau da.

Cynhyrchiant

Mae perfformiad cyfrifiadurol llwyfannau di-weinydd yn anodd ei fesur, yn rhannol oherwydd bod gwerthwyr yn tueddu i gadw gwybodaeth yn gyfrinachol. Mae'r rhan fwyaf yn dadlau bod nodweddion ar lwyfannau anghysbell heb weinydd yn rhedeg yr un mor gyflym ag y maent ar weinyddion mewnol, ac eithrio rhai materion hwyrni anochel.

Fodd bynnag, mae peth tystiolaeth yn awgrymu fel arall. Mae swyddogaethau nad ydynt wedi rhedeg ar lwyfan penodol o'r blaen, neu nad ydynt wedi rhedeg ers peth amser, yn cymryd peth amser i'w cychwyn. Mae hyn yn debygol oherwydd bod eu cod wedi'i drosglwyddo i ryw gyfrwng storio llai hygyrch, er - fel gyda meincnodau - ni fydd y rhan fwyaf o werthwyr yn dweud wrthych am drosglwyddo data.

Wrth gwrs, mae yna sawl ffordd o fynd o gwmpas hyn. Un yw gwneud y gorau o nodweddion ar gyfer pa iaith cwmwl bynnag y mae eich platfform di-weinydd yn rhedeg arno, ond mae hynny'n tanseilio rhywfaint ar yr honiad bod y llwyfannau hyn yn "ystwyth".

Dull arall yw sicrhau bod rhaglenni sy'n hanfodol i berfformiad yn rhedeg yn rheolaidd i'w cadw'n "ffres". Mae'r ail ddull hwn, wrth gwrs, ychydig yn groes i'r honiad bod platfformau heb weinydd yn fwy cost-effeithiol oherwydd dim ond am yr amser y mae eich rhaglenni'n rhedeg y byddwch chi'n talu. Mae darparwyr cwmwl wedi cyflwyno ffyrdd newydd o leihau lansiadau oer, ond mae llawer ohonynt yn gofyn am "raddfa i un", sy'n tanseilio gwerth gwreiddiol FaaS.

Gellir mynd i'r afael yn rhannol â'r broblem cychwyn oer trwy redeg systemau heb weinydd yn fewnol, ond daw hyn ar ei gost ei hun ac mae'n parhau i fod yn opsiwn arbenigol ar gyfer timau sydd ag adnoddau da.

Ni allwch redeg cymwysiadau cyfan

Yn olaf, efallai mai'r rheswm pwysicaf pam na fydd pensaernïaeth heb weinydd yn disodli modelau traddodiadol yn fuan yw na allant (yn gyffredinol) redeg cymwysiadau cyfan.

Yn fwy manwl gywir, mae'n anymarferol o safbwynt cost. Mae'n debyg na ddylai eich monolith llwyddiannus gael ei droi'n set o bedwar dwsin o swyddogaethau wedi'u cysylltu gan wyth porth, deugain ciw, a dwsin o achosion cronfa ddata. Am y rheswm hwn, mae di-weinydd yn fwy addas ar gyfer datblygiadau newydd. Ni all bron unrhyw gais presennol (pensaernïaeth) gael ei drosglwyddo. Gallwch chi fudo, ond mae'n rhaid i chi ddechrau o'r dechrau.

Mae hyn yn golygu, yn y mwyafrif helaeth o achosion, bod platfformau heb weinydd yn cael eu defnyddio fel cyflenwad i weinyddion pen ôl i gyflawni tasgau cyfrifiadurol dwys. Mae hyn yn wahanol iawn i'r ddau fath arall o gyfrifiadura cwmwl, cynwysyddion a pheiriannau rhithwir, sy'n cynnig ffordd gyfannol i berfformio cyfrifiadura o bell. Mae hyn yn dangos un o'r heriau o symud o ficrowasanaethau i systemau di-weinydd.

Wrth gwrs, nid yw hyn bob amser yn broblem. Gall y gallu i ddefnyddio adnoddau cyfrifiadurol enfawr o bryd i'w gilydd heb brynu eich caledwedd eich hun ddod â manteision gwirioneddol a pharhaol i lawer o sefydliadau. Ond os yw rhai cymwysiadau ar weinyddion mewnol ac eraill ar bensaernïaeth cwmwl heb weinydd, yna mae rheolaeth yn mynd i lefel newydd o gymhlethdod.

Hir oes y chwyldro?

Er gwaethaf yr holl gwynion hyn, nid wyf yn gwrthwynebu atebion heb weinydd fel y cyfryw. Yn onest. Dim ond bod angen i ddatblygwyr ddeall - yn enwedig os ydynt yn archwilio modelau heb weinydd am y tro cyntaf - nad yw'r dechnoleg hon yn disodli gweinyddwyr yn uniongyrchol. Yn lle hynny, edrychwch ar ein hawgrymiadau ac adnoddau ar adeiladu cymwysiadau di-weinydd a phenderfynu ar y ffordd orau o gymhwyso'r model hwn.

Ffynhonnell: hab.com

Ychwanegu sylw