Serverløs computing 101

Forfatter: Roger Morrison
Oprettelsesdato: 22 September 2021
Opdateringsdato: 1 Juli 2024
Anonim
Serverløs computing 101 - Teknologi
Serverløs computing 101 - Teknologi

Indhold


Kilde: Wavebreakmediamicro / Dreamstime.com

Tag væk:

Serverløs computing er faktisk lidt af en fejlnummer - servere er faktisk involveret, de er bare i skyen.

For de uindviede virker selve ideen om serverløs computing utroligt, fordi i softwareudviklingshistorien har servere været uundværlige. Det er de stadig. Serverløs computing behøver ikke tages bogstaveligt, fordi det ikke gør servere forældede. I det serverløse computerskema for ting spiller servere fortsat en vigtig rolle, men med visse forskelle.

Softwareudviklere er ikke længere påkrævet at tænke på servere eller justere kodning baseret på servere. De kan fokusere helt på kodning, mens serverne, der er vært i skyen, tager sig af kodebehandlingen. Det er ikke nødvendigt at planlægge serverens kapacitet, fordi de i skyen er i stand til at skalere op og ned baseret på krav. Hele serveren forbliver ikke aktiv hele tiden. Baseret på kravene bliver dele af det aktive, udfører deres job og bliver derefter sovende.


Mange vurderer, at serverfri computing kan forbedre databehandlingseffektiviteten og lavere driftsomkostninger; de ser det som en revolutionerende måde at computere på. Men ikke alle er enige. På den anden side af argumentet modarbejdes det, at serverløs computing vil øge kompleksiteten, og der er ikke mange måder at styre kompleksiteten på.

Hvad er serverfri computing?

Som allerede nævnt betyder serverløs computing ikke, at computing eller softwareudvikling kan finde sted uden servere. Faktisk hostes serverne simpelthen i skyen af ​​en tredjepartsleverandør. Derfor er softwareudviklerne bare nødt til at fokusere på deres kode, og behøver ikke at tænke på servere, kapacitet, implementering eller noget lignende. Serverne har forskellige dele i dem, kendt som funktioner, der behandler koden. I modsætning til i traditionel databehandling forbliver hele serveren ikke aktiv hele tiden. Funktionerne udfører specifikke opgaver - for eksempel validering og søgning - og aktiveres kun, når det kræves. Funktionerne kan skaleres op eller ned på baggrund af krav. Ligesom andre cloud-tjenester såsom software som en service (SaaS) eller platform som en service (PaaS), tilbydes funktionerne også på abonnementsbasis. Kunden debiteres kun for det tidspunkt, en funktion forbliver aktiv.


Historie

