
Serverless a luat cu asalt lumea cloud computing, înregistrând o creștere masivă în ultimii câțiva ani și previziuni foarte pozitive pentru viitor, piața fiind așteptată să crească cu o rată compusă de peste 20% până în 2028, conform previziunilor recente, rata anuală de creștere. .
În esență, arhitectura serverless deblochează întregul potențial al tehnologiei bazate pe cloud prin intermediul software-ului de automatizare IT, permițând companiilor să stimuleze creșterea în loc să cheltuiască timp și resurse pentru gestionarea infrastructurii IT.
Deși acest lucru sună promițător, platformele cloud fără server sunt încă apatride și centralizate, așa că aplicațiile trebuie să abordeze această deficiență a stării de stocare și să evite să fie supuse blocării furnizorului.
Calculatoarele de pe internet oferă un alt nivel de securitate, control și încredere — totul prin descentralizare, fără ca nicio parte să controleze hardware-ul sau software-ul și, în plus, computerele de pe internet sunt proiectate să funcționeze într-o manieră de stat.
În acest articol, descriem modul în care blockchain-urile computerelor de pe Internet pot oferi capabilități de calcul fără server cu două beneficii suplimentare importante: descentralizare și statefulness.
Ce este serverless?
Serverless este o nouă paradigmă de cloud computing care permite cicluri de dezvoltare rapide și flexibile, fără a fi nevoie să ia în considerare infrastructura de bază (provizionarea și scalarea mașinilor virtuale potrivite, instalarea și întreținerea software-ului și cadrelor), reducând astfel costurile operaționale totale.
Serverless vine în multe forme, cea mai relevantă în cazul nostru este Functions as a Service (FaaS), unde (bazele mari de cod sunt împărțite în) funcții mici cu timpi de execuție foarte scurti (milisecunde până la minute) și funcțiile sunt utilizate pe o utilizare. Cu taxă (adică pe baza duratei de funcționare) plus o taxă fixă pe apel, ultima caracteristică importantă de menționat este scalabilitatea excelentă pentru a lansa până la mii de instanțe ale aceleiași funcții într-o perioadă scurtă de timp.
Internet Computing ca platformă fără server
Aruncând o scurtă privire asupra arhitecturii Internet Computer, veți observa cu ușurință că oferă capabilități fără server și chiar beneficii suplimentare.
Astăzi, funcțiile FaaS sunt ambalate ca containere sau pur și simplu ca cod (Python, Javascript, Java, Rust etc.) și oferă un singur punct final care poate fi apelat direct de utilizatori externi sau alte funcții.
Contractele inteligente pentru containere pe computerele de pe internet pot fi programate într-o varietate de limbi, inclusiv Rust, Motoko, JavaScript sau Python, și pot expune mai multe puncte finale care oferă funcționalități diferite pentru fiecare container.
Următorul tabel rezumă principalele capabilități fără server și computerele lor de internet corespunzătoare, precum și avantajele blockchain-ului față de serverless bazat pe cloud:

După cum puteți vedea din tabel, computerele de internet îndeplinesc toate cerințele pentru un mediu fără server. Dezvoltatorii poate să nu-l cunoască, dar execută deja cod fără server, așa cum arată cercetarea noastră, cu aproape la fel de multă eficiență ca ceea ce oferă furnizorii tradiționali de cloud. la fel.
În unele dimensiuni (cum ar fi memoria), computerele de pe internet chiar depășesc capacitățile oferite de furnizorii tradiționali de cloud. Cu toate acestea, cele mai importante capacități pe care dorim să le evidențiem pentru dezvoltatori sunt: stateful și descentralizate, tradiționale fără server Cloudul nu oferă aceste două caracteristici.
În Tabelul 2-3, invităm cititorul expert în tehnologie să se aprofundeze în aspectele tehnice care fac din Internet Computer o platformă competitivă fără server. Este important de remarcat aici că Internet Computer are două tipuri de execuție de contract inteligent - modul de actualizare și modul de interogare, primul reprezintă apeluri cu stare, în timp ce al doilea este fără stat, la fel ca calculul general fără server.


Persistența stării după execuția funcției este o caracteristică mult căutată în lumea serverless/FaaS și este foarte dificil de implementat, deoarece adesea intră în conflict cu tipul de scalabilitate fără întreruperi disponibil în prezent în cloud.
Din fericire, computerele de pe internet au fost proiectate de la zero, având în vedere starea de stat și oferă dezvoltatorilor această funcționalitate fără a fi nevoie de niciun fel de intervenție manuală, cum ar fi salvarea datelor într-un strat de stocare extern sau într-o bază de date, astfel încât toate variabilele Sau datele vor fi a persistat automat după apelarea contractului inteligent pe computerul de pe internet.
Descentralizarea este o altă caracteristică importantă care este adesea trecută cu vederea Produsele moderne fără servere sunt deservite în prezent de mai multe cloud-uri centralizate mari, ceea ce duce la blocarea furnizorilor, unde codul și datele de dezvoltator sunt la fel de sigure ca și furnizorul lor și sunt vulnerabile la întreruperile geografice modificări simple ale politicii furnizorilor.
Calculatoarele de pe internet sunt complet descentralizate, cu noduri care rulează în diferite locații geografice și funcționează sub garanții puternice de consens, care pot tolera chiar eșecurile bizantine (răușitoare).

Calculatoare de internet și platforme tradiționale fără server
Pentru a evalua performanța blockchain-ului Internet Computer în ceea ce privește norii fără server, am rulat un proces de calcul primar de referință pe Internet Computer și una dintre primele 3 platforme fără server Pentru intrări mai mici, computerul Internet a fost mai bun decât cel tradițional fără server Platforma Serverul este mai rapid, iar pentru intrări mai mari, este doar la jumătate mai rapid decât cel tradițional (vezi rezultatele de mai jos).
Acest lucru este foarte încurajator și arată că, deși mai este un drum lung de parcurs, computerul pe internet câștigă teren în ceea ce privește performanța în comparație cu cloud-urile centralizate tradiționale Conferința USENIX ATC:
usenix.org/system/files/atc23-arutyunyan.pdf

Îmbunătățiți performanța
Caracteristicile încorporate suplimentare, cum ar fi descentralizarea și starea, au ca rezultat o performanță mai scăzută a computerelor de pe Internet atunci când gestionează sarcini mari de lucru (vezi Figura 2) și, deși aceste caracteristici sunt puternice și importante, ele slăbesc și performanța brută.

Inginerii și cercetătorii DFINITY vor continua să caute și să exploreze modalități de îmbunătățire și îmbunătățire a performanței computerului pe Internet, unele domenii de îmbunătățire pot fi creșterea paralelismului sau înlocuirea stratului de stocare actual cu o abordare a arborelui de îmbinare structurat în jurnal pentru a scurta timpii punctelor de control.
Deblocarea întregii puteri a interogărilor compuse pentru a suporta aplicații mai complexe va avea, de asemenea, un impact pozitiv asupra performanței. Lucrările au început deja asupra interogărilor compuse pentru a permite scalarea orizontală a dapp și pentru a simplifica codul client, permițând invocarea interogărilor pe subrețele și execuția ulterioară sunt in curs de desfasurare.
Creați aplicații fără server pe computere de pe internet

Rulați Enterprise Pilot pe computere de internet

Conținutul IC la care îți pasă
Progresul tehnologiei |. Informații despre proiect |

Colectați și urmăriți canalul IC Binance
Fiți la curent cu cele mai recente informații
