{"id":55881,"date":"2020-01-31T00:00:00","date_gmt":"2020-01-30T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij"},"modified":"2020-02-18T14:04:02","modified_gmt":"2020-02-18T11:04:02","slug":"sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","title":{"rendered":"Tipy a zdroje informac\u00ed pro vytv\u00e1\u0159en\u00ed bezserverov\u00fdch aplikac\u00ed","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Tipy a zdroje informac\u00ed pro vytv\u00e1\u0159en\u00ed bezserverov\u00fdch aplikac\u00ed\" src=\"\/wp-content\/uploads\/2020\/01\/a29ca83a52a809d148aebbd6821d4ef9.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nI kdy\u017e bezserverov\u00e9 technologie v posledn\u00edch letech rychle z\u00edsk\u00e1vaj\u00ed na popularit\u011b, st\u00e1le s nimi souvis\u00ed \u0159ada myln\u00fdch p\u0159edstav a obav. Z\u00e1vislost na dodavateli, n\u00e1stroje, \u0159\u00edzen\u00ed n\u00e1klad\u016f, studen\u00fd start, monitoring a \u017eivotn\u00ed cyklus v\u00fdvoje \u2014 to v\u0161echno jsou t\u00e9mata, o kter\u00fdch se aktivn\u011b diskutuje, kdy\u017e se hovo\u0159\u00ed o bezserverov\u00fdch technologi\u00edch. V tomto \u010dl\u00e1nku prozkoum\u00e1me n\u011bkter\u00e1 z t\u011bchto t\u00e9mat a tak\u00e9 se pod\u011bl\u00edme o tipy a odkazy na u\u017eite\u010dn\u00e9 informa\u010dn\u00ed zdroje, d\u00edky nim\u017e si nov\u00e1\u010dci mohou vytvo\u0159it v\u00fdkonn\u00e9, flexibiln\u00ed a ekonomick\u00e9 bezserverov\u00e9 aplikace.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Myln\u00e9 p\u0159edstavy o bezserverov\u00fdch technologi\u00edch<\/h2>\n<p>\nMnoz\u00ed se domn\u00edvaj\u00ed, \u017ee bezserverovost a \"on-premises\" zpracov\u00e1n\u00ed dat (<noindex><a rel=\"nofollow\" href=\"https:\/\/martinfowler.com\/articles\/serverless.html#unpacking-faas\">Functions as a Service<\/a><\/noindex>, FaaS) jsou t\u00e9m\u011b\u0159 jedno a tot\u00e9\u017e. To znamen\u00e1, \u017ee rozd\u00edl nen\u00ed p\u0159\u00edli\u0161 velk\u00fd a vyplat\u00ed se novinku zav\u00e9st. A\u010dkoli AWS Lambda byla jednou z \u201ehv\u011bzd\u201c rozkv\u011btu bezserverov\u00fdch technologi\u00ed a jedn\u00edm z nejpopul\u00e1rn\u011bj\u0161\u00edch prvk\u016f bezserverov\u00e9 architektury, p\u0159edstavuje tato architektura n\u011bco v\u00edc ne\u017e jen FaaS.<\/p>\n<p>Hlavn\u00edm principem bezserverov\u00fdch technologi\u00ed je, \u017ee se nemus\u00edte starat o \u0159\u00edzen\u00ed a \u0161k\u00e1lov\u00e1n\u00ed infrastruktury, plat\u00edte pouze za to, co pou\u017e\u00edv\u00e1te. Pod tyto krit\u00e9ria spad\u00e1 \u0159ada slu\u017eeb \u2014 AWS DynamoDB, S3, SNS nebo SQS, Graphcool, Auth0, Now, Netlify, Firebase a mnoho dal\u0161\u00edch. Obecn\u011b plat\u00ed, \u017ee bezserverovost p\u0159edpokl\u00e1d\u00e1 vyu\u017e\u00edv\u00e1n\u00ed v\u0161ech mo\u017enost\u00ed cloudov\u00e9ho computingu bez nutnosti spr\u00e1vy infrastruktury a jej\u00ed optimalizace pro \u0161k\u00e1lov\u00e1n\u00ed. To tak\u00e9 znamen\u00e1, \u017ee zabezpe\u010den\u00ed na \u00farovni infrastruktury u\u017e nen\u00ed va\u0161\u00edm probl\u00e9mem, co\u017e je obrovsk\u00e1 v\u00fdhoda, vzhledem k obt\u00ed\u017enosti a slo\u017eitosti dodr\u017eov\u00e1n\u00ed bezpe\u010dnostn\u00edch standard\u016f. Nakonec nen\u00ed t\u0159eba kupovat infrastrukturu, kter\u00e1 je v\u00e1m poskytov\u00e1na do u\u017e\u00edv\u00e1n\u00ed.<\/p>\n<p>Bezserverovost m\u016f\u017eeme pova\u017eovat za \u201estavu mysli\u201c: ur\u010ditou mentalitu p\u0159i navrhov\u00e1n\u00ed \u0159e\u0161en\u00ed. Vyhn\u011bte se p\u0159\u00edstup\u016fm, kter\u00e9 vy\u017eaduj\u00ed \u00fadr\u017ebu jak\u00e9koli infrastruktury. P\u0159i bezserverov\u00e9m p\u0159\u00edstupu tr\u00e1v\u00edme \u010das \u0159e\u0161en\u00edm \u00fakol\u016f, kter\u00e9 p\u0159\u00edmo ovliv\u0148uj\u00ed projekt a p\u0159in\u00e1\u0161ej\u00ed prosp\u011bch na\u0161im u\u017eivatel\u016fm: budujeme odolnou obchodn\u00ed logiku, rozv\u00edj\u00edme u\u017eivatelsk\u00e9 rozhran\u00ed a vyv\u00edj\u00edme adaptivn\u00ed a spolehliv\u00e9 API.<\/p>\n<p>Nap\u0159\u00edklad, pokud m\u016f\u017eeme vyhnout se spr\u00e1v\u011b a \u00fadr\u017eb\u011b platformy pro svobodn\u00e9 textov\u00e9 vyhled\u00e1v\u00e1n\u00ed, ud\u011bl\u00e1me to. Tento p\u0159\u00edstup k sestavov\u00e1n\u00ed aplikac\u00ed m\u016f\u017ee v\u00fdrazn\u011b urychlit uveden\u00ed produktu na trh, nebo\u0165 se ji\u017e nemus\u00edte starat o spr\u00e1vu slo\u017eit\u00e9 infrastruktury. zbavte se povinnost\u00ed a n\u00e1klad\u016f na spr\u00e1vu infrastruktury a zam\u011b\u0159te se na vytv\u00e1\u0159en\u00ed aplikac\u00ed a slu\u017eeb, kter\u00e9 va\u0161i klienti pot\u0159ebuj\u00ed. Patrick Debois tento p\u0159\u00edstup nazval <noindex><a rel=\"nofollow\" href=\"https:\/\/www.slideshare.net\/jedi4ever\/from-serverless-to-service-full-how-the-role-of-devops-is-evolving?ref=https:\/\/twitter.com\/i\/cards\/tfw\/v1\/736144044112384000?cardname=player&amp;earned=true&amp;lang=en&amp;card_height=130\">\u2018servicefull\u2019<\/a><\/noindex>, tento term\u00edn byl p\u0159ijat v bezserverov\u00e9 komunit\u011b. Funkce by m\u011bly b\u00fdt pova\u017eov\u00e1ny za spojovac\u00ed prvek pro slu\u017eby ve form\u011b nasazovan\u00fdch modul\u016f (m\u00edsto nasazen\u00ed cel\u00e9 knihovny nebo webov\u00e9 aplikace). To zaji\u0161\u0165uje neuv\u011b\u0159itelnou granularitu spr\u00e1vy nasazen\u00ed a zm\u011bn v aplikaci. Pokud nem\u016f\u017eete t\u00edmto zp\u016fsobem nasazovat funkce, m\u016f\u017ee to znamenat, \u017ee funkce vykon\u00e1vaj\u00ed p\u0159\u00edli\u0161 mnoho \u00fakol\u016f a m\u011bly by b\u00fdt refaktorizov\u00e1ny.<\/p>\n<p>N\u011bkter\u00e9 u\u017eivatele znepokojuje z\u00e1vislost na dodavateli p\u0159i v\u00fdvoji cloudov\u00fdch aplikac\u00ed. Tot\u00e9\u017e plat\u00ed i pro serverless technologie, a pravd\u011bpodobn\u011b to nen\u00ed d\u016fsledkem klamn\u00e9 p\u0159edstavy. Z na\u0161ich zku\u0161enost\u00ed vytv\u00e1\u0159en\u00ed serverless aplikac\u00ed na AWS v kombinaci s schopnost\u00ed AWS Lambda integrovat dal\u0161\u00ed AWS slu\u017eby \u2014 to v\u0161e \u010d\u00e1ste\u010dn\u011b formuje v\u00fdhody serverless architektur. Je to dobr\u00fd p\u0159\u00edklad synergie, kdy v\u00fdsledek spojen\u00ed je v\u011bt\u0161\u00ed ne\u017e jen sou\u010det jednotliv\u00fdch \u010d\u00e1st\u00ed. Sna\u017e\u00edte-li se vyhnout z\u00e1vislosti na dodavateli, m\u016f\u017eete \u010delit je\u0161t\u011b v\u011bt\u0161\u00edm probl\u00e9m\u016fm. P\u0159i pr\u00e1ci s kontejnery je snaz\u0161\u00ed \u0159\u00eddit si vlastn\u00ed \u00farove\u0148 abstrakce mezi cloudov\u00fdmi poskytovateli. Ale kdy\u017e se jedn\u00e1 o serverless \u0159e\u0161en\u00ed, \u00fasil\u00ed se nevyplat\u00ed, zejm\u00e9na pokud se hned na za\u010d\u00e1tku zohledn\u00ed ekonomick\u00e1 efektivita. Ur\u010dit\u011b zjist\u011bte, jak dodavatel\u00e9 zaji\u0161\u0165uj\u00ed poskytov\u00e1n\u00ed slu\u017eeb. N\u011bkter\u00e9 specializovan\u00e9 slu\u017eby z\u00e1vis\u00ed na integra\u010dn\u00edch bodech s jin\u00fdmi dodavateli a mohou umo\u017enit p\u0159ipojen\u00ed stylem plug-and-play. Sn\u00e1ze je zaji\u0161t\u011bno vol\u00e1n\u00ed Lambda z koncov\u00e9 API br\u00e1ny ne\u017e proch\u00e1zet po\u017eadavek do n\u011bjak\u00e9ho kontejneru nebo instance EC2. Graphcool poskytuje jednoduchou konfiguraci pomoc\u00ed Auth0, co\u017e je jednodu\u0161\u0161\u00ed ne\u017e pou\u017e\u00edt extern\u00ed autentiza\u010dn\u00ed n\u00e1stroje.<\/p>\n<p>V\u00fdb\u011br spr\u00e1vn\u00e9ho dodavatele pro va\u0161i serverless aplikaci je rozhodnut\u00ed architektonick\u00e9 \u00farovn\u011b. P\u0159i vytv\u00e1\u0159en\u00ed aplikace neo\u010dek\u00e1v\u00e1te, \u017ee se jednou vr\u00e1t\u00edte k \u0159\u00edzen\u00ed server\u016f. V\u00fdb\u011br cloudov\u00e9ho dodavatele se neli\u0161\u00ed od rozhodov\u00e1n\u00ed o pou\u017e\u00edv\u00e1n\u00ed kontejner\u016f, datab\u00e1z\u00ed nebo dokonce programovac\u00edch jazyk\u016f. <\/p>\n<p>Zva\u017ete:<\/p>\n<ul>\n<li>Jak\u00e9 slu\u017eby pot\u0159ebujete a pro\u010d. \n<\/li>\n<li>Jak\u00e9 slu\u017eby poskytuj\u00ed cloudov\u00ed poskytovatel\u00e9 a jak je m\u016f\u017eete propojit s vybran\u00fdm FaaS \u0159e\u0161en\u00edm. \n<\/li>\n<li>Jak\u00e9 programovac\u00ed jazyky jsou podporov\u00e1ny (s dynamick\u00fdm nebo statick\u00fdm typov\u00e1n\u00edm, kompilovan\u00e9 nebo interpretovan\u00e9, jak\u00e9 jsou benchmarky, jak\u00e1 je v\u00fdkonnost p\u0159i studen\u00e9m startu, jak\u00e1 je open source ekosyst\u00e9m atd.).\n<\/li>\n<li>Jak\u00e9 m\u00e1te po\u017eadavky na bezpe\u010dnost (SLA, 2FA, OAuth, HTTPS, SSL atd.).\n<\/li>\n<li>Jak spravovat v\u00e1\u0161 CI\/CD a cykly v\u00fdvoje softwaru.\n<\/li>\n<li>Jak\u00e9 v\u00fdhody m\u016f\u017eete \u010derpat z \u0159e\u0161en\u00ed typu infrastructure-as-code.\n<\/li>\n<\/ul>\n<p>\nPokud roz\u0161i\u0159ujete existuj\u00edc\u00ed aplikaci a postupn\u011b p\u0159id\u00e1v\u00e1te bezserverov\u00e9 funkce, m\u016f\u017ee to pon\u011bkud omezit dostupn\u00e9 mo\u017enosti. V\u011bt\u0161ina bezserverov\u00fdch technologi\u00ed v\u0161ak poskytuje n\u011bjak\u00e1 API (p\u0159es REST nebo zpr\u00e1vov\u00e9 fronty), kter\u00e1 umo\u017e\u0148uj\u00ed vytv\u00e1\u0159et roz\u0161\u00ed\u0159en\u00ed nez\u00e1visle na j\u00e1dru aplikace s jednoduchou integrac\u00ed. Hledejte slu\u017eby s jasn\u00fdmi API, dobrou dokumentac\u00ed a silnou komunitou, a ne\u0161l\u00e1pnete vedle. Jednoduchost integrace m\u016f\u017ee \u010dasto b\u00fdt kl\u00ed\u010dovou metrikou a pravd\u011bpodobn\u011b je to jeden z hlavn\u00edch d\u016fvod\u016f \u00fasp\u011bchu AWS od doby, kdy v roce 2015 byla uvedena Lambda.<\/p>\n<h2>Kdy je bezserverovost u\u017eite\u010dn\u00e1<\/h2>\n<p>\nBezserverov\u00e9 technologie lze pou\u017e\u00edvat prakticky v\u0161ude. Jejich p\u0159ednosti v\u0161ak nejsou omezeny pouze na zp\u016fsoby aplikace. Pr\u016fnikov\u00e9 n\u00e1klady do cloudov\u00e9ho v\u00fdpo\u010detn\u00edho prost\u0159ed\u00ed jsou dnes tak n\u00edzk\u00e9 pr\u00e1v\u011b d\u00edky bezserverov\u00fdm technologi\u00edm. Pokud maj\u00ed v\u00fdvoj\u00e1\u0159i n\u00e1pad, ale nev\u011bd\u00ed, jak spravovat cloudovou infrastrukturu a optimalizovat n\u00e1klady, nemus\u00ed hledat \u017e\u00e1dn\u00e9ho in\u017een\u00fdra pro tuto \u00falohu. Pokud chce startup vytvo\u0159it platformu, ale ob\u00e1v\u00e1 se, \u017ee n\u00e1klady mohou vymknout kontrole, m\u016f\u017ee se snadno obr\u00e1tit na bezserverov\u00e1 \u0159e\u0161en\u00ed.<\/p>\n<p>D\u00edky \u00faspor\u00e1m n\u00e1klad\u016f a jednoduchosti \u0161k\u00e1lov\u00e1n\u00ed jsou bezserverov\u00e1 \u0159e\u0161en\u00ed stejn\u011b pou\u017eiteln\u00e1 pro intern\u00ed syst\u00e9my jako pro extern\u00ed, a\u017e po webovou aplikaci s miliony u\u017eivatel\u016f. \u00da\u010dty se sp\u00ed\u0161e m\u011b\u0159\u00ed v eurech ne\u017e v desetn\u00edc\u00edch. Pron\u00e1jem nejjednodu\u0161\u0161\u00edho vzoru AWS EC2 (t1.micro) na m\u011bs\u00edc v\u00e1s vyjde na 15 EUR, i kdy\u017e s n\u00edm nic ned\u011bl\u00e1te (kdo n\u011bkdy nezapomn\u011bl vypnout?!). Pro srovn\u00e1n\u00ed, abyste dos\u00e1hli stejn\u00e9ho \u00farovn\u011b n\u00e1klad\u016f za stejn\u00e9 obdob\u00ed, mus\u00edte spustit Lambda o velikosti 512 MB na 1 sekundu p\u0159ibli\u017en\u011b 3 milionykr\u00e1t. A pokud tuto funkci nepou\u017e\u00edv\u00e1te, neplat\u00edte nic.<\/p>\n<p>Jeliko\u017e bezserverov\u00e1 technologie z\u00e1vis\u00ed p\u0159edev\u0161\u00edm na ud\u00e1lostech, lze bezserverovou infrastrukturu relativn\u011b snadno p\u0159idat do star\u00fdch syst\u00e9m\u016f. Nap\u0159\u00edklad pomoc\u00ed AWS S3, Lambda a Kinesis m\u016f\u017eete vytvo\u0159it analytickou slu\u017ebu pro star\u00fd maloobchodn\u00ed syst\u00e9m, kter\u00fd bude schopn\u00fd p\u0159ij\u00edmat data p\u0159es API.<\/p>\n<p>V\u011bt\u0161ina bezserverov\u00fdch platforem podporuje r\u016fzn\u00e9 jazyky. Nej\u010dast\u011bji se jedn\u00e1 o Python, JavaScript, C#, Java a Go. Obvykle neexistuj\u00ed \u017e\u00e1dn\u00e1 omezen\u00ed ohledn\u011b pou\u017e\u00edv\u00e1n\u00ed knihoven ve v\u0161ech jazyc\u00edch, co\u017e znamen\u00e1, \u017ee si m\u016f\u017eete pou\u017e\u00edt sv\u00e9 obl\u00edben\u00e9 open source knihovny. Je v\u0161ak \u017e\u00e1douc\u00ed nep\u0159eh\u00e1n\u011bt to se z\u00e1vislostmi, aby va\u0161e funkce pracovaly optim\u00e1ln\u011b a neub\u00edraly v\u00fdhody ohromn\u00e9 \u0161k\u00e1lovatelnosti va\u0161ich bezserverov\u00fdch aplikac\u00ed. \u010c\u00edm v\u00edce bal\u00ed\u010dk\u016f je t\u0159eba na\u010d\u00edst do kontejneru, t\u00edm d\u00e9le trv\u00e1 studen\u00e9 spu\u0161t\u011bn\u00ed.<\/p>\n<p>Studen\u00e9 spu\u0161t\u011bn\u00ed nast\u00e1v\u00e1, kdy\u017e je pot\u0159eba nejprve inicializovat kontejner, provozn\u00ed prost\u0159ed\u00ed a zpracovatele chyb, ne\u017e je mo\u017en\u00e9 je pou\u017e\u00edt. Z tohoto d\u016fvodu m\u016f\u017ee zpo\u017ed\u011bn\u00ed vykon\u00e1n\u00ed funkc\u00ed dos\u00e1hnout a\u017e 3 sekund, co\u017e nen\u00ed ide\u00e1ln\u00ed pro netrp\u011bliv\u00e9 u\u017eivatele. Nicm\u00e9n\u011b studen\u00e1 spu\u0161t\u011bn\u00ed se vyskytuj\u00ed p\u0159i prvn\u00edm p\u0159\u00edstupu po n\u011bkolika minut\u00e1ch ne\u010dinnosti funkce. Mnoz\u00ed to pova\u017euj\u00ed za nev\u00fdznamn\u00e9 nepohodl\u00ed, kter\u00e9 lze obch\u00e1zet pravideln\u00fdm pingov\u00e1n\u00edm funkce, aby z\u016fstala v pohotovostn\u00edm re\u017eimu. Nebo tento aspekt v\u016fbec ignoruj\u00ed.<\/p>\n<p>A\u010dkoli AWS vydala<noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/rds\/aurora\/serverless\/\"> bezserverovou SQL datab\u00e1zi Serverless Aurora<\/a><\/noindex>, SQL datab\u00e1ze v\u0161ak pro takov\u00e9 pou\u017eit\u00ed nejsou ide\u00e1ln\u00ed, proto\u017ee p\u0159i vykon\u00e1v\u00e1n\u00ed transakc\u00ed z\u00e1vis\u00ed na p\u0159ipojen\u00edch, kter\u00e1 se mohou rychle st\u00e1t \u00fazk\u00fdm hrdlem p\u0159i vysok\u00e9 n\u00e1v\u0161t\u011bvnosti na AWS Lambda. Ano, v\u00fdvoj\u00e1\u0159i neust\u00e1le vylep\u0161uj\u00ed Serverless Aurora a ur\u010dit\u011b byste m\u011bli experimentovat s n\u00ed, nicm\u00e9n\u011b dnes jsou pro bezserverov\u00e9 syst\u00e9my mnohem lep\u0161\u00ed NoSQL \u0159e\u0161en\u00ed jako<noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\"> DynamoDB<\/a><\/noindex>. Nicm\u00e9n\u011b tato situace se ur\u010dit\u011b brzy zm\u011bn\u00ed.<\/p>\n<p>N\u00e1stroje tak\u00e9 ukl\u00e1daj\u00ed mnoho omezen\u00ed, zejm\u00e9na v oblasti m\u00edstn\u00edho testov\u00e1n\u00ed. A\u010dkoliv existuj\u00ed \u0159e\u0161en\u00ed jako Docker-Lambda, DynamoDB Local a LocalStack, vy\u017eaduj\u00ed pe\u010dlivou pr\u00e1ci a zna\u010dn\u00e9 mno\u017estv\u00ed konfigurace. V\u0161ak v\u0161echny tyto projekty se aktivn\u011b vyv\u00edjej\u00ed, tak\u017ee je to jen ot\u00e1zka \u010dasu, kdy n\u00e1stroje dos\u00e1hnou po\u017eadovan\u00e9 \u00farovn\u011b.<\/p>\n<h2>Vliv bezserverov\u00fdch technologi\u00ed na v\u00fdvojov\u00fd cyklus<\/h2>\n<p>\nJeliko\u017e va\u0161e infrastruktura p\u0159edstavuje pouze konfiguraci, m\u016f\u017eete nasadit a roz\u0161\u00ed\u0159it k\u00f3d pomoc\u00ed skript\u016f, nap\u0159\u00edklad shell skript\u016f. Nebo m\u016f\u017eete vyu\u017e\u00edt \u0159e\u0161en\u00ed typu configuration-as-code, jako je <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/cloudformation\/\">AWS CloudFormation<\/a><\/noindex>A\u010dkoli tato slu\u017eba nenab\u00edz\u00ed konfiguraci pro v\u0161echny oblasti, umo\u017e\u0148uje ur\u010dovat konkr\u00e9tn\u00ed zdroje pro pou\u017eit\u00ed jako funkce Lambda. To znamen\u00e1, \u017ee tam, kde v\u00e1s CloudFormation zklame, m\u016f\u017eete napsat sv\u016fj vlastn\u00ed zdroj (Lambda funkci), kter\u00e1 tuto mezeru vypln\u00ed. T\u00edmto zp\u016fsobem m\u016f\u017eete ud\u011blat cokoliv, dokonce nakonfigurovat z\u00e1vislosti mimo va\u0161e AWS prost\u0159ed\u00ed.<\/p>\n<p>Jeliko\u017e jde pouze o konfiguraci, m\u016f\u017eete parametrizovat sv\u00e9 nasazovac\u00ed skripty pro konkr\u00e9tn\u00ed prost\u0159ed\u00ed, regiony a u\u017eivatele, zejm\u00e9na pokud pou\u017e\u00edv\u00e1te \u0159e\u0161en\u00ed typu infrastructure-as-code, jako je CloudFormation. Nap\u0159\u00edklad m\u016f\u017eete nasadit kopii infrastruktury pro ka\u017edou v\u011btev v repozit\u00e1\u0159i, abyste je mohli zcela izolovan\u011b testovat b\u011bhem v\u00fdvoje. To radik\u00e1ln\u011b zrychluje z\u00edsk\u00e1v\u00e1n\u00ed zp\u011btn\u00e9 vazby od v\u00fdvoj\u00e1\u0159\u016f, kte\u0159\u00ed cht\u011bj\u00ed zjistit, zda jejich k\u00f3d funguje spr\u00e1vn\u011b v \u017eiv\u00e9m prost\u0159ed\u00ed. Vedouc\u00ed pracovn\u00edci se nemus\u00ed ob\u00e1vat n\u00e1klad\u016f na nasazen\u00ed mnoha prost\u0159ed\u00ed, proto\u017ee se plat\u00ed pouze za skute\u010dn\u00e9 pou\u017eit\u00ed.<\/p>\n<p>DevOps maj\u00ed m\u00e9n\u011b starost\u00ed, proto\u017ee musej\u00ed pouze zajistit, \u017ee v\u00fdvoj\u00e1\u0159i maj\u00ed spr\u00e1vnou konfiguraci. U\u017e nen\u00ed pot\u0159eba spravovat instance, vyrovn\u00e1va\u010de z\u00e1t\u011b\u017ee nebo bezpe\u010dnostn\u00ed skupiny. Proto se st\u00e1le \u010dast\u011bji pou\u017e\u00edv\u00e1 term\u00edn NoOps, p\u0159i\u010dem\u017e je v\u0161ak st\u00e1le d\u016fle\u017eit\u00e9 um\u011bt konfigurovat infrastrukturu, zejm\u00e9na pokud jde o konfiguraci IAM a optimalizaci cloudov\u00fdch zdroj\u016f.<\/p>\n<p>Existuj\u00ed velmi siln\u00e9 n\u00e1stroje pro monitorov\u00e1n\u00ed a vizualizaci, jako jsou Epsagon, Thundra, Dashbird a IOPipe. Tyto n\u00e1stroje umo\u017e\u0148uj\u00ed sledovat aktu\u00e1ln\u00ed stav serverless aplikac\u00ed, poskytuj\u00ed protokoly a stopov\u00e1n\u00ed, zaznamen\u00e1vaj\u00ed metriky v\u00fdkonu a \u00fazk\u00e1 m\u00edsta architektury, prov\u00e1d\u011bj\u00ed anal\u00fdzu a predikci n\u00e1klad\u016f a mnohem v\u00edce. Nejen\u017ee poskytuj\u00ed DevOps in\u017een\u00fdr\u016fm, v\u00fdvoj\u00e1\u0159\u016fm a architekt\u016fm komplexn\u00ed p\u0159ehled o fungov\u00e1n\u00ed aplikac\u00ed, ale tak\u00e9 umo\u017e\u0148uj\u00ed vedouc\u00edm pracovn\u00edk\u016fm sledovat situaci v re\u00e1ln\u00e9m \u010dase, s p\u0159esn\u00fdmi n\u00e1klady na zdroje a predikc\u00ed n\u00e1klad\u016f. Organizace takov\u00e9ho s \u0159\u00edzenou infrastrukturou je mnohem obt\u00ed\u017en\u011bj\u0161\u00ed.<\/p>\n<p>Navrhov\u00e1n\u00ed bezserverov\u00fdch aplikac\u00ed je zna\u010dn\u011b jednodu\u0161\u0161\u00ed, proto\u017ee nen\u00ed t\u0159eba nasazovat webov\u00e9 servery, spravovat virtu\u00e1ln\u00ed stroje nebo kontejnery, patchovat servery, opera\u010dn\u00ed syst\u00e9my, internetov\u00e9 br\u00e1ny atd. Abstrakce od v\u0161ech t\u011bchto povinnost\u00ed umo\u017e\u0148uje bezserverov\u00e9 architektu\u0159e soust\u0159edit se na to hlavn\u00ed \u2014 na uspokojen\u00ed pot\u0159eb podnik\u00e1n\u00ed a z\u00e1kazn\u00edk\u016f.<\/p>\n<p>I kdy\u017e n\u00e1stroje by mohly b\u00fdt lep\u0161\u00ed (ka\u017ed\u00fdm dnem se zlep\u0161uj\u00ed), v\u00fdvoj\u00e1\u0159i se mohou soust\u0159edit na implementaci obchodn\u00ed logiky a optim\u00e1ln\u00ed rozd\u011blen\u00ed slo\u017eitosti aplikace do r\u016fzn\u00fdch slu\u017eeb v r\u00e1mci architektury. Spr\u00e1va bezserverov\u00fdch aplikac\u00ed prob\u00edh\u00e1 na z\u00e1klad\u011b ud\u00e1lost\u00ed a je abstrahov\u00e1na cloudov\u00fdm poskytovatelem (nap\u0159. SQS, S3 ud\u00e1losti nebo DynamoDB prou\u017eky). V\u00fdvoj\u00e1\u0159i tedy mus\u00ed pouze napsat obchodn\u00ed logiku pro reakci na ur\u010dit\u00e9 ud\u00e1losti a nemus\u00ed se ob\u00e1vat, jak nejl\u00e9pe implementovat datab\u00e1ze a fronty zpr\u00e1v, nebo jak organizovat optim\u00e1ln\u00ed pr\u00e1ci s daty v konkr\u00e9tn\u00edch hardwarov\u00fdch \u00falo\u017ei\u0161t\u00edch.<\/p>\n<p>K\u00f3d lze prov\u00e1d\u011bt a ladit lok\u00e1ln\u011b, stejn\u011b jako p\u0159i jak\u00e9mkoli procesu v\u00fdvoje. Mod\u00e1ln\u00ed testov\u00e1n\u00ed z\u016fst\u00e1v\u00e1 stejn\u00e9. Mo\u017enost nasazen\u00ed cel\u00e9 infrastruktury aplikace pomoc\u00ed p\u0159izp\u016fsoben\u00e9 konfigurace stacku umo\u017e\u0148uje v\u00fdvoj\u00e1\u0159\u016fm rychle z\u00edskat d\u016fle\u017eitou zp\u011btnou vazbu, ani\u017e by museli p\u0159em\u00fd\u0161let o n\u00e1kladech na testov\u00e1n\u00ed nebo o dopadu na n\u00e1kladn\u00e1 spravovan\u00e1 prost\u0159ed\u00ed.<\/p>\n<h2>N\u00e1stroje a metodiky pro sestaven\u00ed bezserverov\u00fdch aplikac\u00ed<\/h2>\n<p>\nNeexistuje konkr\u00e9tn\u00ed zp\u016fsob, jak sestavit bezserverov\u00e9 aplikace. Stejn\u011b tak neexistuje univerz\u00e1ln\u00ed sada slu\u017eeb pro tuto tasku. Dnes je l\u00eddrem mezi siln\u00fdmi bezserverov\u00fdmi \u0159e\u0161en\u00edmi AWS, ale v\u011bnujte pozornost tak\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/gcp\">Google Cloud<\/a><\/noindex>,<noindex><a rel=\"nofollow\" href=\"https:\/\/zeit.co\/\"> Zeit<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/firebase.google.com\/\">Firebase<\/a><\/noindex>. Pokud pou\u017e\u00edv\u00e1te AWS, doporu\u010duji jako p\u0159\u00edstup k sestaven\u00ed aplikac\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/serverless\/sam\/\">Model bezserverov\u00fdch aplikac\u00ed<\/a><\/noindex> (SAM), zejm\u00e9na p\u0159i pou\u017eit\u00ed C#, proto\u017ee ve Visual Studiu je skv\u011bl\u00fd n\u00e1stroj. SAM CLI m\u016f\u017ee d\u011blat to sam\u00e9, co Visual Studio, tak\u017ee nic neztrat\u00edte, pokud p\u0159ejdete na jin\u00fd IDE nebo textov\u00fd editor. Samoz\u0159ejm\u011b, \u017ee SAM funguje i s jin\u00fdmi jazyky.<\/p>\n<p>Pokud p\u00ed\u0161ete v jin\u00fdch jazyc\u00edch, Serverless Framework je vynikaj\u00edc\u00ed open source n\u00e1stroj, kter\u00fd umo\u017e\u0148uje nakonfigurovat cokoliv pomoc\u00ed velmi siln\u00fdch konfigura\u010dn\u00edch YAML soubor\u016f. Serverless Framework tak\u00e9 podporuje r\u016fzn\u00e9 cloudov\u00e9 slu\u017eby, proto jej doporu\u010dujeme t\u011bm, kte\u0159\u00ed hledaj\u00ed v\u00edcecloudov\u00e9 \u0159e\u0161en\u00ed. M\u00e1 ohromnou komunitu, kter\u00e1 vytvo\u0159ila spoustu plugin\u016f pro r\u016fzn\u00e9 pot\u0159eby. <\/p>\n<p>Pro lok\u00e1ln\u00ed testov\u00e1n\u00ed se dob\u0159e hod\u00ed open source n\u00e1stroje Docker-Lambda, Serverless Local, DynamoDB Local a LocalStack. Besservrov\u00e9 technologie jsou st\u00e1le v ran\u00e9 f\u00e1zi v\u00fdvoje, stejn\u011b jako n\u00e1stroje pro n\u011b, tak\u017ee p\u0159i nastavov\u00e1n\u00ed slo\u017eit\u011bj\u0161\u00edch testovac\u00edch sc\u00e9n\u00e1\u0159\u016f se budete muset trochu sna\u017eit. Nicm\u00e9n\u011b je neuv\u011b\u0159iteln\u011b levn\u00e9 jednodu\u0161e nasadit stack v prost\u0159ed\u00ed a testovat tam. A nen\u00ed pot\u0159eba vytv\u00e1\u0159et p\u0159esnou lok\u00e1ln\u00ed kopii cloudov\u00fdch prost\u0159ed\u00ed.<\/p>\n<p>Pro sn\u00ed\u017een\u00ed velikosti nasazovan\u00fdch bal\u00ed\u010dk\u016f a zrychlen\u00ed na\u010d\u00edt\u00e1n\u00ed pou\u017e\u00edvejte AWS Lambda Layers. <\/p>\n<p>Pou\u017e\u00edvejte spr\u00e1vn\u00e9 programovac\u00ed jazyky pro konkr\u00e9tn\u00ed \u00fakoly. R\u016fzn\u00e9 jazyky maj\u00ed sv\u00e9 v\u00fdhody a nev\u00fdhody. Existuje mnoho benchmark\u016f, ale JavaScript, Python a C# (.NET Core 2.1+) jsou l\u00eddry z hlediska v\u00fdkonu AWS Lambda. Ned\u00e1vno se v AWS Lambda objevil Runtime API, kter\u00fd umo\u017e\u0148uje specifikovat po\u017eadovan\u00fd jazyk a prost\u0159ed\u00ed runtime, tak\u017ee experimentujte.<\/p>\n<p>Udr\u017eujte mal\u00e9 velikosti bal\u00ed\u010dk\u016f pro nasazen\u00ed. \u010c\u00edm men\u0161\u00ed jsou, t\u00edm rychleji se na\u010d\u00edtaj\u00ed. Vyhn\u011bte se pou\u017e\u00edv\u00e1n\u00ed velk\u00fdch knihoven, zejm\u00e9na pokud pou\u017e\u00edv\u00e1te jen p\u00e1r funkc\u00ed. Pokud programujete v JavaScriptu, pou\u017e\u00edvejte n\u00e1stroje pro sestaven\u00ed jako Webpack, abyste optimalizovali sestaven\u00ed a zahrnuli pouze to, co skute\u010dn\u011b pot\u0159ebujete. V .NET Core 3.0 jsou QuickJit a Tiered Compilation, kter\u00e9 zlep\u0161uj\u00ed v\u00fdkon a v\u00fdrazn\u011b pom\u00e1haj\u00ed p\u0159i studen\u00fdch spu\u0161t\u011bn\u00edch.<\/p>\n<p>Z\u00e1vislost bezserverov\u00fdch funkc\u00ed na ud\u00e1lostech m\u016f\u017ee zpo\u010d\u00e1tku zt\u00ed\u017eit koordinaci obchodn\u00ed logiky. V t\u00e9to souvislosti mohou b\u00fdt velmi u\u017eite\u010dn\u00e9 zpr\u00e1vov\u00e9 fronty a kone\u010dn\u00e9 automaty. Funkce Lambda si mohou vz\u00e1jemn\u011b volat, ale d\u011blejte to pouze v p\u0159\u00edpad\u011b, \u017ee ne\u010dek\u00e1te na odpov\u011b\u010f (\u201espus\u0165te a zapome\u0148te\u201c) \u2014 p\u0159ece nechcete platit za \u010dek\u00e1n\u00ed na dokon\u010den\u00ed jin\u00e9 funkce. Zpr\u00e1vov\u00e9 fronty jsou u\u017eite\u010dn\u00e9 pro odd\u011blen\u00ed \u010d\u00e1st\u00ed obchodn\u00ed logiky, \u0159\u00edzen\u00ed \u00fazk\u00fdch m\u00edst aplikac\u00ed a zpracov\u00e1n\u00ed transakc\u00ed (pomoc\u00ed FIFO front). Funkce AWS Lambda mohou b\u00fdt p\u0159i\u0159azeny k front\u00e1m SQS jako fronty \u201euv\u00edzl\u00fdch\u201c zpr\u00e1v, kter\u00e9 sleduj\u00ed ne\u00fasp\u011b\u0161n\u00e9 zpr\u00e1vy pro n\u00e1slednou anal\u00fdzu. Funkce AWS Step Functions (kone\u010dn\u00e9 automaty) jsou velmi u\u017eite\u010dn\u00e9 pro \u0159\u00edzen\u00ed slo\u017eit\u00fdch proces\u016f, kter\u00e9 vy\u017eaduj\u00ed vytv\u00e1\u0159en\u00ed \u0159et\u011bzc\u016f funkc\u00ed. M\u00edsto toho, aby funkce Lambda volala jinou funkci, mohou Step Functions koordinovat p\u0159echody stav\u016f, p\u0159ed\u00e1vat data mezi funkcemi a \u0159\u00eddit glob\u00e1ln\u00ed stav funkc\u00ed. To umo\u017e\u0148uje definovat podm\u00ednky pro opakov\u00e1n\u00ed pokus\u016f nebo co d\u011blat v p\u0159\u00edpad\u011b konkr\u00e9tn\u00ed chyby \u2014 v ur\u010dit\u00fdch podm\u00ednk\u00e1ch velmi mocn\u00fd n\u00e1stroj.<\/p>\n<h2>Z\u00e1v\u011br<\/h2>\n<p>\nV posledn\u00edch letech se bezserverov\u00e9 technologie vyv\u00edjej\u00ed neb\u00fdval\u00fdm tempem. S touto zm\u011bnou paradigmatu souvisej\u00ed ur\u010dit\u00e9 myln\u00e9 p\u0159edstavy. D\u00edky abstrahov\u00e1n\u00ed infrastruktury a \u0159\u00edzen\u00ed \u0161k\u00e1lov\u00e1n\u00ed nab\u00edzej\u00ed bezserverov\u00e1 \u0159e\u0161en\u00ed zna\u010dn\u00e9 v\u00fdhody: od zjednodu\u0161en\u00ed v\u00fdvoje a proces\u016f DevOps a\u017e po v\u00fdrazn\u00e9 sn\u00ed\u017een\u00ed provozn\u00edch n\u00e1klad\u016f.<br \/>\nA i kdy\u017e bezserverov\u00fd p\u0159\u00edstup nen\u00ed bez nedostatk\u016f, existuj\u00ed spolehliv\u00e9 metodiky a vzory n\u00e1vrhu, pomoc\u00ed kter\u00fdch je mo\u017en\u00e9 vytv\u00e1\u0159et odoln\u00e9 bezserverov\u00e9 aplikace nebo integrovat bezserverov\u00e9 prvky do existuj\u00edc\u00edch architektur.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/nix\/blog\/486180\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0433\u043e\u0434\u044b \u0431\u044b\u0441\u0442\u0440\u043e \u043d\u0430\u0431\u0438\u0440\u0430\u044e\u0442 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c, \u0441 \u043d\u0438\u043c\u0438 \u0432\u0441\u0451 \u0435\u0449\u0451 \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0431\u043b\u0443\u0436\u0434\u0435\u043d\u0438\u0439 \u0438 \u043e\u043f\u0430\u0441\u0435\u043d\u0438\u0439. \u0417\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0442 \u0432\u0435\u043d\u0434\u043e\u0440\u0430, \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439, \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u0430\u043c\u0438, \u0445\u043e\u043b\u043e\u0434\u043d\u044b\u0439 \u0441\u0442\u0430\u0440\u0442, \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0438 \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u2014 \u0432\u0441\u0435 \u044d\u0442\u0438 \u0442\u0435\u043c\u044b \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442\u0441\u044f, \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u043e \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0445 \u0442\u0435\u043c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0435\u043b\u0438\u043c\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":55882,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55881","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=\"\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435.\" \/>\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\/cs\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\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\udd47\u0421\u043e\u0432\u0435\u0442\u044b \u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij\" \/>\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=\"2020-01-30T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:04:02+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\udd47Tipy a zdroje informac\u00ed pro vytv\u00e1\u0159en\u00ed bezserverov\u00fdch aplikac\u00ed | ProHoster","description":"I kdy\u017e jsou bezserverov\u00e9.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","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\udd47\u0421\u043e\u0432\u0435\u0442\u044b \u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 | ProHoster","og:description":"\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","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":"2020-01-30T21:00:00+00:00","article:modified_time":"2020-02-18T11:04:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55881","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:35:40","updated":"2022-10-07 20:58:46","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55881","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=55881"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55881\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/55882"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=55881"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=55881"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=55881"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}