Serverløs computing er et temmelig nyt koncept inden for softwareudvikling, og dens rødder kan spores tilbage til 2006. I 2006 tilbød en service kaldet Zimki en løsning, der gjorde det muligt for softwareudviklere at skrive kode og uploade den til Zimkis server. Kodekørelsen blev udført af funktioner, der blev tilbudt i form af applikationsprogrammeringsgrænseflader (API'er).

Den næste store udvikling fandt sted i 2014, da Amazon introducerede systemet med pay-as-you-go for en kodeudførelsesplatform i form af AWS Lambda. Det er dog interessant at bemærke, at det tog så lang tid for et sådant nyt koncept at finde trækkraft (2006 til 2014). Af en eller anden grund skabte serverløs computerudvikling ikke lige så stor plask som andre ideer som cloud computing eller tingenes internet (IoT). Ikke desto mindre var AWS Lambda det første serverløse tilbud fra en stor virksomhed, og en række andre tilbud fulgte, inklusive Googles-tilbud, kendt som Google Cloud Functions. I 2016 sprang både IBM og Microsoft ind på den serverløse computerbåndvogn ved at afsløre henholdsvis OpenWhisk og Azure Functions.

Dykning dybere

Et godt punkt at begynde at forstå serverløs computing på et dybere niveau er en sammenligning mellem serverløs computing og PaaS. Selvom de er forskellige som koncepter, var PaaS faktisk det første skridt mod serverløse tilbud. Mens PaaS tilbyder en platform og et miljø, der giver udviklere mulighed for at bygge softwareapplikationer over internettet, er der stadig behovet for at planlægge den kapacitet, der kræves til softwaren i skyen. Der er dog ikke noget behov for at tænke på servere på nogen måde, når du arbejder med serverfri computing. Softwareudviklere koder og uploader koden bare til skyen, og derefter overtager serverne.

Serverløs computing kaldes også funktioner som en service (FaaS), fordi små funktioner tilbydes på en betalingsmodel-forretningsmodel. Sådanne funktioner udfører små opgaver - for eksempel validering af brugeroplysninger. Funktionerne tilbydes i form af API'er. Der kan være flere funktioner, der kan være nødvendige for en softwareprogram, men ikke alle funktioner bliver aktive på samme tid; de er kun aktive, når de er påkrævet. For eksempel, hvis en funktion har modtaget en stor mængde trafik, og den er overarbejdet, kan den skaleres og dens kapacitet øges. Så du behøver ikke at skalere hele applikationen.

Ingen fejl, ingen stress - Din trinvis vejledning til oprettelse af livsændrende software uden at ødelægge dit liv

Du kan ikke forbedre dine programmeringsevner, når ingen er interesseret i softwarekvalitet.

Hvorfor er serverfri computing vigtig?

Betydningen af ​​serverløs computing ligger i dens forskel med traditionel computing. Traditionel computing har tjent virksomhederne godt, men udgør et par udfordringer: omkostninger, tidskrævende, ingen fokuseret kodning og vanskeligheder med at skalere op eller ned. Virksomheder har ledt efter en løsning på disse problemer. De unikke fordele ved serverløs computing inkluderer:

  • Fokus på kodning
    I traditionel computing måtte udviklere tænke på servere og justere kodningen i overensstemmelse hermed. I serverløs databehandling behøver de kun at fokusere på kodning, og resten tages hånd om af servere, der er vært i skyen. Dette øgede fokus fører til bedre kodekvalitet.
  • Kodning er potentielt lettere
    Hvis dine koder er serverløse beregningsorienterede, er alt hvad du skal gøre, at skrive mindre kodestykker, der behandles af specifikke respektive funktioner og sørge for, at koden integreres godt med andre kodestykker.
  • Nemmere at skalere op eller ned
    Da hele den serverløse databehandlingsinfrastruktur handler om små funktioner, er der ikke behov for at skalere op eller ned på hele infrastrukturen - skalere bare den krævede funktion. På den måde sker behandling og skalering også meget hurtigere.
  • Billigere
    En virksomhed, der bruger serverløse computertjenester, betaler typisk for abonnementet og derefter for funktionsanvendelsen. Det betaler dog kun for den tid, en funktion er aktiv og bliver brugt. Med andre ord betaler virksomheder kun for det, de spiser.

Et eksempel på serverfri computing

AWS Lambda er et af de mest fremtrædende eksempler på serverløse tilbud. Det giver virksomhederne mulighed for bare at skrive og uploade koden til Lambda. Når det er nødvendigt, kan Lambda automatisk skalere applikationen ved at køre koder som svar på udløseren. Når arbejdsbyrden på en funktion eller API forøges, skaleres funktionen. Klienten faktureres på basis af måling under sekund, hvilket betyder, at klienten debiteres for hver 100 ms, som koden udføres, og antallet af gange, koden udløses. På den måde er der ikke noget behov for at betale, når der ikke er nogen udførelse af koden.

Konklusion

På grund af al sin unikhed er de serverløse tilbud ikke uden deres begrænsninger. Flere små funktioner kan potentielt skabe et ekstremt komplekst system, især hvis softwareprogrammet er enormt. Situationen er også forværret af den begrænsede tilgængelighed af værktøjer til at styre sådanne kompleksiteter. Serverløs computing vil stadig blive betragtet som en løsning på de monolitiske systemer, virksomhederne har at gøre med. Det er stadig i en ny stat, og organisationer finder stadig måder at få det til at arbejde for dem, da det får mere accept blandt virksomhederne.