{"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\/da\/blog\/administrirovanie\/serverless-po-stoechkam","title":{"rendered":"Serverless i sm\u00e5 bidder","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Serverless i sm\u00e5 bidder\" src=\"\/wp-content\/uploads\/2019\/05\/cea6dc9da0a3a1b0241246cdf3eba900.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nServerless betyder ikke fysisk frav\u00e6r af servere. Det er ikke en \"dr\u00e6ber\" til containere eller en kortvarig trend. Det er en ny tilgang til opbygning af systemer i skyen. I dagens artikel vil vi se p\u00e5 arkitekturen af Serverless-applikationer, overveje hvilken rolle Serverless-tjenesteudbyderen spiller, samt open-source projekter. I slutningen vil vi tale om anvendelsen af Serverless.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nJeg \u00f8nsker at skrive backend-delen af en applikation (selv en online-butiks). Det kan v\u00e6re en chat, en service til publicering af indhold eller en belastningsbalancer. Uanset hvad vil der v\u00e6re en del hovedpine: jeg skal forberede infrastrukturen, definere afh\u00e6ngighederne af applikationen, t\u00e6nke over operativsystemet p\u00e5 v\u00e6rten. Derefter skal jeg opdatere sm\u00e5 komponenter, som ikke p\u00e5virker resten af monolitten. Og vi skal ikke glemme skalerbarheden under belastning.<\/p>\n<p>Hvad hvis jeg tager efemere containere, hvor de n\u00f8dvendige afh\u00e6ngigheder allerede er forudinstalleret, og hvor containerne er isolerede fra hinanden og fra v\u00e6rts-OS? Vi kan opdele monolitten i mikrotjenester, hver af dem kan opdateres og skaleres uafh\u00e6ngigt af de andre. Ved at placere koden i en s\u00e5dan container kan jeg k\u00f8re den p\u00e5 enhver infrastruktur. Det er allerede bedre. <\/p>\n<p>Og hvis man ikke \u00f8nsker at konfigurere containere? Ikke \u00f8nsker at t\u00e6nke p\u00e5 skalerbarhed af applikationen. Ikke \u00f8nsker at betale for inaktive startede containere, n\u00e5r belastningen p\u00e5 tjenesten er minimal. Man \u00f8nsker at skrive kode. Fokusere p\u00e5 forretningslogik og bringe produkter til markedet med lysens hastighed. <\/p>\n<p>Disse tanker f\u00f8rte mig til serverl\u00f8se beregninger. Serverless betyder i dette tilf\u00e6lde <em>ikke fysisk frav\u00e6r af servere, men frav\u00e6r af hovedpine ved at administrere infrastrukturen.<\/em><\/p>\n<p>Ideen er, at applikationens logik opdeles i uafh\u00e6ngige funktioner. De har en begivenhedsbaseret struktur. Hver funktion udf\u00f8rer en \"mikroopgave\". Alt hvad der kr\u00e6ves af udvikleren er at uploade funktionerne i den cloud-udbyderens console og koble dem til begivenhedskilder. Koden vil blive k\u00f8rt ved anmodning i en automatisk forberedt container, og jeg betaler kun for k\u00f8rselstiden. <\/p>\n<p>Lad os finde ud af, hvordan udviklingsprocessen for applikationen nu vil se ud.<\/p>\n<h2>Fra udviklerens side<\/h2>\n<p>\nTidligere begyndte vi at tale om applikationen til onlinebutikken. I den traditionelle tilgang udf\u00f8rer en monolitisk applikation hovedlogikken i systemet. Serveren med applikationen k\u00f8rer konstant, selv n\u00e5r der ikke er nogen belastning.<\/p>\n<p><strong>For at overg\u00e5 til serverless opdeler vi applikationen i mikroupgaver.<\/strong> For hver enkelt skriver vi en funktion. Funktionerne er uafh\u00e6ngige af hinanden og gemmer ikke tilstand (stateless). De kan endda v\u00e6re skrevet i forskellige sprog. Hvis en af dem \"g\u00e5r ned\", stopper applikationen ikke helt. Applikationens arkitektur vil se s\u00e5dan ud:<\/p>\n<p><img decoding=\"async\" alt=\"Serverless i sm\u00e5 bidder\" src=\"\/wp-content\/uploads\/2019\/05\/f62c5c08bbf587766198dbb807123273.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nOpdeling i funktioner i Serverless ligner arbejdet med mikrotjenester. Men en mikrotjeneste kan udf\u00f8re flere opgaver, mens en funktion ideelt set skal udf\u00f8re \u00e9n. Lad os forestille os, at opgaven er at indsamle statistik og pr\u00e6sentere den p\u00e5 anmodning fra brugeren. I den mikrotjeneste-baserede tilgang udf\u00f8rer \u00e9n tjeneste opgaven med to indgangspunkter: til skrivning og til l\u00e6sning. I serverless beregninger vil dette v\u00e6re to forskellige funktioner, der ikke er forbundet med hinanden. Udvikleren sparer beregningsressourcer, hvis for eksempel statistikken opdateres oftere, end den eksporteres. <\/p>\n<p>Serverless-funktioner skal udf\u00f8res inden for en kort tidsramme (timeout), som defineres af tjenesteudbyderen. For eksempel er timeout for AWS 15 minutter. Det betyder, at langvarige funktioner (long-lived) skal \u00e6ndres i henhold til kravene - dette adskiller Serverless fra andre popul\u00e6re teknologier i dag (containere og Platform as a Service).<\/p>\n<p><strong>Vi tildeler et h\u00e6ndelse til hver funktion.<\/strong> En h\u00e6ndelse er en trigger for handling:<\/p>\n<p><strong>Begivenhed<\/strong><br \/>\n<strong>Handlingen, som funktionen udf\u00f8rer<\/strong><\/p>\n<p>Et billede af produktet er blevet uploadet til lageret<br \/>\nKompresser billedet og upload det til kataloget<\/p>\n<p>Adressen til den fysiske butik er blevet opdateret i databasen<br \/>\nIndl\u00e6s den nye placering p\u00e5 kortene<\/p>\n<p>Klienten betaler for varen<br \/>\nStart behandling af betalingen<\/p>\n<p>H\u00e6ndelser kan v\u00e6re HTTP-anmodninger, streamingdata, meddelelsesk\u00f8er osv. H\u00e6ndelseskilder er \u00e6ndringer eller tilf\u00f8jelser af data. Derudover kan funktioner startes p\u00e5 en timer.<\/p>\n<p>Arkitekturen er arbejdet igennem, og applikationen er n\u00e6sten blevet serverless. Vi g\u00e5r videre til tjenesteudbyderen.<\/p>\n<h2>Fra tjenesteudgiverens side<\/h2>\n<p>\nNormalt tilbydes serverless beregninger af cloud-tjenesteudbydere. De kaldes forskellige: Azure Functions, AWS Lambda, Google Cloud Functions, IBM Cloud Functions. <\/p>\n<p>Vi vil bruge tjenesten gennem konsollen eller udbyderens brugerpanel. Funktionskoden kan uploades p\u00e5 en af f\u00f8lgende m\u00e5der:<\/p>\n<ul>\n<li>skrive koden i de indbyggede redakt\u00f8rer via webkonsollen,<\/li>\n<li>uploade en arkivfil med koden,<\/li>\n<li>arbejde med offentlige eller private git-repositories.<\/li>\n<\/ul>\n<p>\nHer indstiller vi ogs\u00e5 de h\u00e6ndelser, der udl\u00f8ser funktionen. Uds\u00e6tningerne for h\u00e6ndelser kan variere mellem forskellige udbydere.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless i sm\u00e5 bidder\" src=\"\/wp-content\/uploads\/2019\/05\/98676fa23a9911aae5758ecdb2cd9a03.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Udbyderen har bygget og automatiseret et System Function as a Service (FaaS) p\u00e5 deres infrastruktur:<\/p>\n<ol>\n<li>Funktionskoden sendes til opbevaring hos udbyderen.<\/li>\n<li>N\u00e5r der opst\u00e5r en h\u00e6ndelse, startes containere automatisk p\u00e5 serveren med et forberedt milj\u00f8. Hver instans af funktionen har sin egen isolerede container.<\/li>\n<li>Fra opbevaringen sendes funktionen til containere, beregnes og returnerer resultatet.<\/li>\n<li>Antallet af parallelle h\u00e6ndelser stiger\u2014antallet af containere \u00f8ges. Systemet skalerer automatisk. Hvis brugerne ikke tilg\u00e5r funktionen, vil den v\u00e6re inaktiv.<\/li>\n<li>Udbyderen angiver tiden for inaktivitet af containerne\u2014hvis funktionerne ikke dukker op i containeren inden for denne tid, vil den blive destrueret.<\/li>\n<\/ol>\n<p>\nDermed f\u00e5r vi Serverless \u00abud af boksen\u00bb. Vi betaler for tjenesten efter pay-as-you-go modellen og kun for de funktioner, der anvendes, og kun for den tid, de blev brugt.<\/p>\n<p>For at introducere udviklerne til tjenesten tilbyder udbyderne op til 12 m\u00e5neder gratis test, men begr\u00e6nser den samlede beregningstid, antallet af foresp\u00f8rgsler pr. m\u00e5ned, midler eller ressourceforbrug.<\/p>\n<p>Den st\u00f8rste fordel ved at arbejde med en udbyder er muligheden for ikke at bekymre sig om infrastrukturen (servere, virtuelle maskiner, containere). Udbyderen kan implementere FaaS b\u00e5de med egne udviklinger og ved hj\u00e6lp af open-source v\u00e6rkt\u00f8jer. Det er, hvad vi vil komme ind p\u00e5 n\u00e6ste gang.<\/p>\n<h2>Fra open source siden<\/h2>\n<p>\nI de seneste par \u00e5r har open-source samfundet arbejdet aktivt med Serverless v\u00e6rkt\u00f8jer. Derudover bidrager de st\u00f8rste akt\u00f8rer p\u00e5 markedet til udviklingen af de serverless platforme:<\/p>\n<ul>\n<li><strong>Google<\/strong> tilbyder udviklerne deres open-source v\u00e6rkt\u00f8j\u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/knative\/\">Knative<\/a><\/noindex>. IBM, RedHat, Pivotal og SAP har deltaget i udviklingen;<\/li>\n<li><strong>IBM<\/strong> har arbejdet p\u00e5 Serverless-platformen <noindex><a rel=\"nofollow\" href=\"https:\/\/openwhisk.apache.org\/\">OpenWhisk<\/a><\/noindex>, som senere blev et projekt hos Apache Foundation;<\/li>\n<li><strong>Microsoft<\/strong> har delvist \u00e5bnet koden til platformen <noindex><a rel=\"nofollow\" href=\"https:\/\/azure.microsoft.com\/en-us\/services\/functions\/\">Azure Functions<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nUdviklinger finder ogs\u00e5 sted inden for serverless-rammer. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubeless.io\/\">Kubeless<\/a><\/noindex> og <noindex><a rel=\"nofollow\" href=\"https:\/\/fission.io\/\">Fission<\/a><\/noindex> udrulles inden for forberedte Kubernetes-klynger, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openfaas.com\/\">OpenFaaS<\/a><\/noindex> fungerer b\u00e5de med Kubernetes og Docker Swarm. Rammeverket fungerer som en slags controller, der forbereder en udf\u00f8relsesmilj\u00f8 inden for klyngen p\u00e5 anmodning og derefter k\u00f8rer funktionen der.<\/p>\n<p>Rammerne giver mulighed for at konfigurere v\u00e6rkt\u00f8jet efter egne behov. I Kubeless kan udvikleren indstille timeout for funktionen (standardv\u00e6rdi er 180 sekunder). Fission tilbyder i et fors\u00f8g p\u00e5 at l\u00f8se problemet med kold opstart at holde nogle containere k\u00f8rende hele tiden (selvom det medf\u00f8rer omkostninger til ressourcer). OpenFaaS tilbyder en r\u00e6kke udl\u00f8sere i forskellige former: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs osv.<\/p>\n<p>Instruktioner til at komme i gang kan findes i de officielle dokumentationer for rammerne. Arbejde med dem kr\u00e6ver lidt flere f\u00e6rdigheder end ved arbejde med en udbyder \u2013 det kr\u00e6ver mindst evnen til at starte en Kubernetes-klynge via CLI. Det maksimale vil v\u00e6re at inkludere andre open-source v\u00e6rkt\u00f8jer (f.eks. k\u00f8administratoren Kafka) i arbejdet.<\/p>\n<p>Uanset hvilken metode vi arbejder med Serverless \u2013 gennem en udbyder eller ved hj\u00e6lp af open-source \u2013 vil vi opleve en r\u00e6kke fordele og ulemper ved Serverless-tilgangen.<\/p>\n<h2>Fra perspektivet af fordele og ulemper<\/h2>\n<p>\nServerless udvikler id\u00e9erne om containerinfrastruktur og mikroservices-tilgangen, hvor teams kan arbejde i et flersproget milj\u00f8 uden at v\u00e6re bundet til \u00e9n platform. Opbygningen af systemet forenkles, og det bliver lettere at rette fejl. Mikroservice-arkitekturen tillader hurtigere tilf\u00f8jelse af ny funktionalitet til systemet end ved en monolitisk applikation.<\/p>\n<p><strong>Serverless reducerer udviklingstiden yderligere,<\/strong> hvilket giver udvikleren mulighed for at fokusere udelukkende p\u00e5 applikationens forretningslogik og kodeudvikling. Som f\u00f8lge heraf forkortes tiden for udviklingen til markedet.<\/p>\n<p><strong>Som en bonus f\u00e5r vi automatisk skalering efter belastning,<\/strong> og vi betaler kun for de anvendte ressourcer og kun den tid, hvor de anvendes.<\/p>\n<p>Som enhver teknologi har Serverless ulemper.<\/p>\n<p><em>For eksempel kan en s\u00e5dan ulempe v\u00e6re kold opstartstid (gennemsnitligt op til 1 sekund for sprog som JavaScript, Python, Go, Java, Ruby).<\/em><\/p>\n<p>P\u00e5 den ene side afh\u00e6nger tiden for kold start i praksis af mange variable: sproget, som funktionen er skrevet i, antallet af biblioteker, m\u00e6ngden af kode, kommunikation med ekstra ressourcer (som databaser eller autentifikationsservere). Da udvikleren styrer disse variable, kan han forkorte starttiden. Men p\u00e5 den anden side kan udvikleren ikke styre containerens opstartstid \u2014 her afh\u00e6nger alt af udbyderen.<\/p>\n<p>En kold start kan blive til en varm, n\u00e5r funktionen genbruger den container, der blev startet af den forrige event. En s\u00e5dan situation opst\u00e5r i tre tilf\u00e6lde:<\/p>\n<ul>\n<li>hvis kunderne ofte bruger tjenesten, og antallet af opkald til funktionen stiger;<\/li>\n<li>hvis udbyderen, platformen eller rammev\u00e6rket tillader, at nogle containere holdes k\u00f8rende hele tiden;<\/li>\n<li>hvis udvikleren starter funktioner efter et tids interval (lad os sige, hver 3. minut).<\/li>\n<\/ul>\n<p>\nFor mange applikationer er kold start ikke et problem. Her skal man tage udgangspunkt i typen og opgaverne for tjenesten. En forsinkelse p\u00e5 et sekund er ikke altid kritisk for en forretningsapplikation, men kan blive kritisk for medicinske tjenesteydelser. Sandsynligvis er serverless-tilgangen ikke l\u00e6ngere tilstr\u00e6kkelig i dette tilf\u00e6lde.<\/p>\n<p><em>Den n\u00e6ste ulempe ved Serverless er den korte livscyklus for funktionen (timeout, inden funktionen skal udf\u00f8res).<\/em><\/p>\n<p>Men hvis man skal arbejde med langvarige opgaver, kan man bruge en hybridarkitektur \u2014 kombinere Serverless med en anden teknologi.<\/p>\n<p><em>Ikke alle systemer vil kunne arbejde efter Serverless-modellen.<\/em><\/p>\n<p>Nogle applikationer vil stadig gemme data og tilstand under udf\u00f8relsen. Nogle arkitekturer vil forblive monolitiske, og nogle funktioner vil v\u00e6re langvarige. Men (ligesom cloud-teknologi engang og senere containere), er Serverless en teknologi med en stor fremtid.<\/p>\n<p>I denne sammenh\u00e6ng vil jeg gerne glidende overg\u00e5 til sp\u00f8rgsm\u00e5let om anvendelsen af Serverless-tilgangen.<\/p>\n<h2>Fra et anvendelsesperspektiv<\/h2>\n<p>\nI 2018 steg procentdelen af brugen af Serverless <noindex><a rel=\"nofollow\" href=\"https:\/\/media.flexera.com\/documents\/rightscale-2019-state-of-the-cloud-report-from-flexera.pdf\">med halvanden gang<\/a><\/noindex>. Blandt de virksomheder, der allerede har implementeret teknologien i deres tjenester, er store markedsakt\u00f8rer som Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. Det er samtidig vigtigt at forst\u00e5, at Serverless ikke er en panacea, men et v\u00e6rkt\u00f8j til l\u00f8sning af bestemte opgaver:<\/p>\n<ul>\n<li><strong>At reducere inaktivitet af ressourcer.<\/strong> Det er ikke n\u00f8dvendigt konstant at have en virtuel maskine k\u00f8rende for tjenester, som der kun er f\u00e5 henvendelser til.<\/li>\n<li><strong>Behandle data \"on the fly\".<\/strong> Komprimere billeder, fjerne baggrund, \u00e6ndre videoformater, arbejde med IoT-sensorer, udf\u00f8re matematiske operationer.\n<\/li>\n<li><strong>\"Sammens\u00e6tte\" andre tjenester sammen.<\/strong> Git-repositorium med interne programmer, chatbot i Slack med Jira og kalender.<\/li>\n<li><strong>Balancerer belastningen.<\/strong> Her stopper vi op og ser n\u00e6rmere p\u00e5 det.<\/li>\n<\/ul>\n<p>\nLad os sige, at der er en tjeneste, der f\u00e5r 50 bes\u00f8gende. Der k\u00f8rer en virtuel maskine med svag hardware til den. Af og til stiger belastningen p\u00e5 tjenesten med flere gange. S\u00e5 kan svag hardware ikke klare det.<\/p>\n<p>Vi kan tilf\u00f8je en balanceringsenhed til systemet, som vil fordele belastningen, lad os sige, p\u00e5 tre virtuelle maskiner. P\u00e5 dette tidspunkt kan vi ikke pr\u00e6cist forudsige belastningen, s\u00e5 vi holder en vis m\u00e6ngde ressourcer k\u00f8rende \"i reserve\". Og vi betaler for spild. <\/p>\n<p>I en s\u00e5dan situation kan vi optimere systemet gennem en hybrid tilgang: Vi lader en virtuel maskine st\u00e5 bag balanceringsenheden og s\u00e6tter et link til Serverless Endpoint med funktioner. Hvis belastningen overstiger t\u00e6rsklen, starter balanceringsenheden funktionseksemplarer, der tager sig af en del af behandlingen af anmodninger.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless i sm\u00e5 bidder\" src=\"\/wp-content\/uploads\/2019\/05\/79262c19faba29a4639a05e3097f7914.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nP\u00e5 denne m\u00e5de kan Serverless bruges der, hvor man ikke n\u00f8dvendigvis ofte, men intensivt skal h\u00e5ndtere et stort antal anmodninger. I dette tilf\u00e6lde er det mere \u00f8konomisk at starte flere funktioner i 15 minutter end konstant at have en virtuel maskine eller server k\u00f8rende.<\/p>\n<p>P\u00e5 trods af alle fordelene ved serverl\u00f8se beregninger, b\u00f8r man f\u00f8rst vurdere applikationens logik og forst\u00e5, hvilke opgaver Serverless kan l\u00f8se i den specifikke situation, f\u00f8r man implementerer det. <\/p>\n<h2>Serverless og Selectel<\/h2>\n<p>\nHos Selectel har vi allerede <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\">forenklet arbejdet med Kubernetes<\/a><\/noindex> gennem vores kontrolpanel. Nu bygger vi vores egen FaaS-platform. Vi \u00f8nsker, at udviklere kan l\u00f8se deres opgaver med Serverless gennem et nemt og fleksibelt interface.<\/p>\n<p>Hvis du har id\u00e9er til, hvordan den ideelle FaaS-platform skal se ud, og hvordan du vil bruge Serverless i dine projekter, s\u00e5 del dem i kommentarerne. Vi vil tage dine \u00f8nsker med i udviklingen af platformen.<br \/>\n\u00a0<br \/>\nMaterialer anvendt i artiklen:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.rightscale.com\/lp\/state-of-the-cloud\">Procentdelen af brugen af Serverless er steget med halvanden gang (fuld rapport fra RightScale)<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/mikhail.io\/serverless\/coldstarts\/aws\/\">Hvordan tiden for kold start afh\u00e6nger af applikationssprog<\/a><\/noindex><\/li>\n<\/ul>\n<p>Kilde: <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.3 - 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\/da\/blog\/administrirovanie\/serverless-po-stoechkam\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\/da\/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 i moduler | ProHoster","description":"Serverless handler ikke om fysisk frav\u00e6r af servere.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/serverless-po-stoechkam","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\/da\/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\/da\/wp-json\/wp\/v2\/posts\/33935","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=33935"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/33935\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/25594"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=33935"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=33935"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=33935"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}