Računalo bez poslužitelja 101

Autor: Roger Morrison
Datum Stvaranja: 22 Rujan 2021
Datum Ažuriranja: 1 Srpanj 2024
Anonim
Programming - CS101 - Udacity
Video: Programming - CS101 - Udacity

Sadržaj


Izvor: Wavebreakmediamicro / Dreamstime.com

Oduzeti:

Računalo bez servera zapravo je malo pogrešno - poslužitelji su doista uključeni, oni su samo u oblaku.

Nepoznatim, sama ideja računanja bez poslužitelja izgleda nevjerojatno, jer su u povijesti razvoja softvera poslužitelji bili neophodni. Pa, još uvijek jesu. Računalo bez poslužitelja ne treba shvaćati doslovno, jer to poslužitelje ne čini zastarjelim. U shemi računalnog rada bez poslužitelja serveri i dalje igraju važnu ulogu, ali s određenim razlikama.

Programerima softvera više nije potrebno da razmišljaju o poslužiteljima ili prilagođavaju kodiranje na temelju poslužitelja. Mogu se u potpunosti usredotočiti na kodiranje, dok se za obradu koda brinu poslužitelji u domaćinstvu u oblaku. Ne treba planirati kapacitet poslužitelja jer su u oblaku sposobni povećavati i povećavati na temelju zahtjeva. Cijeli poslužitelj ne ostaje aktivan cijelo vrijeme. Na temelju zahtjeva, njegovi dijelovi postaju aktivni, rade svoj posao i zatim uspavaju.


Mnogi smatraju da računalstvo bez poslužitelja može poboljšati računalnu učinkovitost i smanjiti operativne troškove; na to gledaju kao na revolucionarni način računanja. No, ne slažu se svi. S druge strane argumenta, sprečava se da će računanje bez poslužitelja povećati složenost i nema mnogo načina za upravljanje složenošću.

Što je računanje bez poslužitelja?

Kao što je već rečeno, računanje bez poslužitelja ne znači da se računanje ili razvoj softvera mogu odvijati bez poslužitelja. U stvari, poslužitelje u hostoru jednostavno hostuje treći dobavljač. Stoga se programeri softvera trebaju samo usredotočiti na svoj kod i ne trebaju razmišljati o poslužiteljima, kapacitetu, implementaciji ili bilo čemu sličnom. Poslužitelji imaju različite dijelove unutar njih, poznate kao funkcije, koji obrađuju kod. Za razliku od tradicionalnog računanja, cijeli poslužitelj ne ostaje aktivan cijelo vrijeme. Funkcije obavljaju određene zadatke - na primjer, provjera valjanosti i pretraživanja - i aktiviraju se samo kad je potrebno. Funkcije se mogu povećavati prema gore ili prema dolje na temelju zahtjeva. Kao i druge usluge u oblaku, poput softvera kao usluge (SaaS) ili platforme kao usluge (PaaS), funkcije se nude i na osnovi pretplate. Kupac se naplaćuje samo u vremenu kada neka funkcija ostane aktivna.


Povijest

Računalo bez poslužitelja prilično je nov koncept u razvoju softvera, a korijeni mu se mogu datirati do 2006. godine. Usluga pod nazivom Zimki ponudila je rješenje koje je omogućilo programerima softvera da pišu kod i uploadaju ga na Zimkisov poslužitelj. Izvršenje koda izvedeno je funkcijama koje se nude u obliku aplikacijskih programskih sučelja (API-ja).

Sljedeći veliki razvoj dogodio se 2014. godine kada je Amazon predstavio sustav pay-as-you-go za platformu za izvršavanje koda u obliku AWS Lambda. Međutim, zanimljivo je napomenuti da je trebalo toliko vremena da se takav koncept romana našao vuče (2006. do 2014.). Iz nekog razloga, razvoj računara bez poslužitelja nije napravio tako veliki pad kao i druge ideje poput računalstva u oblaku ili interneta stvari (IoT). Ipak, AWS Lambda bila je prva ponuda bez velikog poslužitelja, a uslijedila je niz drugih ponuda, uključujući Googles ponudu, poznatu kao Google Cloud Functions. U 2016. godini, IBM i Microsoft preskočili su računalni pojas bez servera otkrivši OpenWhisk i Azure Functions.

Ronjenje dublje

