{"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\/hu\/blog\/administrirovanie\/serverless-po-stoechkam","title":{"rendered":"Serverless a rackeken","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Serverless a rackeken\" src=\"\/wp-content\/uploads\/2019\/05\/cea6dc9da0a3a1b0241246cdf3eba900.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nA serverless nem azt jelenti, hogy fizikailag nincsenek szerverek. Ez nem a kont\u00e9nerek 'gyilkosa' \u00e9s nem egy epizodikus trend. Ez egy \u00faj megk\u00f6zel\u00edt\u00e9s a felh\u0151beli rendszerek \u00e9p\u00edt\u00e9s\u00e9re. A mai cikkben \u00e9rinteni fogjuk a serverless alkalmaz\u00e1sok architekt\u00far\u00e1j\u00e1t, megn\u00e9zz\u00fck, milyen szerepet j\u00e1tszik a serverless szolg\u00e1ltat\u00e1s szolg\u00e1ltat\u00f3ja \u00e9s az open-source projektek. V\u00e9g\u00fcl a serverless alkalmaz\u00e1s\u00e1val kapcsolatos k\u00e9rd\u00e9sekkel fogunk foglalkozni.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nSzeretn\u00e9k \u00edrni egy alkalmaz\u00e1s szerveroldali r\u00e9sz\u00e9t (ak\u00e1r egy online bolt\u00e9t). Ez lehet cseveg\u0151, tartalomk\u00f6zz\u00e9t\u00e9teli szolg\u00e1ltat\u00e1s vagy terhel\u00e9seloszt\u00f3. B\u00e1rhogy is legyen, rengeteg fejf\u00e1j\u00e1ssal j\u00e1r: fel kell k\u00e9sz\u00edteni az infrastrukt\u00far\u00e1t, meg kell hat\u00e1rozni az alkalmaz\u00e1s f\u00fcgg\u0151s\u00e9geit, \u00e9s el kell gondolkodni a gazdag\u00e9p oper\u00e1ci\u00f3s rendszere miatt. Azt\u00e1n friss\u00edtenem kell n\u00e9h\u00e1ny apr\u00f3 komponenst, amelyek nincsenek hat\u00e1ssal a t\u00f6bbi monolitikus r\u00e9sz m\u0171k\u00f6d\u00e9s\u00e9re. \u00c9s ne feledkezz\u00fcnk meg a terhel\u00e9s alatti sk\u00e1l\u00e1z\u00e1sr\u00f3l sem.<\/p>\n<p>Mi lenne, ha \u00e9terikus kont\u00e9nereket haszn\u00e1ln\u00e1nk, amelyekben a sz\u00fcks\u00e9ges f\u00fcgg\u0151s\u00e9gek m\u00e1r telep\u00edtve vannak, \u00e9s a kont\u00e9nerek elszigeteltek egym\u00e1st\u00f3l \u00e9s a gazdag\u00e9pt\u0151l? A monolitot mikroszolg\u00e1ltat\u00e1sokra bontan\u00e1nk, amelyeket f\u00fcggetlen\u00fcl lehet friss\u00edteni \u00e9s sk\u00e1l\u00e1zni. Ha a k\u00f3dot egy ilyen kont\u00e9nerbe helyezem, b\u00e1rmilyen infrastrukt\u00far\u00e1n futtathatom. M\u00e1ris jobb. <\/p>\n<p>De mi van akkor, ha nem akarok kont\u00e9nereket be\u00e1ll\u00edtani? Nem akarok a alkalmaz\u00e1s sk\u00e1l\u00e1z\u00e1s\u00e1val foglalkozni. Nem akarok fizetni az \u00fcresen fut\u00f3 kont\u00e9nerek\u00e9rt, amikor a szolg\u00e1ltat\u00e1s terhel\u00e9se minim\u00e1lis. Csak k\u00f3dot szeretn\u00e9k \u00edrni. \u00d6sszpontos\u00edtani az \u00fczleti logik\u00e1ra \u00e9s a term\u00e9keket vill\u00e1mgyorsan a piacra hozni. <\/p>\n<p>Ezek a gondolatok vezettek a serverless sz\u00e1m\u00edt\u00e1shoz. A serverless ezen esetben azt jelenti, <em>hogy nem azok a szerverek hi\u00e1nyoznak, hanem a fejf\u00e1j\u00e1s az infrastrukt\u00fara kezel\u00e9s\u00e9vel kapcsolatban.<\/em><\/p>\n<p>Az \u00f6tlet az, hogy az alkalmaz\u00e1s logik\u00e1j\u00e1t f\u00fcggetlen funkci\u00f3kk\u00e1 bontjuk. Ezek esem\u00e9nyalap\u00fa strukt\u00far\u00e1val rendelkeznek. Minden egyes funkci\u00f3 egy \"mikrofeladatot\" hajt v\u00e9gre. Amit a fejleszt\u0151t\u0151l k\u00e9r\u00fcnk, hogy t\u00f6lts\u00f6n fel funkci\u00f3kat a felh\u0151szolg\u00e1ltat\u00f3 \u00e1ltal biztos\u00edtott konzolra, \u00e9s kapcsolja \u00f6ssze azokat az esem\u00e9nysorozatokkal. A k\u00f3d k\u00e9r\u00e9sre fog futni egy automatikusan el\u0151k\u00e9sz\u00edtett kont\u00e9nerben, \u00e9s csak a futtat\u00e1s idej\u00e9\u00e9rt fogok fizetni. <\/p>\n<p>N\u00e9zz\u00fck meg, hogyan fog most kin\u00e9zni az alkalmaz\u00e1s fejleszt\u00e9si folyamata.<\/p>\n<h2>A fejleszt\u0151 szempontj\u00e1b\u00f3l<\/h2>\n<p>\nKor\u00e1bban a web\u00e1ruh\u00e1z alkalmaz\u00e1s\u00e1r\u00f3l kezdt\u00fcnk besz\u00e9lni. A hagyom\u00e1nyos megk\u00f6zel\u00edt\u00e9sben a rendszer f\u0151 logik\u00e1j\u00e1t egy monolitikus alkalmaz\u00e1s hajtja v\u00e9gre. A szerver az alkalmaz\u00e1ssal folyamatosan fut, m\u00e9g akkor is, ha nincs terhel\u00e9s.<\/p>\n<p><strong>Ahhoz, hogy \u00e1tv\u00e1ltsunk a serverless-re, a monolitikus alkalmaz\u00e1st mikroszolg\u00e1ltat\u00e1sokra bontjuk.<\/strong> Minden egyes funkci\u00f3hoz saj\u00e1t funkci\u00f3t \u00edrunk. A funkci\u00f3k egym\u00e1st\u00f3l f\u00fcggetlenek \u00e9s nem t\u00e1rolj\u00e1k az \u00e1llapotot (stateless). M\u00e9g az is lehets\u00e9ges, hogy k\u00fcl\u00f6nb\u00f6z\u0151 nyelveken \u00edr\u00f3djanak. Ha az egyik \"leesik\", az alkalmaz\u00e1s nem \u00e1ll le teljesen. Az alkalmaz\u00e1s architekt\u00far\u00e1ja \u00edgy fog kin\u00e9zni:<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a rackeken\" src=\"\/wp-content\/uploads\/2019\/05\/f62c5c08bbf587766198dbb807123273.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nA funkci\u00f3kra val\u00f3 feloszt\u00e1s a Serverless eset\u00e9ben hasonl\u00f3 a mikroszervizekhez. Azonban a mikroszerviz t\u00f6bb feladatot is el tud l\u00e1tni, m\u00edg egy funkci\u00f3nak ide\u00e1lisan egyetlen feladatot kellene megoldania. Tegy\u00fck fel, hogy a feladat a statisztika gy\u0171jt\u00e9se \u00e9s a felhaszn\u00e1l\u00f3 k\u00e9r\u00e9s\u00e9re t\u00f6rt\u00e9n\u0151 megjelen\u00edt\u00e9se. A mikroszervizes megk\u00f6zel\u00edt\u00e9sben ezt egy szolg\u00e1ltat\u00e1s l\u00e1tja el, amelynek k\u00e9t bel\u00e9p\u00e9si pontja van: az \u00edr\u00e1sra \u00e9s az olvas\u00e1sra. B\u00e9rmentes sz\u00e1m\u00edt\u00e1sok eset\u00e9n ez k\u00e9t k\u00fcl\u00f6n funkci\u00f3, amelyek nincsenek \u00f6sszekapcsolva. A fejleszt\u0151 sz\u00e1m\u00edt\u00e1si er\u0151forr\u00e1sokat takar\u00edt meg, ha p\u00e9ld\u00e1ul a statisztika gyakrabban friss\u00fcl, mint ahogy az let\u00f6lt\u00e9sre ker\u00fcl. <\/p>\n<p>A Serverless-funci\u00f3knak r\u00f6vid id\u0151tartamon bel\u00fcl kell v\u00e9grehajt\u00f3dniuk (timeout), amelyet a szolg\u00e1ltat\u00f3 hat\u00e1roz meg. P\u00e9ld\u00e1ul az AWS eset\u00e9ben a timeout 15 perc. Ez\u00e9rt a hossz\u00fa \u00e9lettartam\u00fa funkci\u00f3kat (long-lived) m\u00f3dos\u00edtani kell a k\u00f6vetelm\u00e9nyeknek megfelel\u0151en \u2013 ez a Serverless k\u00fcl\u00f6nb\u00f6zik m\u00e1s, manaps\u00e1g n\u00e9pszer\u0171 technol\u00f3gi\u00e1kt\u00f3l (tart\u00e1lyok \u00e9s Platform as a Service).<\/p>\n<p><strong>Minden funkci\u00f3nak esem\u00e9nyt rendel\u00fcnk.<\/strong> Az esem\u00e9ny egy trigger a cselekv\u00e9shez:<\/p>\n<p><strong>Esem\u00e9ny<\/strong><br \/>\n<strong>A tev\u00e9kenys\u00e9g, amelyet a funkci\u00f3 v\u00e9grehajt<\/strong><\/p>\n<p>A t\u00e1rol\u00f3ba felt\u00f6lt\u00f6tt\u00fck a term\u00e9k k\u00e9p\u00e9t<br \/>\nA k\u00e9pet t\u00f6m\u00f6r\u00edteni \u00e9s felt\u00f6lteni a k\u00f6nyvt\u00e1rba<\/p>\n<p>Az adatb\u00e1zisban friss\u00fclt a fizikai bolt c\u00edme<br \/>\n\u00daj helysz\u00edn bet\u00f6lt\u00e9se a t\u00e9rk\u00e9pekbe<\/p>\n<p>A v\u00e1s\u00e1rl\u00f3 kifizeti a term\u00e9ket<br \/>\nA kifizet\u00e9s feldolgoz\u00e1s\u00e1nak elind\u00edt\u00e1sa<\/p>\n<p>Esem\u00e9nyek lehetnek HTTP-k\u00e9r\u00e9sek, folyamatos adatok, \u00fczenetsorok \u00e9s \u00edgy tov\u00e1bb. Az esem\u00e9nyek forr\u00e1sai az adatok v\u00e1ltoz\u00e1sa vagy megjelen\u00e9se. Ezenk\u00edv\u00fcl a funkci\u00f3kat id\u0151z\u00edtett ind\u00edt\u00e1ssal is lehet futtatni.<\/p>\n<p>Az architekt\u00far\u00e1t kidolgoztuk, \u00e9s az alkalmaz\u00e1s szinte serverless lett. Most tov\u00e1bbl\u00e9p\u00fcnk a szolg\u00e1ltat\u00f3hoz.<\/p>\n<h2>A szolg\u00e1ltat\u00f3 oldal\u00e1r\u00f3l<\/h2>\n<p>\nA serverless sz\u00e1m\u00edt\u00e1sokat \u00e1ltal\u00e1ban felh\u0151szolg\u00e1ltat\u00f3k k\u00edn\u00e1lj\u00e1k. K\u00fcl\u00f6nb\u00f6z\u0151 neveken ismertek: Azure Functions, AWS Lambda, Google Cloud Functions, IBM Cloud Functions. <\/p>\n<p>A szolg\u00e1ltat\u00e1st a szolg\u00e1ltat\u00f3 konzolj\u00e1n vagy a felhaszn\u00e1l\u00f3i fi\u00f3kon kereszt\u00fcl fogjuk haszn\u00e1lni. A funkci\u00f3k k\u00f3dj\u00e1t az al\u00e1bbi m\u00f3dszerek valamelyik\u00e9vel lehet felt\u00f6lteni:<\/p>\n<ul>\n<li>k\u00f3dot \u00edrni a be\u00e9p\u00edtett szerkeszt\u0151kben a webkonzolon kereszt\u00fcl,<\/li>\n<li>arch\u00edv f\u00e1jl felt\u00f6lt\u00e9se a k\u00f3ddal,<\/li>\n<li>nyilv\u00e1nos vagy priv\u00e1t git-repozit\u00f3riumokkal dolgozni.<\/li>\n<\/ul>\n<p>\nItt \u00e1ll\u00edtjuk be az esem\u00e9nyeket, amelyek megh\u00edvj\u00e1k a funkci\u00f3t. K\u00fcl\u00f6nb\u00f6z\u0151 szolg\u00e1ltat\u00f3kn\u00e1l az esem\u00e9nyek k\u00e9szlete elt\u00e9rhet.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a rackeken\" src=\"\/wp-content\/uploads\/2019\/05\/98676fa23a9911aae5758ecdb2cd9a03.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>A szolg\u00e1ltat\u00f3 \u00e9p\u00edtette fel \u00e9s automatiz\u00e1lta a Function as a Service (FaaS) rendszert a saj\u00e1t infrastrukt\u00far\u00e1j\u00e1n:<\/p>\n<ol>\n<li>A funkci\u00f3k\u00f3d a szolg\u00e1ltat\u00f3 oldal\u00e1n tal\u00e1lhat\u00f3 t\u00e1rol\u00f3ba ker\u00fcl.<\/li>\n<li>Amikor esem\u00e9ny t\u00f6rt\u00e9nik, a szerveren automatikusan elindulnak az el\u0151k\u00e9sz\u00edtett k\u00f6rnyezettel rendelkez\u0151 kont\u00e9nerek. Minden funkci\u00f3p\u00e9ld\u00e1ny saj\u00e1t elszigetelt kont\u00e9ner\u00e9vel rendelkezik.<\/li>\n<li>A t\u00e1rol\u00f3b\u00f3l a funkci\u00f3 \u00e1tk\u00f6lt\u00f6zik a kont\u00e9nerbe, kisz\u00e1m\u00edt\u00f3dik, majd visszaadja az eredm\u00e9nyt.<\/li>\n<li>A p\u00e1rhuzamos esem\u00e9nyek sz\u00e1ma n\u00f6vekszik \u2014 ezzel p\u00e1rhuzamosan a kont\u00e9nerek sz\u00e1ma is. A rendszer automatikusan m\u00e9retez\u0151dik. Ha a felhaszn\u00e1l\u00f3k nem h\u00edvj\u00e1k meg a funkci\u00f3t, az inakt\u00edv marad.<\/li>\n<li>A szolg\u00e1ltat\u00f3 be\u00e1ll\u00edtja a kont\u00e9nerek t\u00e9tlens\u00e9gi idej\u00e9t \u2014 ha ezen az id\u0151n bel\u00fcl a funkci\u00f3k nem jelennek meg a kont\u00e9nerben, az megsemmis\u00fcl.<\/li>\n<\/ol>\n<p>\n\u00cdgy kapjuk meg a Serverlesst \"dobozb\u00f3l\". Az szolg\u00e1ltat\u00e1s\u00e9rt a pay-as-you-go modell szerint fogunk fizetni, \u00e9s csak azok\u00e9rt a funkci\u00f3k\u00e9rt, amelyeket haszn\u00e1lnak, \u00e9s csak annyi id\u0151\u00e9rt, ameddig haszn\u00e1lt\u00e1k \u0151ket.<\/p>\n<p>A fejleszt\u0151k megismertet\u00e9s\u00e9re a szolg\u00e1ltat\u00f3k legfeljebb 12 h\u00f3napos ingyenes tesztel\u00e9st aj\u00e1nlanak, de korl\u00e1tozz\u00e1k az \u00f6sszes sz\u00e1m\u00edt\u00e1si id\u0151t, a havi k\u00e9r\u00e9sek sz\u00e1m\u00e1t, a p\u00e9nzeszk\u00f6z\u00f6ket vagy a felhaszn\u00e1lt teljes\u00edtm\u00e9nyt.<\/p>\n<p>A szolg\u00e1ltat\u00f3val val\u00f3 egy\u00fcttm\u0171k\u00f6d\u00e9s f\u0151 el\u0151nye, hogy nem kell agg\u00f3dnunk az infrastrukt\u00fara (szerverek, virtu\u00e1lis g\u00e9pek, kont\u00e9nerek) miatt. A szolg\u00e1ltat\u00f3 a FaaS-t saj\u00e1t fejleszt\u00e9sein, valamint open-source eszk\u00f6z\u00f6k seg\u00edts\u00e9g\u00e9vel is megval\u00f3s\u00edthatja. Ezekr\u0151l fogunk besz\u00e9lni a k\u00f6vetkez\u0151kben.<\/p>\n<h2>Az open source szempontj\u00e1b\u00f3l<\/h2>\n<p>\nAz ut\u00f3bbi p\u00e1r \u00e9vben az open-source k\u00f6z\u00f6ss\u00e9g akt\u00edvan dolgozik a Serverless eszk\u00f6z\u00f6k\u00f6n. K\u00fcl\u00f6n\u00f6sen a legnagyobb piaci szerepl\u0151k is hozz\u00e1j\u00e1rulnak a serverless platformok fejl\u0151d\u00e9s\u00e9hez:<\/p>\n<ul>\n<li><strong>Google<\/strong> aj\u00e1nlja a fejleszt\u0151knek a saj\u00e1t open-source eszk\u00f6z\u00e9t \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/knative\/\">Knative<\/a><\/noindex>. A fejleszt\u00e9s\u00e9ben r\u00e9szt vett az IBM, a RedHat, a Pivotal \u00e9s a SAP;<\/li>\n<li><strong>IBM<\/strong> dolgoztak a Serverless-platformon <noindex><a rel=\"nofollow\" href=\"https:\/\/openwhisk.apache.org\/\">OpenWhisk<\/a><\/noindex>, amely k\u00e9s\u0151bb az Apache Foundation projektj\u00e9v\u00e9 v\u00e1lt;<\/li>\n<li><strong>Microsoft<\/strong> r\u00e9szben nyilv\u00e1noss\u00e1gra hozt\u00e1k a platform k\u00f3dj\u00e1t <noindex><a rel=\"nofollow\" href=\"https:\/\/azure.microsoft.com\/en-us\/services\/functions\/\">Azure Functions<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nFejleszt\u00e9sek folynak a serverless keretrendszerek ir\u00e1ny\u00e1ba is. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubeless.io\/\">Kubeless<\/a><\/noindex> \u00e9s <noindex><a rel=\"nofollow\" href=\"https:\/\/fission.io\/\">Fission<\/a><\/noindex> el\u0151re el\u0151k\u00e9sz\u00edtett Kubernetes klasztereken bel\u00fcl telep\u00edtve vannak, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openfaas.com\/\">OpenFaaS<\/a><\/noindex> mind Kubernetes, mind Docker Swarm m\u0171k\u00f6dik. A keretrendszer egyfajta vez\u00e9rl\u0151k\u00e9nt m\u0171k\u00f6dik - k\u00e9r\u00e9sre elk\u00e9sz\u00edti a v\u00e9grehajt\u00e1si k\u00f6rnyezetet a klaszterben, azt\u00e1n ott ind\u00edtja el a funkci\u00f3t.<\/p>\n<p>A keretrendszerek teret adnak az eszk\u00f6z konfigur\u00e1l\u00e1s\u00e1ra a saj\u00e1t ig\u00e9nyeik szerint. \u00cdgy a Kubeless-ben a fejleszt\u0151 be\u00e1ll\u00edthatja a funkci\u00f3 v\u00e9grehajt\u00e1si id\u0151t\u00fall\u00e9p\u00e9s\u00e9t (alap\u00e9rtelmezett \u00e9rt\u00e9k - 180 m\u00e1sodperc). A Fission megpr\u00f3b\u00e1lja megoldani a hideg ind\u00edt\u00e1s probl\u00e9m\u00e1j\u00e1t, \u00e9s azt javasolja, hogy n\u00e9h\u00e1ny kont\u00e9nert folyamatosan m\u0171k\u00f6dtessenek (b\u00e1r ez er\u0151forr\u00e1sok \u00fcresj\u00e1rati k\u00f6lts\u00e9geit vonja maga ut\u00e1n). Az OpenFaaS pedig sz\u00ednes k\u00edn\u00e1latot ny\u00fajt a k\u00fcl\u00f6nb\u00f6z\u0151 triggerekkel: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs \u00e9s m\u00e1sok.<\/p>\n<p>A kezd\u00e9shez sz\u00fcks\u00e9ges \u00fatmutat\u00f3kat a keretrendszerek hivatalos dokument\u00e1ci\u00f3j\u00e1ban tal\u00e1lhat\u00f3k. A haszn\u00e1latukhoz n\u00e9mileg t\u00f6bb k\u00e9szs\u00e9g sz\u00fcks\u00e9ges, mint a szolg\u00e1ltat\u00f3n\u00e1l - legal\u00e1bbis k\u00e9pesnek kell lenn\u00fcnk a Kubernetes klaszter parancssori ind\u00edt\u00e1s\u00e1ra. Maxim\u00e1lisan m\u00e1s open-source eszk\u00f6z\u00f6k (p\u00e9ld\u00e1ul a Kafka \u00fczenetsor-kezel\u0151) integr\u00e1l\u00e1s\u00e1ra is sz\u00fcks\u00e9g lehet.<\/p>\n<p>F\u00fcggetlen\u00fcl att\u00f3l, hogy milyen m\u00f3dszerrel dolgozunk a Serverless-szel - ak\u00e1r szolg\u00e1ltat\u00e1son kereszt\u00fcl, ak\u00e1r open-source seg\u00edts\u00e9g\u00e9vel - egy sor el\u0151ny \u00e9s h\u00e1tr\u00e1ny \u00e1ll rendelkez\u00e9s\u00fcnkre a Serverless megk\u00f6zel\u00edt\u00e9sn\u00e9l.<\/p>\n<h2>Az el\u0151ny\u00f6k \u00e9s h\u00e1tr\u00e1nyok szempontj\u00e1b\u00f3l<\/h2>\n<p>\nA Serverless kiterjeszti a kont\u00e9ner alap\u00fa infrastrukt\u00fara \u00e9s a mikroszolg\u00e1ltat\u00e1s-elv gondolatait, amely lehet\u0151v\u00e9 teszi a csapatok sz\u00e1m\u00e1ra, hogy t\u00f6bb nyelvben dolgozzanak, an\u00e9lk\u00fcl, hogy egyetlen platformra k\u00f6telezn\u00e9k el magukat. A rendszer fel\u00e9p\u00edt\u00e9se egyszer\u0171s\u00f6dik, \u00e9s a hib\u00e1k jav\u00edt\u00e1sa is k\u00f6nnyebb\u00e9 v\u00e1lik. A mikroszolg\u00e1ltat\u00e1s-architekt\u00fara lehet\u0151v\u00e9 teszi az \u00faj funkci\u00f3k gyorsabb hozz\u00e1ad\u00e1s\u00e1t a rendszerhez, mint egy monolitikus alkalmaz\u00e1s eset\u00e9n.<\/p>\n<p><strong>A Serverless m\u00e9g tov\u00e1bb cs\u00f6kkenti a fejleszt\u00e9si id\u0151t,<\/strong> lehet\u0151v\u00e9 t\u00e9ve a fejleszt\u0151 sz\u00e1m\u00e1ra, hogy kiz\u00e1r\u00f3lag az alkalmaz\u00e1s \u00fczleti logik\u00e1j\u00e1ra \u00e9s a k\u00f3d \u00edr\u00e1s\u00e1ra \u00f6sszpontos\u00edtson. Ennek k\u00f6vetkezm\u00e9nyek\u00e9nt cs\u00f6kken a fejleszt\u00e9sek piacra ker\u00fcl\u00e9s\u00e9nek ideje.<\/p>\n<p><strong>B\u00f3nuszk\u00e9nt automatikus sk\u00e1l\u00e1z\u00e1st kapunk a terhel\u00e9s alatt,<\/strong> \u00e9s csak a felhaszn\u00e1lt er\u0151forr\u00e1sok\u00e9rt fizet\u00fcnk, \u00e9s csak akkor, amikor azokat haszn\u00e1lj\u00e1k.<\/p>\n<p>Mint minden technol\u00f3gia, a Serverless-nek is vannak h\u00e1tr\u00e1nyai.<\/p>\n<p><em>P\u00e9ld\u00e1ul egy ilyen h\u00e1tr\u00e1ny lehet a hideg ind\u00edt\u00e1si id\u0151 (\u00e1tlagosan ak\u00e1r 1 m\u00e1sodperc olyan nyelvekn\u00e9l, mint a JavaScript, Python, Go, Java, Ruby).<\/em><\/p>\n<p>Egyr\u00e9szt a hideg ind\u00edt\u00e1s ideje t\u00f6bb v\u00e1ltoz\u00f3t\u00f3l f\u00fcgg: a funkci\u00f3 \u00edr\u00e1s\u00e1hoz haszn\u00e1lt nyelvt\u0151l, a k\u00f6nyvt\u00e1rak sz\u00e1m\u00e1t\u00f3l, a k\u00f3d mennyis\u00e9g\u00e9t\u0151l, s\u0151t az extra er\u0151forr\u00e1sokkal val\u00f3 kommunik\u00e1ci\u00f3t\u00f3l (p\u00e9ld\u00e1ul adatb\u00e1zisok vagy azonos\u00edt\u00f3 szerverek). Mivel a fejleszt\u0151 ezeket a v\u00e1ltoz\u00f3kat kezeli, k\u00e9pes cs\u00f6kkenteni a start id\u0151t. M\u00e1sr\u00e9szr\u0151l viszont a fejleszt\u0151 nem tudja befoly\u00e1solni a kont\u00e9ner ind\u00edt\u00e1s\u00e1nak idej\u00e9t \u2013 ez teljes m\u00e9rt\u00e9kben a szolg\u00e1ltat\u00f3t\u00f3l f\u00fcgg.<\/p>\n<p>A hideg ind\u00edt\u00e1s meleg ind\u00edt\u00e1ss\u00e1 v\u00e1lhat, amikor a funkci\u00f3 \u00fajrahaszn\u00e1l egy el\u0151z\u0151 esem\u00e9ny \u00e1ltal ind\u00edtott kont\u00e9nert. Ez a helyzet h\u00e1rom esetben fordulhat el\u0151:<\/p>\n<ul>\n<li>ha az \u00fcgyfelek gyakran haszn\u00e1lj\u00e1k a szolg\u00e1ltat\u00e1st, \u00e9s n\u0151 a funkci\u00f3ra tett k\u00e9relmek sz\u00e1ma;<\/li>\n<li>ha a szolg\u00e1ltat\u00f3, platform vagy keretrendszer lehet\u0151v\u00e9 teszi, hogy a kont\u00e9nerek egy r\u00e9sze folyamatosan futva maradjon;<\/li>\n<li>ha a fejleszt\u0151 id\u0151z\u00edt\u0151 alapj\u00e1n ind\u00edt funkci\u00f3kat (p\u00e9ld\u00e1ul h\u00e1rom percenk\u00e9nt).<\/li>\n<\/ul>\n<p>\nSok alkalmaz\u00e1s sz\u00e1m\u00e1ra a hideg ind\u00edt\u00e1s nem probl\u00e9ma. Itt a szolg\u00e1ltat\u00e1s t\u00edpusa \u00e9s c\u00e9ljai a m\u00e9rvad\u00f3k. Egy m\u00e1sodperces k\u00e9sleked\u00e9s nem mindig kritikus egy \u00fczleti alkalmaz\u00e1s sz\u00e1m\u00e1ra, de orvosi szolg\u00e1ltat\u00e1sok eset\u00e9n kritikus lehet. Val\u00f3sz\u00edn\u0171, hogy ebben az esetben a serverless megk\u00f6zel\u00edt\u00e9s m\u00e1r nem lesz alkalmazhat\u00f3.<\/p>\n<p><em>A Serverless k\u00f6vetkez\u0151 h\u00e1tr\u00e1nya a funkci\u00f3 r\u00f6vid \u00e9lettartama (timeout), amely alatt a funkci\u00f3nak v\u00e9gre kell hajt\u00f3dnia.<\/em><\/p>\n<p>Ha azonban hossz\u00fa \u00e9let\u0171 feladatokkal kell foglalkoznunk, hibrid architekt\u00far\u00e1t haszn\u00e1lhatunk \u2013 a Serverless-t egy m\u00e1sik technol\u00f3gi\u00e1val kombin\u00e1lva.<\/p>\n<p><em>Nem minden rendszer k\u00e9pes a Serverless s\u00e9ma szerint m\u0171k\u00f6dni.<\/em><\/p>\n<p>N\u00e9h\u00e1ny alkalmaz\u00e1s tov\u00e1bbra is t\u00e1rolja az adatokat \u00e9s az \u00e1llapotokat a v\u00e9grehajt\u00e1s sor\u00e1n. N\u00e9h\u00e1ny architekt\u00fara monolitikus marad, m\u00edg n\u00e9h\u00e1ny funkci\u00f3 hossz\u00fa \u00e9let\u0171 lesz. Azonban (ahogy egykor a felh\u0151technol\u00f3gi\u00e1k, majd a kont\u00e9nerek), a Serverless egy nagy j\u00f6v\u0151vel rendelkez\u0151 technol\u00f3gia.<\/p>\n<p>Ebben a f\u00e9nyben szeretn\u00e9m sim\u00e1n \u00e1tvezetni a Serverless megk\u00f6zel\u00edt\u00e9s alkalmaz\u00e1s\u00e1nak k\u00e9rd\u00e9s\u00e9hez.<\/p>\n<h2>Az alkalmaz\u00e1s szempontj\u00e1b\u00f3l<\/h2>\n<p>\n2018-ban a Serverless haszn\u00e1lat\u00e1nak ar\u00e1nya <noindex><a rel=\"nofollow\" href=\"https:\/\/media.flexera.com\/documents\/rightscale-2019-state-of-the-cloud-report-from-flexera.pdf\">m\u00e1sf\u00e9l szoros\u00e1ra n\u0151tt<\/a><\/noindex>. Azok k\u00f6z\u00f6tt a c\u00e9gek k\u00f6z\u00f6tt, akik m\u00e1r bevezett\u00e9k a technol\u00f3gi\u00e1t a szolg\u00e1ltat\u00e1saikban, olyan piaci \u00f3ri\u00e1sok szerepelnek, mint a Twitter, a PayPal, a Netflix, a T-Mobile \u00e9s a Coca-Cola. Fontos meg\u00e9rteni, hogy a Serverless nem csodaszer, hanem egy eszk\u00f6z egy bizonyos probl\u00e9mak\u00f6r megold\u00e1s\u00e1ra:<\/p>\n<ul>\n<li><strong>Cs\u00f6kkenteni az er\u0151forr\u00e1sok t\u00e9tlens\u00e9g\u00e9t.<\/strong> Nem sz\u00fcks\u00e9ges folyamatosan futtatni a virtu\u00e1lis g\u00e9pet olyan szolg\u00e1ltat\u00e1sokhoz, amelyekre ritk\u00e1n van sz\u00fcks\u00e9g.<\/li>\n<li><strong>Az adatokat \"azonnal\" feldolgozni.<\/strong> K\u00e9peket t\u00f6m\u00f6r\u00edteni, h\u00e1tt\u00e9rkiv\u00e1g\u00e1st v\u00e9gezni, vide\u00f3k k\u00f3dol\u00e1s\u00e1t megv\u00e1ltoztatni, IoT \u00e9rz\u00e9kel\u0151kkel dolgozni, matematikai m\u0171veleteket v\u00e9grehajtani.\n<\/li>\n<li><strong>\"\u00d6sszekapcsolni\" m\u00e1s szolg\u00e1ltat\u00e1sokat.<\/strong> Git-repozit\u00f3rium bels\u0151 programokkal, Slack chatbot Jira \u00e9s napt\u00e1rral.<\/li>\n<li><strong>Terhel\u00e9seloszt\u00e1s.<\/strong> Itt r\u00e9szletesebben meg\u00e1llunk.<\/li>\n<\/ul>\n<p>\nTegy\u00fck fel, van egy szolg\u00e1ltat\u00e1s, amelyre 50 ember j\u00f6n. Ehhez egy gyenge hardverrel rendelkez\u0151 virtu\u00e1lis g\u00e9p tartozik. Id\u0151nk\u00e9nt a szolg\u00e1ltat\u00e1sra nehezed\u0151 terhel\u00e9s t\u00f6bbsz\u00f6r\u00f6s\u00e9re n\u0151. Ekkor a gyenge hardver nem tud megbirk\u00f3zni.<\/p>\n<p>A rendszerbe be lehet kapcsolni egy terhel\u00e9seloszt\u00f3t, amely a terhel\u00e9st mondjuk h\u00e1rom virtu\u00e1lis g\u00e9pre osztja el. Ezen a ponton nem tudjuk pontosan el\u0151re jelezni a terhel\u00e9st, ez\u00e9rt egy bizonyos mennyis\u00e9g\u0171 er\u0151forr\u00e1st \"tartal\u00e9kolunk\". \u00c9s ez\u00e9rt t\u00fal sokat fizet\u00fcnk az \u00fcresj\u00e1rat\u00e9rt. <\/p>\n<p>Ilyen helyzetben a rendszert egy hibrid megk\u00f6zel\u00edt\u00e9ssel optimaliz\u00e1lhatjuk: a terhel\u00e9seloszt\u00f3 m\u00f6g\u00f6tt egy virtu\u00e1lis g\u00e9pet hagyunk, \u00e9s linket helyez\u00fcnk el Serverless Endpoint funkci\u00f3kkal. Ha a terhel\u00e9s meghaladja a k\u00fcsz\u00f6b\u00f6t, a terhel\u00e9seloszt\u00f3 elind\u00edtja a funkci\u00f3k p\u00e9ld\u00e1nyait, amelyek \u00e1tveszik a k\u00e9rd\u00e9sek egy r\u00e9sz\u00e9nek feldolgoz\u00e1s\u00e1t.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless a rackeken\" src=\"\/wp-content\/uploads\/2019\/05\/79262c19faba29a4639a05e3097f7914.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\u00cdgy a Serverless ott haszn\u00e1lhat\u00f3, ahol ritk\u00e1n, de intenz\u00edven kell nagy sz\u00e1m\u00fa k\u00e9rd\u00e9st kezelni. Ebben az esetben a funkci\u00f3k 15 percre val\u00f3 ind\u00edt\u00e1sa gazdas\u00e1gosabb, mint folyamatosan egy virtu\u00e1lis g\u00e9pet vagy szervert fenntartani.<\/p>\n<p>Minden el\u0151nye ellen\u00e9re a serverless sz\u00e1m\u00edt\u00e1si megold\u00e1sok bevezet\u00e9se el\u0151tt el\u0151sz\u00f6r \u00e9rdemes felm\u00e9rni az alkalmaz\u00e1s logik\u00e1j\u00e1t \u00e9s meg\u00e9rteni, hogy mely feladatokat tud a Serverless megoldani a konkr\u00e9t esetben. <\/p>\n<h2>Serverless \u00e9s Selectel<\/h2>\n<p>\nA Selecteln\u00e9l m\u00e1r <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\">egyszer\u0171s\u00edtett\u00fck a Kubernetes kezel\u00e9s\u00e9t<\/a><\/noindex> a vez\u00e9rl\u0151pultunkon kereszt\u00fcl. Most saj\u00e1t FaaS-platformot \u00e9p\u00edt\u00fcnk. Azt szeretn\u00e9nk, hogy a fejleszt\u0151k saj\u00e1t feladataik megold\u00e1s\u00e1ra haszn\u00e1lhass\u00e1k a Serverlesst egy k\u00e9nyelmes, rugalmas fel\u00fcleten.<\/p>\n<p>Ha van \u00f6tlete arr\u00f3l, hogy milyen legyen az ide\u00e1lis FaaS-platform, \u00e9s hogyan szeretn\u00e9 haszn\u00e1lni a Serverlesst a projektjeiben, ossza meg vel\u00fcnk a megjegyz\u00e9sekben. Figyelembe vessz\u00fck az \u00d6n k\u00edv\u00e1ns\u00e1gait a platform fejleszt\u00e9s\u00e9n\u00e9l.<br \/>\n\u00a0<br \/>\nA cikkben felhaszn\u00e1lt anyagok:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.rightscale.com\/lp\/state-of-the-cloud\">A Serverless haszn\u00e1lat\u00e1nak ar\u00e1nya m\u00e1sf\u00e9l szeres\u00e9re n\u0151tt (teljes jelent\u00e9s a RightScale-t\u0151l)<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/mikhail.io\/serverless\/coldstarts\/aws\/\">Hogyan f\u00fcgg a hideg ind\u00edt\u00e1s ideje az alkalmaz\u00e1s nyelv\u00e9t\u0151l<\/a><\/noindex><\/li>\n<\/ul>\n<p>Forr\u00e1s: <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\/hu\/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=\"hu_HU\" \/>\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\/hu\/blog\/administrirovanie\/serverless-po-stoechkam\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:55:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:55:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Serverless a lehet\u0151s\u00e9gekr\u0151l | ProHoster","description":"A serverless nem a fizikai szerverek hi\u00e1ny\u00e1r\u00f3l sz\u00f3l.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/serverless-po-stoechkam","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","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\/hu\/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\/hu\/wp-json\/wp\/v2\/posts\/33935","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=33935"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/33935\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/25594"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=33935"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=33935"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=33935"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}