Perchè a rivoluzione senza servitore hè in bloccu

Punti chjave

  • Dapoi parechji anni, ci hè statu prumessu chì l'informatica senza servitore inaugurerà una nova era senza un OS specificu per eseguisce applicazioni. Ci hè statu dettu chì sta struttura risolve parechji prublemi di scalabilità. In fatti, tuttu hè diversu.
  • Mentre chì parechji vedenu senza servitore cum'è una nova idea, e so radiche ponu esse rintracciate in u 2006 cù l'avventu di Zimki PaaS è Google App Engine, tramindui chì utilizanu l'architettura senza servitore.
  • Ci hè quattru ragiuni per quessa chì a rivoluzione senza servitore hè stallata, chì varieghja da u sustegnu di lingua di prugrammazione limitata à prublemi di rendiment.
  • L'informatica senza servitore ùn hè micca cusì inutile. Affattu. Tuttavia, ùn deve micca esse cunsideratu un sustitutu direttu per i servitori. Per alcune applicazioni ponu esse un strumentu utile.

U servitore hè mortu, viva u servitore !

Questu hè u gridu di battaglia di a rivoluzione senza servitore. Basta un rapidu sguardu à a stampa di l'industria in l'ultimi anni è hè faciule cuncludi chì u mudellu di u servitore tradiziunale hè mortu è chì in pochi anni useremu tutti l'architettura senza servitore.

Cum'è qualcunu in l'industria sapi, è cum'è avemu ancu signalatu in u nostru articulu statu di l'informatica senza servitore, questu hè sbagliatu. Malgradu parechji articuli nantu à i meriti rivoluzione senza servitore, ùn hè mai accadutu. In fattu, l'ultime ricerche mostrachì sta rivuluzione pò esse ghjunta à una strada morta.

Alcune di a prumessa di mudelli senza servitore hè certamente realizatu, ma micca tutti. Micca tutti.

In questu articulu, vogliu vede i mutivi di sta cundizione. Perchè a mancanza di flessibilità di mudelli senza servitore hè sempre una barriera per a so adopzione più larga, ancu s'ellu fermanu utili in circustanze specifiche è ben definite.

Ciò chì l'adepti di l'informatica senza servitore prumessi

Prima di entre in e sfide di l'informatica senza servitore, fighjemu ciò chì duverebbe furnisce. A prumessa di a rivoluzione senza servitore Eranu numerosi è - à volte - assai ambiziosi.