Dobra poanta za početak razumijevanja računanja bez poslužitelja na dubljoj razini je usporedba između računala bez poslužitelja i PaaS. Iako se pojmovi razlikuju, PaaS je zapravo bio prvi korak ka ponudi bez poslužitelja. Iako PaaS nudi platformu i okruženje koje programerima omogućuje izradu softverskih aplikacija putem interneta, još uvijek postoji potreba za planiranjem kapaciteta potrebnog za softver u oblaku. Međutim, ne treba na bilo koji način razmišljati o poslužiteljima dok radite s računanjem bez poslužitelja. Programeri softvera samo kodiraju i učitaju kôd u oblak, a zatim poslužitelji preuzimaju.

Računalo bez poslužitelja naziva se i funkcijama kao usluga (FaaS) jer se male funkcije nude na modelu tvrtki s isplativim troškom. Takve funkcije obavljaju male zadatke - na primjer, provjeravanje vjerodajnica korisnika. Funkcije se nude u obliku API-ja. Za softversku aplikaciju može biti potrebno nekoliko funkcija, ali ne postaju sve funkcije istovremeno aktivne; aktivni su samo kad god se zahtijevaju. Na primjer, ako jedna funkcija prima veliku količinu prometa i ona je prekomjerna, može se smanjiti i povećati njen kapacitet. Dakle, ne trebate skalirati cijelu aplikaciju.

Bez grešaka, bez stresa - Vaš korak po korak vodič za stvaranje softvera koji mijenja život bez uništavanja života

Ne možete poboljšati svoje programiranje kad nikoga nije briga za kvalitetu softvera.

Zašto je računanje bez poslužitelja važno?

Važnost računanja bez poslužitelja leži u njegovoj razlici s tradicionalnim računanjem. Tradicionalno računarstvo dobro služi tvrtkama, ali postavlja nekoliko izazova: trošak, dugotrajno, bez usredotočenog kodiranja i poteškoće u skaliranju ili smanjivanju. Poduzeća su tražila rješenje za ove probleme. Jedinstvene prednosti računanja bez poslužitelja uključuju:

  • Usredotočite se na kodiranje
    U tradicionalnom računanju programeri su morali razmišljati o poslužiteljima i u skladu s tim prilagoditi kodiranje. U računanju bez poslužitelja trebaju se usredotočiti samo na kodiranje, a ostalo se brinu za poslužitelje u oblaku. Ovaj povećani fokus dovodi do bolje kvalitete koda.
  • Kodiranje je potencijalno lakše
    Ako su vaši kodovi računarsko usmjereni na poslužitelj, sve što ćete učiniti je napisati manje dijelove koda koji se obrađuju određenim, odgovarajućim funkcijama i osigurati da se kôd dobro integrira s ostalim dijelovima koda.
  • Lakše je povećati ili smanjiti
    Budući da se čitava računalna infrastruktura bez poslužitelja sastoji od malih funkcija, nema potrebe za povećanjem ili smanjivanjem cijele infrastrukture - samo skalirajte potrebnu funkciju. Na taj se način obrada i skaliranje također događaju puno brže.
  • Jeftiniji
    Poduzeće koje koristi računarske usluge bez poslužitelja obično plaća pretplatu, a zatim i korištenje funkcije. Međutim, plaća se samo za vrijeme aktivne funkcije i stavljanja u upotrebu. Drugim riječima, poduzeća plaćaju samo ono što troše.

Primjer računanja bez poslužitelja

AWS Lambda jedan je od najistaknutijih primjera ponude bez poslužitelja. Omogućuje tvrtkama da jednostavno napišu i učitaju kod u Lambda. Po potrebi, Lambda može automatski skalirati aplikaciju pokretanjem kodova kao odgovor na okidač. Kada se opterećenje funkcije ili API-ja povećava, funkcija se skalira. Klijentu se naplaćuje na osnovi mjerenja u sekundama sekunde, što znači da se klijentu naplaćuje svakih 100 ms koji se izvrši kodom i koliko se puta kod aktivira. Na taj način, nema potrebe za plaćanjem kada nema izvršenja koda.

Zaključak

Zbog svoje jedinstvenosti, ponuda bez poslužitelja nije bez ograničenja. Nekoliko malih funkcija potencijalno može stvoriti izuzetno složen sustav, štoviše, ako je softverska aplikacija ogromna. Situaciju također usložnjava ograničena dostupnost alata za upravljanje takvim složenostima. Ipak, računanje bez poslužitelja promatrat će se kao rješenje za monolitne sustave s kojima se poduzeća moraju suočiti. Još je u novom stanju i organizacije još uvijek pronalaze načine kako to raditi na njima, jer postaje sve prihvaćenija među poduzećima.