{"id":33935,"date":"2019-10-31T21:55:27","date_gmt":"2019-10-31T18:55:27","guid":{"rendered":"https:\/\/prohoster.info\/blog\/serverless-po-stoechkam\/"},"modified":"2019-10-31T21:55:27","modified_gmt":"2019-10-31T18:55:27","slug":"serverless-po-stoechkam","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/serverless-po-stoechkam","title":{"rendered":"Serverless a step","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Serverless a step\" src=\"\/wp-content\/uploads\/2019\/05\/cea6dc9da0a3a1b0241246cdf3eba900.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nServerless non significa l'assenza fisica di server. Non \u00e8 un \"killer\" dei contenitori n\u00e9 una moda passeggera. \u00c8 un nuovo approccio alla costruzione di sistemi nel cloud. In questo articolo, approfondiremo l'architettura delle applicazioni Serverless, esaminando il ruolo del fornitore del servizio Serverless e dei progetti open-source. Alla fine discuteremo delle applicazioni pratiche del Serverless.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nVoglio scrivere la parte server dell'applicazione (anche un negozio online). Pu\u00f2 trattarsi di una chat, di un servizio per la pubblicazione di contenuti o di un bilanciatore di carico. In ogni caso, ci saranno molte preoccupazioni: dovr\u00f2 preparare l'infrastruttura, definire le dipendenze dell'applicazione e pensare al sistema operativo dell'host. Successivamente, sar\u00e0 necessario aggiornare piccoli componenti che non influenzano il funzionamento del resto del monolite. E non dimentichiamoci della scalabilit\u00e0 sotto carico.<\/p>\n<p>E se utilizzassimo container effimeri, in cui le dipendenze necessarie sono gi\u00e0 preinstallate e i container sono isolati l'uno dall'altro e dal sistema operativo host? Separiamo il monolite in microservizi, ognuno dei quali pu\u00f2 essere aggiornato e scalato indipendentemente dagli altri. Inserendo il codice in un tale container, potr\u00f2 eseguirlo su qualsiasi infrastruttura. Gi\u00e0 meglio. <\/p>\n<p>E se non volessi configurare i container? Se non volessi pensare alla scalabilit\u00e0 dell'applicazione. Se non volessi pagare per il tempo di inattivit\u00e0 dei container attivi quando il carico sul servizio \u00e8 minimo. Voglio scrivere codice. Concentrarmi sulla logica di business e lanciare prodotti sul mercato a velocit\u00e0 della luce. <\/p>\n<p>Questi pensieri mi hanno portato al calcolo serverless. Serverless in questo caso significa <em>non l'assenza fisica di server, ma l'assenza di mal di testa nella gestione dell'infrastruttura.<\/em><\/p>\n<p>L'idea \u00e8 che la logica dell'applicazione venga suddivisa in funzioni indipendenti. Esse seguono una struttura eventi. Ogni funzione esegue un \"micro-task\". Tutto ci\u00f2 che \u00e8 richiesto allo sviluppatore \u00e8 caricare le funzioni nella console fornita dal provider cloud e associarle alle fonti di eventi. Il codice verr\u00e0 eseguito su richiesta in un contenitore automaticamente preparato e io pagher\u00f2 solo per il tempo di esecuzione. <\/p>\n<p>Esploriamo come apparir\u00e0 ora il processo di sviluppo dell'applicazione.<\/p>\n<h2>Dal punto di vista dello sviluppatore<\/h2>\n<p>\nIn precedenza abbiamo iniziato a parlare di un'app per un negozio online. Nel tradizionale approccio, la logica principale del sistema \u00e8 gestita da un'applicazione monolitica. E il server con l'applicazione \u00e8 in esecuzione continuamente, anche in assenza di carico.<\/p>\n<p><strong>Per passare a un'architettura serverless, suddividiamo l'applicazione in micro-task.<\/strong> Scriviamo una funzione per ciascuno di essi. Le funzioni sono indipendenti l'una dall'altra e non memorizzano informazioni sullo stato (stateless). Possono essere scritte anche in linguaggi diversi. Se una di esse \"cede\", l'applicazione non si fermer\u00e0 completamente. L'architettura dell'applicazione avr\u00e0 questo aspetto:<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a step\" src=\"\/wp-content\/uploads\/2019\/05\/f62c5c08bbf587766198dbb807123273.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nLa suddivisione delle funzioni in Serverless \u00e8 simile a lavorare con i microservizi. Tuttavia, un microservizio pu\u00f2 eseguire pi\u00f9 compiti, mentre una funzione, idealmente, dovrebbe svolgerne uno solo. Immaginiamo di dover raccogliere statistiche e visualizzarle su richiesta dell'utente. Nell'approccio a microservizi, il compito viene svolto da un singolo servizio con due punti di accesso: uno per la scrittura e uno per la lettura. Nelle architetture serverless, queste saranno due funzioni distinte, non collegate tra loro. Lo sviluppatore risparmia risorse di calcolo quando, ad esempio, le statistiche vengono aggiornate pi\u00f9 frequentemente di quanto non vengano scaricate. <\/p>\n<p>Le funzioni Serverless devono essere eseguite in un breve intervallo di tempo (timeout) definito dal fornitore del servizio. Ad esempio, per AWS il timeout \u00e8 di 15 minuti. Pertanto, le funzioni di lunga durata (long-lived) dovranno essere adattate a questi requisiti, il che distingue il Serverless da altre tecnologie popolari al giorno d'oggi (container e Platform as a Service).<\/p>\n<p><strong>Assegniamo un evento a ciascuna funzione.<\/strong> L'evento \u00e8 un trigger per un'azione:<\/p>\n<p><strong>Evento<\/strong><br \/>\n<strong>Azione che esegue la funzione<\/strong><\/p>\n<p>Un'immagine del prodotto \u00e8 stata caricata nello storage<br \/>\nComprimere l'immagine e caricarla nella directory<\/p>\n<p>L'indirizzo del negozio fisico \u00e8 stato aggiornato nel database<br \/>\nCarica una nuova posizione nelle mappe<\/p>\n<p>Il cliente paga per il prodotto<br \/>\nAvvia il processo di pagamento<\/p>\n<p>Gli eventi possono essere richieste HTTP, flussi di dati, code di messaggi, e cos\u00ec via. Le sorgenti degli eventi sono la modifica o l'apparizione di dati. Inoltre, le funzioni possono essere attivate da un timer.<\/p>\n<p>L'architettura \u00e8 stata sviluppata e l'applicazione \u00e8 quasi diventata serverless. Ora ci spostiamo verso il fornitore del servizio.<\/p>\n<h2>Dal lato del fornitore<\/h2>\n<p>\nDi solito, il calcolo serverless \u00e8 offerto dai fornitori di servizi cloud. Hanno nomi diversi: Azure Functions, AWS Lambda, Google Cloud Functions, IBM Cloud Functions. <\/p>\n<p>Utilizzeremo il servizio tramite la console o il pannello di controllo del fornitore. Il codice delle funzioni pu\u00f2 essere caricato in uno dei seguenti modi:<\/p>\n<ul>\n<li>scrivere il codice negli editor integrati tramite la web console,<\/li>\n<li>caricare un archivio con il codice,<\/li>\n<li>lavorare con repository git pubblici o privati.<\/li>\n<\/ul>\n<p>\nQui configuriamo anche gli eventi che attivano la funzione. Le configurazioni degli eventi possono variare tra diversi fornitori.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a step\" src=\"\/wp-content\/uploads\/2019\/05\/98676fa23a9911aae5758ecdb2cd9a03.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Il fornitore ha costruito e automatizzato un sistema Function as a Service (FaaS) sulla propria infrastruttura:<\/p>\n<ol>\n<li>Il codice delle funzioni viene memorizzato nello storage del fornitore.<\/li>\n<li>Quando si verifica un evento, i container con l'ambiente preparato vengono automaticamente distribuiti sul server. Ogni istanza della funzione ha il proprio container isolato.<\/li>\n<li>Dallo storage, la funzione viene inviata al container, calcolata e restituisce il risultato.<\/li>\n<li>Il numero di eventi paralleli aumenta, aumentando cos\u00ec il numero di container. Il sistema si scala automaticamente. Se gli utenti non accedono alla funzione, essa rimarr\u00e0 inattiva.<\/li>\n<li>Il fornitore stabilisce un tempo di inattivit\u00e0 per i container: se, entro questo tempo, non si attivano funzioni nel container, esso viene distrutto.<\/li>\n<\/ol>\n<p>\nIn questo modo otteniamo Serverless 'pronto all'uso'. Pagheremo per il servizio con un modello pay-as-you-go e solo per le funzioni che utilizziamo, e solo per il tempo in cui sono state utilizzate.<\/p>\n<p>Per familiarizzare gli sviluppatori con il servizio, i fornitori offrono fino a 12 mesi di prova gratuita, ma limitano il tempo totale di calcolo, il numero di richieste mensili, i costi o le risorse consumate.<\/p>\n<p>Il principale vantaggio di lavorare con un provider \u00e8 la possibilit\u00e0 di non doversi preoccupare dell'infrastruttura (server, macchine virtuali, contenitori). Da parte sua, il provider pu\u00f2 implementare FaaS sia con sviluppi propri che utilizzando strumenti open-source. Di questi parleremo di seguito.<\/p>\n<h2>Da parte open source<\/h2>\n<p>\nNegli ultimi due anni, la comunit\u00e0 open-source ha lavorato attivamente sugli strumenti Serverless. Tra i maggiori attori del mercato, contribuiscono allo sviluppo di piattaforme senza server:<\/p>\n<ul>\n<li><strong>Google<\/strong> offre agli sviluppatori il suo strumento open-source \u2015 <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/knative\/\">Knative<\/a><\/noindex>. Nella sua sviluppo hanno partecipato IBM, RedHat, Pivotal e SAP;<\/li>\n<li><strong>IBM<\/strong> hanno lavorato sulla piattaforma Serverless <noindex><a rel=\"nofollow\" href=\"https:\/\/openwhisk.apache.org\/\">OpenWhisk<\/a><\/noindex>, che \u00e8 poi diventata un progetto della Apache Foundation;<\/li>\n<li><strong>Microsoft<\/strong> hanno parzialmente aperto il codice della piattaforma <noindex><a rel=\"nofollow\" href=\"https:\/\/azure.microsoft.com\/en-us\/services\/functions\/\">Azure Functions<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nSono in corso sviluppi anche verso i framework serverless. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubeless.io\/\">Kubeless<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/fission.io\/\">Fission<\/a><\/noindex> viene distribuito all'interno di cluster Kubernetes preparati in anticipo, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openfaas.com\/\">OpenFaaS<\/a><\/noindex> funziona sia con Kubernetes che con Docker Swarm. Il framework funge da sorta di controllore \u2015 su richiesta prepara un ambiente di esecuzione all'interno del cluster, poi vi avvia la funzione.<\/p>\n<p>I framework lasciano spazio per configurare lo strumento secondo le proprie esigenze. Ad esempio, in Kubeless, lo sviluppatore pu\u00f2 impostare il timeout di esecuzione della funzione (il valore predefinito \u00e8 di 180 secondi). Fission, nel tentativo di affrontare il problema del cold start, propone di mantenere attivi alcuni container (anche se questo comporta costi per risorse inutilizzate). OpenFaaS offre invece una serie di trigger per tutti i gusti: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs e altri.<\/p>\n<p>Le istruzioni per iniziare possono essere trovate nella documentazione ufficiale dei framework. Lavorare con essi richiede necessariamente un po' pi\u00f9 di abilit\u00e0 rispetto a lavorare con un fornitore, come almeno la capacit\u00e0 di avviare un cluster Kubernetes tramite CLI. Al massimo, includere nell'operazione altri strumenti open-source (ad esempio, il gestore di code Kafka).<\/p>\n<p>Indipendentemente dal metodo scelto per lavorare con Serverless \u2015 tramite un fornitore o utilizzando open-source, otterremo una serie di vantaggi e svantaggi approccio Serverless.<\/p>\n<h2>Dal punto di vista dei vantaggi e svantaggi<\/h2>\n<p>\nServerless sviluppa idee di infrastruttura containerizzata e un approccio a microservizi, permettendo ai team di lavorare in modalit\u00e0 multilingue senza essere legati a una singola piattaforma. La costruzione del sistema diventa pi\u00f9 semplice e la correzione degli errori risulta pi\u00f9 agevole. L'architettura a microservizi consente di aggiungere nuove funzionalit\u00e0 al sistema in modo significativamente pi\u00f9 veloce rispetto a un'applicazione monolitica.<\/p>\n<p><strong>Serverless riduce ulteriormente i tempi di sviluppo,<\/strong> consentendo ai programmatori di concentrarsi esclusivamente sulla logica di business dell'applicazione e sulla scrittura del codice. Di conseguenza, il tempo di immissione sul mercato diminuisce.<\/p>\n<p><strong>In aggiunta, otteniamo la scalabilit\u00e0 automatica in base al carico,<\/strong> e paghiamo solo per le risorse utilizzate e solo nel momento in cui vengono utilizzate.<\/p>\n<p>Come qualsiasi tecnologia, Serverless ha anche dei difetti.<\/p>\n<p><em>Ad esempio, uno di questi difetti pu\u00f2 essere il tempo di avvio a freddo (in media fino a 1 secondo per linguaggi come JavaScript, Python, Go, Java, Ruby).<\/em><\/p>\n<p>Da un lato, il tempo di avvio a freddo dipende in realt\u00e0 da molte variabili: il linguaggio in cui \u00e8 scritta la funzione, il numero di librerie, la quantit\u00e0 di codice, la comunicazione con risorse aggiuntive (come database o server di autenticazione). Poich\u00e9 lo sviluppatore gestisce queste variabili, pu\u00f2 ridurre il tempo di avvio. D'altro canto, per\u00f2, lo sviluppatore non pu\u00f2 controllare il tempo di avvio del contenitore: qui tutto dipende dal fornitore.<\/p>\n<p>L'avvio a freddo pu\u00f2 trasformarsi in un avvio caldo quando la funzione riutilizza un contenitore gi\u00e0 attivato da un evento precedente. Questa situazione si verifica in tre casi:<\/p>\n<ul>\n<li>se i clienti utilizzano frequentemente il servizio e cresce il numero di richieste alla funzione;<\/li>\n<li>se il fornitore, la piattaforma o il framework consentono di mantenere attivi alcuni contenitori tutto il tempo;<\/li>\n<li>se lo sviluppatore attiva le funzioni con un timer (ad esempio, ogni 3 minuti).<\/li>\n<\/ul>\n<p>\nPer molte applicazioni, il cold start non \u00e8 un problema. Bisogna considerare il tipo e le esigenze del servizio. Un ritardo di avvio di un secondo non \u00e8 sempre critico per un'applicazione aziendale, ma pu\u00f2 diventarlo per i servizi medici. Probabilmente, in questo caso, l'approccio serverless non \u00e8 adatto.<\/p>\n<p><em>Un altro svantaggio del Serverless \u00e8 il breve tempo di vita della funzione (timeout, entro il quale la funzione deve essere eseguita).<\/em><\/p>\n<p>Tuttavia, se si lavora con attivit\u00e0 a lungo termine, \u00e8 possibile utilizzare un'architettura ibrida, combinando il Serverless con un'altra tecnologia.<\/p>\n<p><em>Non tutti i sistemi possono funzionare secondo lo schema Serverless.<\/em><\/p>\n<p>Alcune applicazioni continueranno a memorizzare dati e stato durante l'esecuzione. Alcune architetture rimarranno monolitiche, mentre alcune funzioni saranno a lungo termine. Tuttavia, proprio come un tempo le tecnologie cloud e poi i contenitori, il Serverless \u00e8 una tecnologia con un grande futuro.<\/p>\n<p>In questo contesto, vorrei passare gradualmente alla questione dell'applicazione dell'approccio Serverless.<\/p>\n<h2>Dal punto di vista dell'applicazione<\/h2>\n<p>\nNel 2018, la percentuale di utilizzo del Serverless <noindex><a rel=\"nofollow\" href=\"https:\/\/media.flexera.com\/documents\/rightscale-2019-state-of-the-cloud-report-from-flexera.pdf\">\u00e8 aumentata di un'ora e mezza.<\/a><\/noindex>. Tra le aziende che hanno gi\u00e0 implementato la tecnologia nei loro servizi ci sono giganti del mercato come Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. \u00c8 importante capire che Serverless non \u00e8 una panacea, ma uno strumento per risolvere determinati problemi:<\/p>\n<ul>\n<li><strong>Ridurre i tempi di inattivit\u00e0 delle risorse.<\/strong> Non \u00e8 necessario mantenere costantemente una macchina virtuale per i servizi con poche richieste.<\/li>\n<li><strong>Elaborare dati \"al volo\".<\/strong> Comprimi le immagini, ritagliare lo sfondo, cambiare la codifica dei video, lavorare con sensori IoT, eseguire operazioni matematiche.\n<\/li>\n<li><strong>\"Unire\" altri servizi.<\/strong> Un repository Git con programmi interni, un chatbot in Slack collegato a Jira e al calendario.<\/li>\n<li><strong>Bilanciare il carico.<\/strong> Qui ci soffermeremo pi\u00f9 dettagliatamente.<\/li>\n<\/ul>\n<p>\nSupponiamo che ci sia un servizio che riceve 50 persone. Per esso \u00e8 configurata una macchina virtuale con hardware debole. Periodicamente, il carico sul servizio aumenta notevolmente. Allora l'hardware debole non riesce a gestire la situazione.<\/p>\n<p>\u00c8 possibile integrare un bilanciatore di carico nel sistema che distribuisce il carico, ad esempio, su tre macchine virtuali. In questa fase non possiamo prevedere con esattezza il carico, quindi manteniamo in funzione un certo numero di risorse \"per precauzione\". Questo ci porta a pagare di pi\u00f9 per l'inattivit\u00e0. <\/p>\n<p>In una situazione del genere possiamo ottimizzare il sistema con un approccio ibrido: lasciamo una macchina virtuale dietro il bilanciatore di carico e impostiamo un collegamento a un Serverless Endpoint con funzioni. Se il carico supera una certa soglia, il bilanciatore attiva istanze di funzioni che si occupano di parte dell'elaborazione delle richieste.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a step\" src=\"\/wp-content\/uploads\/2019\/05\/79262c19faba29a4639a05e3097f7914.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nIn questo modo, il Serverless pu\u00f2 essere utilizzato dove \u00e8 necessario gestire un gran numero di richieste in modo non troppo frequente, ma intensivo. In questo caso, avviare pi\u00f9 funzioni per 15 minuti \u00e8 pi\u00f9 conveniente che mantenere sempre attiva una macchina virtuale o un server.<\/p>\n<p>Nonostante i vari vantaggi del calcolo senza server, \u00e8 fondamentale valutare prima di tutto la logica dell'applicazione e comprendere quali problemi il Serverless pu\u00f2 risolvere nel caso specifico. <\/p>\n<h2>Serverless e Selectel<\/h2>\n<p>\nIn Selectel abbiamo gi\u00e0 <noindex><a rel=\"nofollow\" href=\"https:\/\/kb.selectel.ru\/42078178.html?utm_source=habr.com&amp;amp;utm_medium=referral&amp;amp;utm_campaign=Functions_Serverless_Article_170519\">semplificato il lavoro con Kubernetes<\/a><\/noindex> attraverso il nostro pannello di controllo. Stiamo ora costruendo la nostra piattaforma FaaS. Vogliamo che gli sviluppatori possano affrontare le loro sfide con Serverless attraverso un'interfaccia conveniente e flessibile.<\/p>\n<p>Se hai idee su come dovrebbe essere la piattaforma FaaS ideale e come intendi utilizzare Serverless nei tuoi progetti, condividile nei commenti. Terr\u00e0 conto dei tuoi suggerimenti nello sviluppo della piattaforma.<br \/>\n\u00a0<br \/>\nMateriali utilizzati nell'articolo:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.rightscale.com\/lp\/state-of-the-cloud\">La percentuale di utilizzo di Serverless \u00e8 aumentata di 1,5 volte (rapporto completo di RightScale)<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/mikhail.io\/serverless\/coldstarts\/aws\/\">Come il tempo di avvio a freddo dipende dal linguaggio dell'applicazione<\/a><\/noindex><\/li>\n<\/ul>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/selectel\/blog\/452266\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. \u042d\u0442\u043e \u043d\u0435 \u00ab\u0443\u0431\u0438\u0439\u0446\u0430\u00bb \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0438 \u043d\u0435 \u043c\u0438\u043c\u043e\u043b\u0435\u0442\u043d\u044b\u0439 \u0442\u0440\u0435\u043d\u0434. \u042d\u0442\u043e \u043d\u043e\u0432\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044e \u0441\u0438\u0441\u0442\u0435\u043c \u0432 \u043e\u0431\u043b\u0430\u043a\u0435. \u0412 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043a\u043e\u0441\u043d\u0435\u043c\u0441\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b Serverless-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a\u0443\u044e \u0440\u043e\u043b\u044c \u0438\u0433\u0440\u0430\u0435\u0442 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440 Serverless-\u0443\u0441\u043b\u0443\u0433\u0438 \u0438 open-source \u043f\u0440\u043e\u0435\u043a\u0442\u044b. \u0412 \u043a\u043e\u043d\u0446\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f Serverless. \u042f \u0445\u043e\u0447\u0443 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f (\u0434\u0430 \u0445\u043e\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430). [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25594,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-33935","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/serverless-po-stoechkam\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Serverless \u043f\u043e \u0441\u0442\u043e\u0435\u0447\u043a\u0430\u043c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/serverless-po-stoechkam\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:55:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:55:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Serverless a colonnine | ProHoster","description":"Serverless non significa semplicemente assenza fisica di server.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/serverless-po-stoechkam","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Serverless \u043f\u043e \u0441\u0442\u043e\u0435\u0447\u043a\u0430\u043c | ProHoster","og:description":"Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/serverless-po-stoechkam","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:55:27+00:00","article:modified_time":"2019-10-31T18:55:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33935","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 17:17:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:31:21","updated":"2026-01-21 17:17:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/33935","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=33935"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/33935\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/25594"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=33935"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=33935"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=33935"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}