{"id":75892,"date":"2020-03-29T01:43:46","date_gmt":"2020-03-28T23:43:46","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij"},"modified":"2020-03-29T01:43:46","modified_gmt":"2020-03-28T23:43:46","slug":"mikroservisy-kombinatornyj-vzryv-versij","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij","title":{"rendered":"Mikroslu\u017eby \u2013 kombinatorn\u00ed exploze verz\u00ed","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ahoj, Habr! P\u0159edstavuji v\u00e1m <i>autorsk\u00fd p\u0159eklad \u010dl\u00e1nku <noindex><a rel=\"nofollow\" href=\"https:\/\/worklifenotes.com\/2020\/03\/04\/microservices-combinatorial-explosion-of-versions\/\">Microservices \u2013 Combinatorial Explosion of Versions<\/a><\/noindex>.<\/i><br \/>\n<img decoding=\"async\" alt=\"Mikroslu\u017eby \u2013 kombinatorn\u00ed exploze verz\u00ed\" src=\"\/wp-content\/uploads\/2020\/03\/595431c434519e41afe45e86c5725b8d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nV dob\u011b, kdy se IT sv\u011bt postupn\u011b p\u0159ech\u00e1z\u00ed na mikroslu\u017eby a n\u00e1stroje jako Kubernetes, se st\u00e1le v\u00edce vyplouv\u00e1 na povrch pouze jedna probl\u00e9ma. Tento probl\u00e9m je <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9A%D0%BE%D0%BC%D0%B1%D0%B8%D0%BD%D0%B0%D1%82%D0%BE%D1%80%D0%BD%D1%8B%D0%B9_%D0%B2%D0%B7%D1%80%D1%8B%D0%B2\">kombinatorn\u00ed exploze<\/a><\/noindex> verz\u00ed mikroslu\u017eeb. IT komunita v\u0161ak v\u011b\u0159\u00ed, \u017ee sou\u010dasn\u00e1 situace je v\u00fdrazn\u011b lep\u0161\u00ed ne\u017e <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Dependency_hell\">\u201eDependency hell\u201c<\/a><\/noindex> minul\u00e1 generace technologi\u00ed. Nicm\u00e9n\u011b, spr\u00e1va verz\u00ed mikroslu\u017eeb je velmi slo\u017eit\u00fd probl\u00e9m. Jedn\u00edm z d\u016fkaz\u016f toho mohou b\u00fdt \u010dl\u00e1nky jako <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/444130\/\">\u201eVr\u00e1t\u00edte mi m\u016fj monolit\u201c<\/a><\/noindex>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nPokud zat\u00edm nerozum\u00edte probl\u00e9mu, dovolte mi vysv\u011btlit. P\u0159edstavte si, \u017ee v\u00e1\u0161 produkt se skl\u00e1d\u00e1 z 10 mikroslu\u017eeb. Nyn\u00ed si p\u0159edstavte, \u017ee pro ka\u017edou z t\u011bchto mikroslu\u017eeb vych\u00e1z\u00ed 1 nov\u00e1 verze. Pouze 1 verze \u2013 douf\u00e1m, \u017ee se v\u0161ichni shodneme, \u017ee to je velmi trivi\u00e1ln\u00ed a nev\u00fdznamn\u00fd fakt. Nyn\u00ed se v\u0161ak pod\u00edvejme znovu na n\u00e1\u0161 produkt. Pouze se s jednou novou verz\u00ed ka\u017ed\u00e9 komponenty m\u00e1me nyn\u00ed 2^10 \u2013 nebo 1024 permutac\u00ed, jak lze n\u00e1\u0161 produkt sestavit.<\/p>\n<p>Pokud st\u00e1le z\u016fst\u00e1v\u00e1 nedorozum\u011bn\u00ed, dovolte mi rozlo\u017eit matematiku. Tak\u017ee m\u00e1me 10 mikroslu\u017eeb, z nich\u017e ka\u017ed\u00e1 dost\u00e1v\u00e1 jedno aktualizaci. To znamen\u00e1, \u017ee m\u00e1me 2 mo\u017en\u00e9 verze pro ka\u017edou mikroslu\u017ebu (bu\u010f starou, nebo novou). Nyn\u00ed, pro ka\u017ed\u00fd z komponent\u016f produktu m\u016f\u017eeme pou\u017e\u00edt jakoukoli z t\u011bchto dvou verz\u00ed. Matematicky je to tot\u00e9\u017e, jako bychom m\u011bli 10m\u00edstn\u00e9 bin\u00e1rn\u00ed \u010d\u00edslo. Nap\u0159\u00edklad, dejme tomu, \u017ee 1 je nov\u00e1 verze a 0 je star\u00e1 verze \u2013 pak jedna mo\u017en\u00e1 permutace m\u016f\u017ee b\u00fdt ozna\u010dena jako 1001000000 \u2013 kde prvn\u00ed a \u010dtvrt\u00fd komponent jsou aktualizov\u00e1ny, zat\u00edmco v\u0161echny ostatn\u00ed ne. Z matematiky v\u00edme, \u017ee 10m\u00edstn\u00e9 bin\u00e1rn\u00ed \u010d\u00edslo m\u016f\u017ee m\u00edt 2^10 nebo 1024 hodnot. To znamen\u00e1, \u017ee jsme potvrdili rozsah \u010d\u00edsla, se kter\u00fdm se vypo\u0159\u00e1d\u00e1v\u00e1me.<\/p>\n<p>Pokra\u010dujeme v \u00favah\u00e1ch d\u00e1le \u2014 co se stane, pokud budeme m\u00edt 100 mikroslu\u017eeb a ka\u017ed\u00e1 z nich bude m\u00edt 10 mo\u017en\u00fdch verz\u00ed? Cel\u00e1 situace se st\u00e1v\u00e1 velmi nep\u0159\u00edjemnou \u2014 nyn\u00ed m\u00e1me 10^100 permutac\u00ed \u2014 co\u017e je obrovsk\u00e9 \u010d\u00edslo. P\u0159esto bych tuto situaci ozna\u010dil pr\u00e1v\u011b tak, proto\u017ee se nyn\u00ed schov\u00e1v\u00e1me za slovy jako \u201ekubernetes\u201c a \u010del\u00edme probl\u00e9mu tak, jak je.<\/p>\n<p>Pro\u010d m\u011b tato probl\u00e9m tak fascinuje? Z\u010d\u00e1sti proto, \u017ee kdy\u017e jsem d\u0159\u00edve pracoval ve sv\u011bt\u011b NLP a AI, hodn\u011b jsme diskutovali o probl\u00e9mu kombinatorn\u00ed exploze asi p\u0159ed 5-6 lety. Jen m\u00edsto verz\u00ed jsme m\u011bli jednotliv\u00e1 slova a m\u00edsto produkt\u016f jsme m\u011bli v\u011bty a odstavce. A i kdy\u017e probl\u00e9my s NLP a AI z\u016fst\u00e1vaj\u00ed do zna\u010dn\u00e9 m\u00edry nevy\u0159e\u0161eny, je t\u0159eba p\u0159iznat, \u017ee za posledn\u00edch p\u00e1r let byl u\u010din\u011bn v\u00fdznamn\u00fd pokrok. <i>(podle m\u011b, pokrok by mohl b\u00fdt v\u011bt\u0161\u00ed,<b>o<\/b>kdyby lid\u00e9 v oboru v\u011bnovali trochu m\u00e9n\u011b pozornosti strojov\u00e9mu u\u010den\u00ed a o n\u011bco v\u00edce jin\u00fdm technik\u00e1m \u2014 ale to u\u017e je mimo t\u00e9ma).<\/i><\/p>\n<p>Vr\u00e1t\u00edm se do sv\u011bta DevOps a mikroslu\u017eeb. P\u0159ed n\u00e1mi le\u017e\u00ed obrovsk\u00fd probl\u00e9m, skr\u00fdvaj\u00edc\u00ed se jako slon v Kunstkammeru \u2014 proto\u017ee co \u010dasto sly\u0161\u00edm \u2014 \u201eprost\u011b si vezmi kubernetes a helm, a v\u0161echno bude v po\u0159\u00e1dku!\u201c Ale ne, nic nebude v po\u0159\u00e1dku, pokud v\u0161echno nech\u00e1me tak, jak je. Nav\u00edc analytick\u00e9 \u0159e\u0161en\u00ed tohoto probl\u00e9mu se zd\u00e1 b\u00fdt nepraktick\u00e9 kv\u016fli jeho slo\u017eitosti. Podobn\u011b jako u NLP, m\u011bli bychom nejprve p\u0159istoupit k tomuto probl\u00e9mu z\u00fa\u017een\u00edm vyhled\u00e1vac\u00ed oblasti \u2014 v tomto p\u0159\u00edpad\u011b vylou\u010den\u00edm zastaral\u00fdch permutac\u00ed.<\/p>\n<p>Jedna z v\u011bc\u00ed, kter\u00e1 m\u016f\u017ee pomoci \u2014 psal jsem minul\u00fd rok <noindex><a rel=\"nofollow\" href=\"https:\/\/worklifenotes.com\/2019\/03\/21\/devops-kpis-measuring-distance-between-latest-and-greatest-and-oldest-production-version\/\">o nutnosti udr\u017eovat minim\u00e1ln\u00ed variabilitu mezi verzemi dod\u00e1van\u00fdmi klient\u016fm.<\/a><\/noindex>Tak\u00e9 je d\u016fle\u017eit\u00e9 poznamenat, \u017ee dob\u0159e navr\u017een\u00fd proces CI\/CD velmi pom\u00e1h\u00e1 p\u0159i sni\u017eov\u00e1n\u00ed variac\u00ed. Nicm\u00e9n\u011b, sou\u010dasn\u00e1 situace s CI\/CD nen\u00ed dostate\u010dn\u011b dobr\u00e1 pro \u0159e\u0161en\u00ed probl\u00e9mu permutac\u00ed bez dal\u0161\u00edho n\u00e1stroje pro sledov\u00e1n\u00ed a evidenci komponent\u016f.<\/p>\n<p>Co pot\u0159ebujeme \u2014 je syst\u00e9m experiment\u016f ve f\u00e1zi integrace, kde bychom mohli ur\u010dit faktor rizika pro ka\u017edou komponentu, a tak\u00e9 m\u00edt automatizovan\u00fd proces aktualizace r\u016fzn\u00fdch komponent a testov\u00e1n\u00ed bez z\u00e1sahu oper\u00e1tora \u2014 abychom vid\u011bli, co funguje, a co ne.<\/p>\n<p>Takov\u00fd syst\u00e9m experiment\u016f by mohl vypadat n\u00e1sledovn\u011b:<\/p>\n<ol>\n<li>V\u00fdvoj\u00e1\u0159i p\u00ed\u0161\u00ed testy (to je kritick\u00e1 etapa \u2013 proto\u017ee jinak nem\u00e1me \u017e\u00e1dn\u00fd hodnot\u00edc\u00ed krit\u00e9rium \u2013 to je jak\u00e9hosi ozna\u010dov\u00e1n\u00ed dat v strojov\u00e9m u\u010den\u00ed).<\/li>\n<li>Ka\u017ed\u00e1 komponenta (projekt) dost\u00e1v\u00e1 sv\u016fj vlastn\u00ed CI syst\u00e9m \u2013 tento proces je dnes dob\u0159e propracov\u00e1n, a ot\u00e1zka vytvo\u0159en\u00ed CI syst\u00e9mu pro jednotnou komponentu je v\u011bt\u0161inou vy\u0159e\u0161ena.<\/li>\n<li>\u201eChytr\u00fd integra\u010dn\u00ed syst\u00e9m\u201c shroma\u017e\u010fuje v\u00fdsledky r\u016fzn\u00fdch CI syst\u00e9m\u016f a spojuje projekty-komponenty do fin\u00e1ln\u00edho produktu, spou\u0161t\u00ed testov\u00e1n\u00ed a nakonec vypo\u010d\u00edt\u00e1v\u00e1 nejkrat\u0161\u00ed cestu k dosa\u017een\u00ed pot\u0159ebn\u00e9 funk\u010dnosti produktu na z\u00e1klad\u011b existuj\u00edc\u00edch komponent\u016f a faktor\u016f rizika. Pokud aktualizaci nen\u00ed mo\u017en\u00e9 prov\u00e9st, tento syst\u00e9m upozorn\u00ed v\u00fdvoj\u00e1\u0159e na existuj\u00edc\u00ed komponenty a na kter\u00e9 z nich doch\u00e1z\u00ed k chyb\u011b. Je\u0161t\u011b jednou zd\u016fraz\u0148uji, \u017ee testovac\u00ed syst\u00e9m zde m\u00e1 kritick\u00fd v\u00fdznam \u2013 jeliko\u017e integra\u010dn\u00ed syst\u00e9m pou\u017e\u00edv\u00e1 testy jako hodnot\u00edc\u00ed krit\u00e9rium.<\/li>\n<li>CD syst\u00e9m, kter\u00fd pak z\u00edsk\u00e1v\u00e1 data z \u201eChytr\u00e9ho integra\u010dn\u00edho syst\u00e9mu\u201c a prov\u00e1d\u00ed p\u0159\u00edmo aktualizaci. Tato f\u00e1ze uzav\u00edr\u00e1 cyklus.<\/li>\n<\/ol>\n<p>\nZ\u00e1v\u011brem, pro m\u011b jedna z nejv\u011bt\u0161\u00edch probl\u00e9m\u016f nyn\u00ed je absenci takov\u00e9ho \u201eChytr\u00e9ho integra\u010dn\u00edho syst\u00e9mu\u201c, kter\u00fd by spojoval r\u016fzn\u00e9 komponenty do produktu a t\u00edm umo\u017enil sledovat, jak\u00fdm zp\u016fsobem je produkt celkov\u011b slo\u017een. Zaj\u00edmaly by m\u011b my\u0161lenky komunity na toto t\u00e9ma (spojler \u2013 nyn\u00ed pracuji na projektu <noindex><a rel=\"nofollow\" href=\"https:\/\/relizahub.com\">Reliza<\/a><\/noindex>, kter\u00fd by se mohl st\u00e1t takov\u00fdm chytr\u00fdm integra\u010dn\u00edm syst\u00e9mem).<\/p>\n<p>Jedna posledn\u00ed v\u011bc, kterou chci zm\u00ednit, \u2013 pro m\u011b monolit nen\u00ed p\u0159ijateln\u00fd pro jak\u00fdkoliv projekt alespo\u0148 st\u0159edn\u00ed velikosti. S velk\u00fdm skepticismem nahl\u00ed\u017e\u00edm na pokusy urychlit \u010das realizace a kvalitu v\u00fdvoje t\u00edm, \u017ee se vrac\u00edme k monolitu. Za prv\u00e9, monolit m\u00e1 podobn\u00fd probl\u00e9m spr\u00e1vy komponent\u016f \u2013 mezi r\u016fzn\u00fdmi knihovnami, ze kter\u00fdch se skl\u00e1d\u00e1, p\u0159i\u010dem\u017e to nen\u00ed tak n\u00e1padn\u00e9 a projevuje se p\u0159edev\u0161\u00edm ve \u010dasu, kter\u00fd v\u00fdvoj\u00e1\u0159i str\u00e1v\u00ed. D\u016fsledkem probl\u00e9mu monolitu je faktick\u00e1 nemo\u017enost prov\u00e1d\u011bt zm\u011bny v k\u00f3du \u2013 a extr\u00e9mn\u011b pomal\u00e1 rychlost v\u00fdvoje.<\/p>\n<p>Mikroslu\u017eby zlep\u0161uj\u00ed situaci, av\u0161ak pot\u00e9 se mikroslu\u017ebov\u00e1 architektura pot\u00fdk\u00e1 s probl\u00e9mem kombinatorn\u00ed exploze ve f\u00e1zi integrace. Ano, v podstat\u011b jsme posunuli stejn\u00fd probl\u00e9m \u2014 z f\u00e1ze v\u00fdvoje na f\u00e1zi integrace. Nicm\u00e9n\u011b, podle m\u00e9ho n\u00e1zoru, p\u0159\u00edstup mikroslu\u017eeb p\u0159ece jen vede k lep\u0161\u00edm v\u00fdsledk\u016fm a t\u00fdmy dosahuj\u00ed v\u00fdsledk\u016f rychleji (pravd\u011bpodobn\u011b p\u0159edev\u0161\u00edm d\u00edky zmen\u0161en\u00ed velikosti v\u00fdvojov\u00e9 jednotky \u2014 nebo <i>batch size<\/i>). Av\u0161ak p\u0159echod od monolitu k mikroslu\u017eb\u00e1m zat\u00edm nep\u0159inesl dostate\u010dn\u00e9 zlep\u0161en\u00ed procesu \u2014 kombinatorn\u00ed exploze verz\u00ed mikroslu\u017eeb je obrovsk\u00fd probl\u00e9m a m\u00e1me velk\u00fd potenci\u00e1l situaci zlep\u0161it, jakmile ji za\u010dneme \u0159e\u0161it.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/494340\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u0430\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 Microservices \u2013 Combinatorial Explosion of Versions. \u0412\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u043a\u043e\u0433\u0434\u0430 \u043c\u0438\u0440 IT \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u044b \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0432\u0440\u043e\u0434\u0435 Kubernetes, \u0432\u0441\u0435 \u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u043e\u0439 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043b\u0438\u0448\u044c \u043e\u0434\u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430. \u042d\u0442\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u2014 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0442\u043e\u0440\u043d\u044b\u0439 \u0432\u0437\u0440\u044b\u0432 \u0432\u0435\u0440\u0441\u0438\u0439 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432. \u0412\u0441\u0435 \u0436\u0435 IT \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442, \u0447\u0442\u043e \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u044f\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043b\u0443\u0447\u0448\u0435, \u0447\u0435\u043c \u00abDependency hell\u00bb \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":75893,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-75892","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=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440!\" \/>\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\/mikroservisy-kombinatornyj-vzryv-versij\" \/>\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\u041c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u044b \u2014 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0442\u043e\u0440\u043d\u044b\u0439 \u0432\u0437\u0440\u044b\u0432 \u0432\u0435\u0440\u0441\u0438\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440!\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij\" \/>\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-03-28T23:43:46+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-28T23:43:46+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\udd47Mikroslu\u017eby \u2014 kombinatorn\u00ed exploze verz\u00ed | ProHoster","description":"Ahoj, Habr!","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij","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\u041c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u044b \u2014 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0442\u043e\u0440\u043d\u044b\u0439 \u0432\u0437\u0440\u044b\u0432 \u0432\u0435\u0440\u0441\u0438\u0439 | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440!","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij","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-03-28T23:43:46+00:00","article:modified_time":"2020-03-28T23:43:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"75892","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 17:47:28","updated":"2022-09-30 17:33:29","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\/75892","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=75892"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/75892\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/75893"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=75892"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=75892"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=75892"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}