Per quelli chì ùn sò micca familiarizati cù u terminu, eccu una definizione rapida. L'informatica senza server definisce una architettura in quale l'applicazioni (o parti di l'applicazioni) funzionanu nantu à dumanda in ambienti runtime chì sò tipicamente ospitati remotamente. Inoltre, i sistemi serverless ponu esse ospitati in casa. A custruzzione di sistemi senza servitori resistenti hè stata una preoccupazione maiò per l'amministratori di sistema è l'imprese SaaS in l'ultimi anni, postu chì (si dice) sta architettura offre parechji vantaghji chjave annantu à u mudellu "tradiziunale" cliente-servitore:

  1. I mudelli senza server ùn anu micca bisognu di l'utilizatori à mantene i so propri sistemi operativi o ancu creà applicazioni cumpatibili cù OS specifichi. Invece, i sviluppatori creanu un codice spartutu, u caricanu in una piattaforma senza servitore, è fighjate u funziunamentu.
  2. I risorse in frameworks senza servitore sò tipicamente fatturati da u minutu (o ancu u sicondu). Questu significa chì i clienti paganu solu per u tempu chì eseguinu veramente u codice. Questu compara favorevule cù una VM tradiziunale in nuvola, induve a macchina hè inattiva a maiò parte di u tempu, ma avete da pagà per questu.
  3. U prublema di scalabilità hè statu ancu risoltu. I risorse in frameworks senza servitore sò dinamicamente assignati in modu chì u sistema pò facilmente affruntà cù l'aumentu bruscu di a dumanda.

In breve, i mudelli senza servitore furniscenu suluzioni flessibili, à pocu costu è scalabili. Hè surprisante chì ùn avemu micca pensatu à sta idea prima.

Hè veramente una nova idea?

In fatti, l'idea ùn hè micca nova. U cuncettu di permette à l'utilizatori di pagà solu per u tempu chì u codice hè veramente in esecuzione hè statu intornu da quandu hè statu introduttu da Zimki PaaS in u 2006, è intornu à u listessu tempu Google App Engine offre una suluzione assai simili.

In fatti, ciò chì chjamemu u mudellu "senza servitore" hè più vechju di parechje tecnulugii oghji chjamati "nuvola nativa" chì furnisce assai a stessa cosa. Comu nutatu, i mudelli senza servitore sò essenzialmente solu una estensione di u mudellu di cummerciale SaaS chì hè statu dapoi decennii.

Hè ancu vale a pena ricunnosce chì u serverless ùn hè micca una architettura FaaS, ancu s'ellu ci hè una cunnessione trà i dui. FaaS hè essenzialmente a parte centrata in u calculu di una architettura senza servitore, ma ùn rapprisenta micca tuttu u sistema.

Allora chì hè tuttu u rumore? Ebbè, cum'è i tassi di penetrazione di l'internet cuntinueghjanu à cresce in i paesi in via di sviluppu, a dumanda di risorse di l'informatica hè ancu crescente à u stessu tempu. Per esempiu, parechji paesi cù settori di e-commerce in rapida crescita simpricimenti ùn anu micca l'infrastruttura informatica per l'applicazioni in queste piattaforme. Questu hè induve entranu e plataforme senza servitore pagate.

Prublemi cù Modelli Serverless

U catch hè chì i mudelli senza servitore anu ... prublemi. Ùn mi sbagliate micca: ùn dicu micca chì sò cattivi per se o ùn furnisce micca un valore significativu à alcune cumpagnie in certi circustanze. Ma a rivindicazione principale di a "rivuluzione" - chì l'architettura senza servitore rimpiazzà rapidamente l'architettura tradiziunale - ùn si materializza mai.

Hè perchè.

Supportu limitatu per i linguaggi di prugrammazione

A maiò parte di e plataforme senza servitore permettenu solu di eseguisce applicazioni chì sò scritte in certe lingue. Questu limita seriamente a flessibilità è l'adattabilità di questi sistemi.

I piattaforme senza server sò cunsiderate chì sustenenu a maiò parte di e lingue maiò. AWS Lambda è Azure Functions furnisce ancu un wrapper per eseguisce l'applicazioni è e funzioni in lingue senza supportu, ancu s'ellu spessu vene cun un costu di rendiment. Dunque, per a maiò parte di l'urganisazione, sta limitazione ùn hè micca un grande affare. Ma quì hè a cosa. Unu di i benefizii di i mudelli senza servitore hè suppostu chì i prugrammi pocu cunnisciuti, raramente utilizati ponu esse utilizati più prezzu perchè paghe solu per u tempu chì eseguinu. È i prugrammi pocu cunnisciuti, pocu utilizati sò spessu scritti in ... lingue di prugrammazione pocu cunnisciute è pocu usate.

Questu minà unu di i benefizii chjave di u mudellu senza servitore.

Rilegatura di u venditore

U sicondu prublema cù e plataforme senza servitore, o almenu a manera chì sò attualmente implementati, hè chì ùn sò generalmente micca simili à l'altri à u livellu operativu. Ùn ci hè praticamente micca standardizazione in termini di funzioni di scrittura, implementazione è gestione. Questu significa chì a migrazione di e funzioni da una piattaforma à l'altru richiede assai tempu.

A parte più dura di trasfurmà à un mudellu senza servitore ùn hè micca e funzioni di compute, chì sò generalmente solu snippets di codice, ma cumu l'applicazioni cumunicanu cù i sistemi cunnessi cum'è l'almacenamiento d'ogetti, a gestione di l'identità è a fila. E funzioni ponu esse spustate, ma u restu di l'applicazione ùn pò micca. Questu hè esattamente u cuntrariu di e plataforme economiche è flessibili chì sò prumesse.

Qualchidunu sustene chì i mudelli senza servitore sò novi è ùn ci hè statu tempu per standardizà cumu si travaglianu. Ma ùn sò micca cusì novi, cum'è aghju nutatu sopra, è parechje altre tecnulugii di nuvola, cum'è i cuntenituri, sò digià diventate assai più utilizable grazia à u sviluppu è l'adopzione generalizata di boni standard.

Produttività

U rendiment di l'informatica di e plataforme senza servitore hè difficiule di misurà, in parte perchè i venditori tendenu à mantene l'infurmazioni private. A maiò parte sustene chì e funzioni nantu à e plataformi remoti senza servitori funzionanu cum'è quelli nantu à i servitori interni, cù l'eccezzioni di uni pochi inevitabbili prublemi di latenza.

Tuttavia, fatti individuali indicanu u cuntrariu. E funzioni chì ùn anu micca eseguitu prima nantu à una piattaforma particulari o ùn anu micca eseguitu per qualchì tempu, piglià un pocu di tempu per inizializà. Questu hè prubabilmente duvuta à u fattu chì u so còdice hè statu purtatu à qualchì mediu d'almacenamiento menu accessibile, ancu s'ellu - cum'è cù i benchmarks - a maiò parte di i venditori ùn vi diceranu micca di a migrazione di dati.

Di sicuru, ci sò parechje manere intornu à questu. Unu hè di ottimisà e funzioni per qualsiasi lingua di nuvola chì a vostra piattaforma senza servitore hè in esecuzione, ma questu minà un pocu l'affirmazione chì queste piattaforme sò "agili".

Un altru approcciu hè di assicurà chì i prugrammi critichi di produtividade sò eseguiti regularmente per mantene freschi. Stu secondu approcciu, sicuru, hè un pocu di cuntradizzione à l'affirmazione chì e plataforme senza servitore sò più efficaci in u costu perchè paghe solu per u tempu chì i vostri prugrammi sò in esecuzione. I fornituri di nuvola anu introduttu novi modi per riduce l'iniziu friddu, ma assai di elli necessitanu "scala à unu", chì mina u valore originale di FaaS.

U prublema di l'iniziu friddu pò esse risoltu parzialmente da eseguisce sistemi senza servitore in-house, ma questu vene cù i so propii costi è resta una opzione di nichu per squadre ben risorse.

Ùn pudete micca eseguisce applicazioni intere

Infine, forse u mutivu più impurtante perchè l'architetture senza servitore ùn rimpiazzaranu micca i mudelli tradiziunali prestu: (di solitu) ùn ponu micca eseguisce applicazioni intere.

Più precisamente, hè impraticabile da u puntu di vista di u costu. U vostru monolitu successu probabilmente ùn deve esse trasfurmatu in un inseme di quattru decine di funzioni cunnesse da ottu porte, quaranta file è una decina di istanze di basa di dati. Per questu mutivu, serverless hè megliu adattatu per novi sviluppi. Quasi nisuna applicazione esistente (architettura) pò esse migrata. Pudete migrà, ma avete da principià da zero.

Questu significa chì in a maiò parte di i casi, e plataforme senza servitore sò aduprate cum'è un cumplementu à i servitori back-end per eseguisce compiti intensivi di calculu. Questu li rende assai sfarente da l'altri dui formi di tecnulugii di nuvola - cuntenituri è macchine virtuali - chì offrenu un modu olisticu per eseguisce l'informatica remota. Questu illustra una di e difficultà di passà da i microservizi à i sistemi senza servitore.

Di sicuru, questu ùn hè micca sempre un prublema. A capacità di sfruttà periodicamente risorse informatiche massive senza avè bisognu di cumprà u vostru propiu hardware pò purtà benefici reali è duraturi à parechje urganisazioni. Ma quandu alcune applicazioni residenu in servitori internu è altri in architetture di nuvola senza servitore, a gestione assume un novu livellu di cumplessità.

Viva a rivoluzione ?

Malgradu tutte queste lagnanze, ùn sò micca contru à e soluzioni serverless per se. Onestamente. I sviluppatori solu bisognu di capiscenu - soprattuttu s'ellu esploranu senza servitore per a prima volta - chì a tecnulugia ùn hè micca un sustitutu direttu per i servitori. Invece, verificate i nostri cunsiglii è risorse per creazione di applicazioni serverless è decide cumu megliu applicà u mudellu.

Source: www.habr.com

Add a comment