'N Algemene wanopvatting wat mense het nadat hulle na die woord' serverless 'geluister het, is dat dit nie uit 'n bediener bestaan ​​nie.
Wel, dit is glad nie die geval nie.
Bedienerloos beteken bloot dat u nie die bediener hoef te bestuur nie. In plaas daarvan om u bediener te bestuur en te onderhou, kan u die funksies benut.
In 'n ander woord, Bedienerlose argitektuur beteken minder bediener.
Sou dit nie wonderlik wees as u al u tyd daaraan kon wy om 'n beter toepassing te bou sonder om na die bedieners te sorg nie? Dit is wanneer bedienerloos u kan help.
Hierdie artikel handel oor al die belangrike onderwerpe wat u moet ken, van alles wat op die bediener na verskillende kaders is, die voordele daarvan en waarom u omgee..
1 Beginsels van bedieningsloos
2.1 Funksie as 'n diens (FaaS)
2.2 Agtergrond as 'n diens (BaaS)
3 Bedieningslose raamwerke
3.1 Voordele van Going Serverless
3.2 Nadele van bedienerloos
4 Toekoms van bedienerloos
Beginsels van bedieningsloos
Bedieningslose infrastruktuur bevat verskillende beginsels wat soos volg uiteengesit word:
Implementeer derdeparty-dienste: Verskeie verkopers dien as derdeparty-dienste.
Die skep van 'n robuuste front-end: Deur funksies aan die voorkant uit te voer deur die app-raamwerk aan die kant van die kliënt, help dit om koste te verminder deur funksionering en uitvoering te verminder.
Voer prestasietoetse uit: Die uitvoering van funksies wat 'n bepaalde diens vertraag, is noodsaaklik om 'n goeie gebruikerservaring te verseker.
Eenmalige funksies: Aangesien funksies slegs vir 'n beperkte periode voortduur, word enkeldoelkodes verkies om funksies te ontwikkel.
Bou sekuriteitsmeganismes: Sekuriteit moet by die API en die FaaS-laag versorg word. Hierdie sekuriteitskenmerke sluit toegangsbeheer, kodering en verifikasie in.
Ontwerp 'n drukgebaseerde argitektuur: Dit verseker dat gebruikersinvoer nie nodig is vir 'n stel gebeure nie.
As u 'n program bou, wil u hê dat dit 'n aangename ervaring vir die gebruikers sal skep.
Byvoorbeeld, u wil hê dat u program 'n onmiddellike funksie vir die deel van sosiale media bied, sodat dit in-app-transaksies kan maak en die oplaai van prente en video's eenvoudiger en vinniger kan maak.
Om dit alles moontlik te maak, benodig die toepassing baie back-end-kodes wat die aksies verwerk en uitvoer, soos in-app-klik, oplaai van foto's, van een bladsy na 'n ander skuif.
Die bestuur van die argitektuur om hierdie back-end-kode aan te bied en te bestuur, verg baie bedieners en om verskillende OS-opdaterings te hanteer, om nie die veiligheid te vergeet.
Daarom vereis ons dat die een of ander verkoper die bediener vir ons moet bestuur, sodat ons bedienerloos kan raak.
Voordat ons verder gaan met hierdie verskaffers, is dit vir ons belangrik om die twee toonaangewende wolkrekenaardienste te leer ken wat betrokke is by bedienerlose wolkrekenaarkunde.
'N Populêre en wyd gebruikte platform. Met behulp van die FaaS-platform kan toepassingsontwikkelaars hul backend-kode binne 'n bedienerlose raamwerk bedryf en host.
Hierdie bedieningslose raamwerk word deur al die bedienings-, skaalbaarheids- en sekuriteitsfunksies van bedieners versorg.
Die verskillende ondernemers bied verskillende opsies om hierdie funksies uit te voer. Sodra die funksies voltooi is en in die FaaS-raamwerk gebruik is, word die dienste wat deur 'n verskaffer vir 'n funksie gelewer word, geaktiveer deur HTTP-versoeke of deur verkoperspesifieke hulpmiddels..
FaaS word deesdae gebruik vir die verwerking van data.
U betaal vir wat u gebruik
Goeie bestuur van infrastruktuur
Maklike en skaalbare implementering
Beperkte geheue en uitvoeringstyd
Data word nie gestoor nie
Ontfouting is nie maklik nie
Agtergrond as 'n diens (BaaS)
Dit is 'n wolkrekenaardiens wat dien as 'n middelman wat verskillende maniere bied waarop 'n ontwikkelaar hul web- en mobiele apps met wolkdienste kan koppel deur middel van API's en SDK's.
Daar is slegs beperkte verkopers vir hierdie platform en is relatief nuwer as FaaS. Dit is soortgelyk aan SaaS, maar is veral vir toepassingsontwikkeling.
BaaS-verskaffers bied 'n paar komponente aan wat by die aansoek ingeprop kan word.
Met BaaS hoef ons nie enige verifikasie-funksies op ons eie te bou nie. Byvoorbeeld, om aan te meld en aan te meld vir 'n toepassing is verifikasie nodig.
Voorsiening van die beheerstelsel vir datastoor
Vinnig en eenvoudig
'N Kode kan maklik beskadig word
Dataverlies kan plaasvind
Toets is moeilik
Nie geskik vir grootskaalse projekte nie
Sommige ander wolkrekenaarterminologie is:
Platform as 'n diens (PaaS): Dit bied 'n platform waarmee 'n gebruiker apps kan bestuur, bestuur en ontwikkel sonder om die argitektuur te bou en te onderhou.
Sagteware as 'n diens (SaaS): Verkopers bestuur alles; die ontwikkelaars of gebruikers moet hierdie dienste gebruik.
Infrastruktuur as 'n diens (IaaS): Net 'n infrastruktuurbasis word voorsien. Die ontwikkelaar moet self aan die toepassing werk. Noodsaaklike infrastruktuur bevat 'n virtuele masjien, sagteware netwerk en stoor.
Kom ons ondersoek sommige van die bedienervrye platforms.
Baie verskaffers bied rekenaartyd wat bekend staan ​​as 'n diens (FaaS).
Hierdie platform voer toepassingslogika uit, maar stoor nie die data nie.
Google Cloud-funksies: Betaal slegs vir die tyd wat u kode loop. Dit skaal outomaties.
AWS Lambda: Amazon Web Services het baie probleme reggestel deur die AWS Lambda-tegnologie bekend te stel. AWS Lambda is 'n diens wat u back-end-kode vir u het. Dit word ondersteun deur Node.js, Python, C #, Go en Java.
OpenWhisk: IBM het ook OpenWhisk bekendgestel, wat 'n open source-bedienerlose platform is.
Firebase: Firebase is deur Google bekendgestel. Hierdie platform word hoofsaaklik in mobiele toepassings vir ontwikkeling gebruik. Dit is 'n intydse databasis wat data met die NoSQL-wolkdatabasis stoor en sinkroniseer.
AWS DynamoDB: 'N NoSQL-databasis vir dienste wat konsekwente en enkel-syfer-millisekonde-vertraging benodig.
Amazon Cognito: Aangebied deur Amazon Web Services is gebou om gebruikers aan te meld en aan te meld by 'n web- en mobiele toepassings.
Bedieningslose kaders is so ontwerp dat die opstel, toetsing en ontplooiing van serverlose toepassings baie maklik word.
Kom ons kyk na enkele prominente kaders:
serverless: Hierdie raamwerk is gratis, open source en word geskryf met behulp van Node.js.
Kubeless: Konsep wat gebruik word om 'n raamwerk vir Kubernetes te ontwikkel.
fisie: 'N Bedienervrye funksieraamwerk vir Kubernetes wat Node.js, Go, C #, PHP ondersteun.
up: 'n open source-instrument wat gebruik word om HTTP-bedieners te ontplooi.
Nuclio: 'N Raamwerk wat oopbron is en tot 400.000 oproepe per sekonde beslaan.
Waarom moet ek 'n bedienerlose raamwerk vir my besigheid gebruik??
Voordele van Going Serverless
Implementering is maklik: Terugvalle word eenvoudig omdat die weergawe in die stelsel self gemaak word.
Naadloos en deursigtig: U kan u besigheidsvereistes ooreenstem met die verskillende bedienerkapasiteite wat deur hierdie raamwerk voorsien word.
Geen ontwikkelaars nodig nie: Daar sal nie van ontwikkelaars of administrateurs verwag word om bedieners uit te voer, op te dateer of by te voeg nie.
Koste-effektief: Vir platforms soos FaaS hoef u nie vir ledige hulpbronne te betaal nie.
vriendelike: Dit kom goed met mikro-dienste.
Laat u in die mark bly: As u bedienerloos gaan, verminder dit die tyd om in die mark te kom en dit help om u sagteware vinniger te laat begin.
Nadele van bedienerloos
Gebrek aan gereedskap: Ontwikkelaars is geheel en al afhanklik van 'n verkoper vir die ontfouting en monitering van gereedskap.
Ontfouting is moeilik: U moet die oorsprong van die fout vind
Komplekse argitektuur: Dit word moeiliker om te veel funksies te bestuur.
toets: Integrasie en toetsing van serverlose toepassings is ingewikkeld.
Toekoms van bedienerloos
gereedskap: Ons kan verwag dat die instrumente wat in serverlose tegnologie ontplooi word, mettertyd sal toeneem en beter sal word, wat dit gerieflik vir ontwikkelaars sal maak.
Staatsbestuur: Sekere nadele aan serverlessFaaS is die manier waarop die platforms geïmplementeer word, maar dit kan reggestel word deur nuwe oplossings of met die hulp van ander maatskappye..
Verhoogde deursigtigheid van verkopers: Daar sal meer deursigtigheid tussen u en die verkoper wees oor wat u van hulle kan verwag, aangesien ons op hulle vertrou vir ons aanbieding.
Gemeenskap: Ons kan verwag dat daar 'n geweldige groei van 'n bedienerlose gemeenskap sal wees
Soos ons kan sien, is bedienerloos 'n innoverende en groeiende tegnologie. 'N Organisasie het baat gevind by hierdie tegnologie, omdat hulle nie baie nodig het om hul bedieners te bestuur nie.
Dit blyk ook dat dit koste-effektief is en bekostigbaar kan wees vir enige onderneming wat wil fokus op die bou van 'n toepassing wat 'n uitstekende ervaring vir sy gebruikers wil lewer.
Met die hulp van die FaaS-platform betaal u slegs vir die dienste wat benodig word. U kan ongewenste koste wat uit ledige hulpbronne gegenereer word, uitskakel.
Ons kan verwag dat baie ondernemings en ondernemings in die toekoms die serverlose tegnologie sal ontplooi.
Alhoewel dit 'n paar nadele het, kan dit op groot skaal verbeter en gebruik word. As u baie duidelik is oor u besigheidsdoelwitte en -dienste, is dit die beste om met FaaS te werk.
Natuurlik sal baie mense steeds BaaS verkies, afhangende van hul vereistes. Die keuse van die regte verkoper speel ook 'n belangrike rol.