{"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 rack","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Serverless a rack\" 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 container n\u00e9 una moda passeggera. \u00c8 un nuovo approccio alla costruzione dei sistemi nel cloud. Nell'articolo di oggi tratteremo dell'architettura delle applicazioni Serverless, vedremo quale ruolo gioca il provider dei servizi Serverless e i progetti open-source. Alla fine parleremo delle questioni relative all'applicazione del Serverless.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nVoglio scrivere la parte server dell'applicazione (anche un negozio online). Potrebbe essere una chat, un servizio per la pubblicazione di contenuti o un bilanciatore di carico. In ogni caso, ci saranno molte preoccupazioni: dovr\u00f2 preparare l'infrastruttura, definire le dipendenze dell'applicazione e riflettere sul sistema operativo dell'host. Poi dovr\u00f2 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 usassimo container efimeri, in cui le dipendenze richieste sono gi\u00e0 preinstallate, e i container stessi sono isolati l'uno dall'altro e dal sistema operativo dell'host? Suddivideremmo il monolite in microservizi, ognuno dei quali pu\u00f2 essere aggiornato e scalato indipendentemente dagli altri. Mettendo il codice in un tale container, posso eseguirlo su qualsiasi infrastruttura. Gi\u00e0 meglio. <\/p>\n<p>E se non voglio configurare i container? Non voglio pensare alla scalabilit\u00e0 dell'applicazione. Non voglio 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 portare i prodotti sul mercato a velocit\u00e0 della luce. <\/p>\n<p>Questi pensieri mi hanno portato al calcolo serverless. In questo caso, Serverless significa <em>non assenza fisica di server, ma assenza di preoccupazioni nella gestione dell'infrastruttura.<\/em><\/p>\n<p>L'idea \u00e8 che la logica dell'applicazione venga suddivisa in funzioni indipendenti. Esse hanno una struttura basata su eventi. Ogni funzione esegue un \"micro-compito\". Tutto ci\u00f2 che \u00e8 richiesto allo sviluppatore \u00e8 caricare le funzioni nella console fornita dal provider cloud e abbinarle alle fonti di eventi. Il codice verr\u00e0 eseguito su richiesta in un container preparato automaticamente, e io pagher\u00f2 solo per il tempo di esecuzione. <\/p>\n<p>Vediamo ora come sar\u00e0 il processo di sviluppo di un'applicazione.<\/p>\n<h2>Dal punto di vista dello sviluppatore<\/h2>\n<p>\nIn precedenza abbiamo iniziato a parlare dell'app per il negozio online. Nel metodo tradizionale, la logica principale del sistema \u00e8 eseguita da un'applicazione monolitica. E il server con l'applicazione \u00e8 attivo costantemente, anche se non ci sono carichi di lavoro.<\/p>\n<p><strong>Per passare al serverless, suddividiamo l'applicazione in microtask.<\/strong> Per ciascuno di essi scriviamo la nostra funzione. Le funzioni sono indipendenti l'una dall'altra e non memorizzano informazioni sullo stato (stateless). Possono anche essere scritte in lingue diverse. Se una di esse 'crolla', l'applicazione non si fermer\u00e0 completamente. L'architettura dell'app sar\u00e0 simile a questa:<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a rack\" src=\"\/wp-content\/uploads\/2019\/05\/f62c5c08bbf587766198dbb807123273.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nLa suddivisione in funzioni nel Serverless \u00e8 simile a quella dei microservizi. Ma un microservizio pu\u00f2 eseguire pi\u00f9 compiti, mentre una funzione, in teoria, dovrebbe svolgere uno solo. Immaginiamo di dover raccogliere statistiche e restituirle su richiesta dell'utente. Nel metodo a microservizi, questo compito viene eseguito da un singolo servizio con due punti di ingresso: uno per la scrittura e uno per la lettura. Nella computazione serverless, saranno due funzioni distinte, non collegate tra loro. Lo sviluppatore risparmia risorse computazionali se, ad esempio, le statistiche vengono aggiornate pi\u00f9 frequentemente di quanto vengano scaricate. <\/p>\n<p>Le funzioni serverless devono essere eseguite in un breve intervallo di tempo (timeout), che \u00e8 determinato dal fornitore del servizio. Ad esempio, per AWS il timeout \u00e8 di 15 minuti. Quindi, le funzioni a lungo termine (long-lived) dovranno essere adattate ai requisiti - questo \u00e8 ci\u00f2 che differenzia il Serverless dalle altre tecnologie popolari oggi (container e Platform as a Service).<\/p>\n<p><strong>Assegniamo un evento a ciascuna funzione.<\/strong> L'evento \u00e8 un trigger per l'azione:<\/p>\n<p><strong>Evento<\/strong><br \/>\n<strong>L'azione che esegue la funzione<\/strong><\/p>\n<p>Un'immagine del prodotto \u00e8 stata caricata nello storage<br \/>\nComprimere l'immagine e caricarla nel catalogo<\/p>\n<p>L'indirizzo del negozio fisico \u00e8 stato aggiornato nel database<br \/>\nCaricare una nuova posizione sulle mappe<\/p>\n<p>Il cliente paga per il prodotto<br \/>\nAvviare il processo di pagamento<\/p>\n<p>Gli eventi possono includere richieste HTTP, dati in streaming, code di messaggi e cos\u00ec via. Le fonti degli eventi sono le modifiche o l'emergere di dati. Inoltre, le funzioni possono essere attivate tramite un timer.<\/p>\n<p>L'architettura \u00e8 stata sviluppata, e l'app \u00e8 quasi diventata serverless. Proseguiamo verso il fornitore del servizio.<\/p>\n<h2>Dal lato del fornitore<\/h2>\n<p>\nDi solito, i calcoli serverless sono offerti dai fornitori di servizi cloud. Vengono chiamati in vari modi: Azure Functions, AWS Lambda, Google Cloud Functions, IBM Cloud Functions. <\/p>\n<p>Utilizzeremo il servizio tramite console o area personale 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 console web,<\/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 impostiamo anche gli eventi che attivano la funzione. I set di eventi possono variare tra i diversi fornitori.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a rack\" 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 archiviato lato fornitore.<\/li>\n<li>Quando si verifica un evento, i contenitori con l'ambiente preparato vengono automaticamente attivati sul server. Ogni istanza della funzione ha il proprio contenitore isolato.<\/li>\n<li>Dall'archivio, la funzione viene inviata al contenitore, elaborata e restituisce il risultato.<\/li>\n<li>Il numero di eventi paralleli cresce \u2015 cresce anche il numero di contenitori. Il sistema si scala automaticamente. Se gli utenti non richiedono la funzione, essa rimarr\u00e0 inattiva.<\/li>\n<li>Il fornitore imposta il tempo di inattivit\u00e0 dei contenitori \u2015 se entro questo tempo le funzioni non si attivano, il contenitore viene distrutto.<\/li>\n<\/ol>\n<p>\nIn questo modo otteniamo una soluzione Serverless \"pronta all'uso\". Pagheremo per il servizio con il modello pay-as-you-go e solo per le funzioni utilizzate, e solo per il tempo in cui sono state utilizzate.<\/p>\n<p>Per introdurre gli sviluppatori al servizio, i fornitori offrono fino a 12 mesi di prova gratuita, ma limitano il tempo totale di calcolo, il numero di richieste al mese, i fondi o le risorse consumate.<\/p>\n<p>Il principale vantaggio di lavorare con un fornitore \u00e8 la possibilit\u00e0 di non preoccuparsi dell'infrastruttura (server, macchine virtuali, contenitori). Da parte sua, il fornitore pu\u00f2 realizzare il FaaS sia con sviluppi proprietari che con strumenti open-source. Di questo parleremo in seguito.<\/p>\n<h2>Dal lato open source<\/h2>\n<p>\nNegli ultimi due anni, la comunit\u00e0 open-source ha lavorato attivamente sugli strumenti Serverless. In particolare, i principali attori del mercato contribuiscono allo sviluppo delle piattaforme serverless:<\/p>\n<ul>\n<li><strong>Google<\/strong> offre agli sviluppatori il proprio 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 poi \u00e8 diventato 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>\nI progetti stanno avanzando anche nel campo dei 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> si distribuiscono all'interno di cluster Kubernetes predisposti 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 controllore, preparando su richiesta un ambiente di esecuzione all'interno del cluster e poi eseguendo la funzione l\u00ec.<\/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 per l'esecuzione della funzione (il valore predefinito \u00e8 di 180 secondi). Fission, nel tentativo di risolvere il problema del cold start, offre la possibilit\u00e0 di mantenere parte dei container sempre attivi (anche se questo comporta costi per risorse inattive). OpenFaaS, d'altra parte, propone una gamma di trigger per tutti i gusti: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs e altri.<\/p>\n<p>Le istruzioni per iniziare si possono trovare nella documentazione ufficiale dei framework. Lavorare con essi richiede una serie di abilit\u00e0 maggiori rispetto a quelle necessarie per utilizzare un provider, come minimo la capacit\u00e0 di avviare un cluster Kubernetes tramite CLI. Al massimo, includere nell'attivit\u00e0 altri strumenti open-source (ad esempio, un gestore di code Kafka).<\/p>\n<p>Indipendentemente dal metodo con cui lavoriamo con Serverless \u2014 tramite un provider o utilizzando open-source \u2014 otterremo una serie di vantaggi e svantaggi del metodo Serverless.<\/p>\n<h2>Dal punto di vista dei vantaggi e degli svantaggi<\/h2>\n<p>\nServerless sviluppa le idee dell'infrastruttura basata su container e dell'approccio a microservizi, grazie ai quali i team possono lavorare in modalit\u00e0 multilingue, senza vincolarsi a una sola piattaforma. La costruzione del sistema diventa pi\u00f9 semplice e la correzione degli errori \u00e8 pi\u00f9 facile. L'architettura a microservizi consente di aggiungere nuove funzionalit\u00e0 al sistema molto pi\u00f9 rapidamente rispetto a un'applicazione monolitica.<\/p>\n<p><strong>Serverless riduce ulteriormente i tempi di sviluppo,<\/strong> permettendo allo sviluppatore di concentrarsi esclusivamente sulla logica di business dell'applicazione e sulla scrittura del codice. Di conseguenza, i tempi di lancio delle applicazioni sul mercato si riducono.<\/p>\n<p><strong>In aggiunta, otteniamo il provisioning automatico in base al carico,<\/strong> e paghiamo solo per le risorse effettivamente utilizzate e solo nel momento in cui esse vengono utilizzate.<\/p>\n<p>Come ogni tecnologia, Serverless ha i suoi svantaggi.<\/p>\n<p><em>Ad esempio, uno di questi svantaggi pu\u00f2 essere il tempo di cold start (in media fino a 1 secondo per linguaggi come JavaScript, Python, Go, Java, Ruby).<\/em><\/p>\n<p>Da un lato, in realt\u00e0, il tempo di avvio a freddo dipende da molte variabili: il linguaggio in cui \u00e8 scritta la funzione, il numero di librerie, il volume di codice, la comunicazione con risorse esterne (database o server di autenticazione). Poich\u00e9 lo sviluppatore gestisce queste variabili, pu\u00f2 ridurre il tempo di avvio. D'altra parte, lo sviluppatore non pu\u00f2 controllare il tempo di avvio del container: qui tutto dipende dal fornitore.<\/p>\n<p>L'avvio a freddo pu\u00f2 diventare caldo quando la funzione riutilizza un container avviato da un evento precedente. Questa situazione si verificher\u00e0 in tre casi:<\/p>\n<ul>\n<li>se i clienti utilizzano spesso il servizio e cresce il numero di richieste alla funzione;<\/li>\n<li>se il fornitore, la piattaforma o il framework permettono di mantenere parte dei container sempre attivi;<\/li>\n<li>se lo sviluppatore avvia le funzioni con un timer (ad esempio, ogni 3 minuti).<\/li>\n<\/ul>\n<p>\nPer molte applicazioni, l'avvio a freddo non \u00e8 un problema. Qui bisogna partire dal tipo e dagli obiettivi del servizio. Un ritardo di avvio di un secondo non \u00e8 sempre critico per un'applicazione commerciale, ma pu\u00f2 diventare critico per i servizi medici. Probabilmente, in questo caso, l'approccio serverless non sar\u00e0 pi\u00f9 adeguato.<\/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 prevede di lavorare con attivit\u00e0 a lungo termine, si pu\u00f2 utilizzare un'architettura ibrida: combinare Serverless con un'altra tecnologia.<\/p>\n<p><em>Non tutti i sistemi saranno in grado di operare secondo uno schema Serverless.<\/em><\/p>\n<p>Alcune applicazioni continueranno a memorizzare dati e stato durante l'esecuzione. Alcune architetture rimarranno monolitiche e alcune funzioni saranno a lungo termine. Tuttavia, (come un tempo le tecnologie cloud e successivamente i container), Serverless \u00e8 una tecnologia con un grande futuro.<\/p>\n<p>In questo contesto, mi piacerebbe passare delicatamente 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 una volta e mezza<\/a><\/noindex>. Tra le aziende che hanno gi\u00e0 implementato la tecnologia nei propri servizi ci sono colossi del mercato come Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. Va notato che Serverless non \u00e8 una panacea, ma uno strumento per risolvere un determinato insieme di compiti:<\/p>\n<ul>\n<li><strong>Ridurre il fermo delle risorse.<\/strong> Non \u00e8 necessario mantenere costantemente una macchina virtuale per servizi a cui si accede poco.<\/li>\n<li><strong>Elaborare i dati \"al volo\".<\/strong> Comprimere 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> Repository Git con programmi interni, chatbot in Slack con Jira e calendario.<\/li>\n<li><strong>Bilanciare il carico.<\/strong> Qui ci fermeremo in modo pi\u00f9 dettagliato.<\/li>\n<\/ul>\n<p>\nSupponiamo che ci sia un servizio a cui accedono 50 persone. Per questo c'\u00e8 una macchina virtuale con hardware debole. Periodicamente, il carico del servizio aumenta diverse volte. In quel caso, l'hardware debole non riesce a gestire.<\/p>\n<p>Si pu\u00f2 integrare un bilanciatore nel sistema che distribuir\u00e0 il carico, ad esempio, su tre macchine virtuali. A questo punto, non possiamo prevedere con precisione il carico, quindi manteniamo un certo numero di risorse attive \"di riserva\". E paghiamo di pi\u00f9 per il tempo di inattivit\u00e0. <\/p>\n<p>In tale situazione, possiamo ottimizzare il sistema tramite un approccio ibrido: lasciamo una macchina virtuale dietro il bilanciatore di carico e mettiamo un collegamento a un Endpoint Serverless con funzioni. Se il carico supera una certa soglia, il bilanciatore avvia le istanze delle funzioni che si occupano di parte dell'elaborazione delle richieste.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a rack\" 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 si deve trattare un grande numero di richieste, non troppo frequentemente ma in modo intensivo. In questo caso, avviare pi\u00f9 funzioni per 15 minuti \u00e8 pi\u00f9 vantaggioso che mantenere continuamente una macchina virtuale o un server.<\/p>\n<p>Nonostante tutti i vantaggi del calcolo serverless, prima di implementarlo \u00e8 fondamentale valutare la logica dell'applicazione e capire quali compiti 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. Ora stiamo costruendo la nostra piattaforma FaaS. Vogliamo che gli sviluppatori possano risolvere i loro problemi utilizzando i Serverless attraverso un'interfaccia comoda e flessibile.<\/p>\n<p>Se hai idee su come dovrebbe essere la piattaforma FaaS ideale e come desideri utilizzare i Serverless nei tuoi progetti, condividile nei commenti. Terremo conto dei tuoi suggerimenti durante lo 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 dei Serverless \u00e8 aumentata di un'altra met\u00e0 (rapporto completo RightScale)<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/mikhail.io\/serverless\/coldstarts\/aws\/\">In che modo 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.1.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.1.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 per strati | ProHoster","description":"Serverless non significa 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}]}}