{"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\/sv\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij","title":{"rendered":"Mikrotj\u00e4nster \u2013 en kombinatorisk explosion av versioner","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Hej, Habr! Jag presenterar f\u00f6r er <i>en egen \u00f6vers\u00e4ttning av artikeln <noindex><a rel=\"nofollow\" href=\"https:\/\/worklifenotes.com\/2020\/03\/04\/microservices-combinatorial-explosion-of-versions\/\">Mikrotj\u00e4nster \u2013 en kombination av_versions<\/a><\/noindex>.<\/i><br \/>\n<img decoding=\"async\" alt=\"Mikrotj\u00e4nster \u2013 en kombinatorisk explosion av versioner\" src=\"\/wp-content\/uploads\/2020\/03\/595431c434519e41afe45e86c5725b8d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nN\u00e4r IT-v\u00e4rlden gradvis \u00f6verg\u00e5r till mikrotj\u00e4nster och verktyg som Kubernetes blir ett problem allt mer framtr\u00e4dande. Det h\u00e4r problemet \u00e4r <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\">kombinatorisk explosion<\/a><\/noindex> av mikrotj\u00e4nsternas versioner. IT-gemenskapen anser \u00e4nd\u00e5 att den nuvarande situationen \u00e4r betydligt b\u00e4ttre \u00e4n <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Dependency_hell\">\u00bbDependency hell\u00ab<\/a><\/noindex> den tidigare generationens teknologier. Dock \u00e4r versionshantering av mikrotj\u00e4nster en ganska komplicerad fr\u00e5ga. Ett av bevisen p\u00e5 detta kan ses i artiklar som <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/444130\/\">\u00bbGe mig tillbaka min monolit\u00ab<\/a><\/noindex>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nOm du fortfarande inte f\u00f6rst\u00e5r problemet, l\u00e5t mig f\u00f6rklara. Anta att din produkt best\u00e5r av 10 mikrotj\u00e4nster. Anta nu att det f\u00f6r varje av dessa mikrotj\u00e4nster sl\u00e4pps en ny version. Bara en version \u2014 jag hoppas att vi alla kan enas om att detta \u00e4r en ganska trivial och obetydlig fakta. Men l\u00e5t oss titta p\u00e5 v\u00e5r produkt igen. Med bara en ny version av varje komponent har vi nu 2^10 \u2014 eller 1024 permutationer av hur vi kan s\u00e4tta ihop v\u00e5r produkt.<\/p>\n<p>Om det fortfarande finns oklarheter, l\u00e5t mig bryta ner matematiken. S\u00e5, vi har 10 mikrotj\u00e4nster, varje f\u00e5r en uppdatering. Det inneb\u00e4r att vi f\u00e5r 2 m\u00f6jliga versioner f\u00f6r varje mikrotj\u00e4nst (antingen den gamla eller den nya). Nu, f\u00f6r varje komponent i produkten kan vi anv\u00e4nda vilken av dessa tv\u00e5 versioner vi vill. Matematiskt sett \u00e4r detta detsamma som om vi hade ett bin\u00e4rt tal med 10 tecken. Till exempel, l\u00e5t oss s\u00e4ga att 1 \u00e4r den nya versionen och 0 \u00e4r den gamla versionen \u2014 s\u00e5 kan en m\u00f6jlig permutation anges som 1001000000 \u2014 d\u00e4r den 1:a och 4:e komponenten \u00e4r uppdaterade, medan alla andra inte \u00e4r det. Fr\u00e5n matematiken vet vi att ett bin\u00e4rt tal med 10 tecken kan ha 2^10 eller 1024 v\u00e4rden. Det betyder att vi har bekr\u00e4ftat omfattningen av det antal vi har att g\u00f6ra med.<\/p>\n<p>L\u00e5t oss forts\u00e4tta resonemanget \u2014 vad h\u00e4nder om vi har 100 mikrotj\u00e4nster och var och en med 10 m\u00f6jliga versioner? Hela situationen blir ganska obehaglig \u2014 nu har vi 10^100 permutationer \u2014 vilket \u00e4r ett enormt antal. Men jag f\u00f6redrar att beskriva denna situation p\u00e5 detta s\u00e4tt, f\u00f6r nu d\u00f6ljer vi oss inte bakom ord som \u00bbkubernetes\u00ab, utan konfronterar problemet som det \u00e4r.<\/p>\n<p>Vad fascinerar mig s\u00e5 mycket med detta problem? Delvis f\u00f6r att jag tidigare arbetat inom NLP och AI, d\u00e4r vi diskuterade problemet med kombinatorisk explosion f\u00f6r 5-6 \u00e5r sedan. Ist\u00e4llet f\u00f6r versioner hade vi separata ord, och ist\u00e4llet f\u00f6r produkter hade vi meningar och stycken. \u00c4ven om NLP- och AI-problemen till stor del fortfarande \u00e4r ol\u00f6sta, m\u00e5ste man erk\u00e4nna att det har gjorts betydande framsteg de senaste \u00e5ren. <i>(enligt min \u00e5sikt skulle framstegen kunna vara st\u00f6rre<b>b\u00e4sta resultatet (subjektiv \u00e5sikt).<\/b>om folk inom branschen \u00e4gnade lite mindre uppm\u00e4rksamhet \u00e5t maskininl\u00e4rning och lite mer \u00e5t andra tekniker - men det \u00e4r en annan diskussion).<\/i><\/p>\n<p>Jag \u00e5terv\u00e4nder till v\u00e4rlden av DevOps och mikrotj\u00e4nster. Vi st\u00e5r inf\u00f6r ett enormt problem, som en elefant i ett konstkabinett - f\u00f6r vad jag ofta h\u00f6r \u00e4r: \"ta bara kubernetes och helm s\u00e5 blir allt bra!\" Men nej, allt blir inte bra om vi l\u00e4mnar allt som det \u00e4r. Dessutom verkar en analytisk l\u00f6sning p\u00e5 detta problem oacceptabel med tanke p\u00e5 komplexiteten. Precis som inom NLP b\u00f6r vi f\u00f6rst n\u00e4rma oss detta problem genom att avgr\u00e4nsa s\u00f6komr\u00e5det - i det h\u00e4r fallet genom att utesluta f\u00f6r\u00e5ldrade permutationer.<\/p>\n<p>En av sakerna som kan hj\u00e4lpa - jag skrev f\u00f6rra \u00e5ret <noindex><a rel=\"nofollow\" href=\"https:\/\/worklifenotes.com\/2019\/03\/21\/devops-kpis-measuring-distance-between-latest-and-greatest-and-oldest-production-version\/\">om vikten av att bibeh\u00e5lla ett minimalt avst\u00e5nd mellan versioner som sl\u00e4pps till kunder.<\/a><\/noindex>Det \u00e4r ocks\u00e5 viktigt att notera att en v\u00e4larbetad CI\/CD-process hj\u00e4lper mycket med att minska variationer. Men, dagens tillst\u00e5nd med CI\/CD \u00e4r inte tillr\u00e4ckligt bra f\u00f6r att l\u00f6sa permutationsproblemet utan ett extra verktyg f\u00f6r att \u00f6vervaka och sp\u00e5ra komponenter.<\/p>\n<p>Vad vi beh\u00f6ver \u00e4r ett experimentellt system under integrationsstadiet, d\u00e4r vi kan definiera riskfaktorer f\u00f6r varje komponent, samt ha en automatiserad process f\u00f6r att uppdatera olika komponenter och testa utan operat\u00f6rens inblandning - f\u00f6r att se vad som fungerar och vad som inte g\u00f6r.<\/p>\n<p>Ett s\u00e5dant experimentellt system skulle kunna se ut s\u00e5 h\u00e4r:<\/p>\n<ol>\n<li>Utvecklare skriver tester (detta \u00e4r en kritisk fas - f\u00f6r annars har vi ingen bed\u00f6mningskriterium - det \u00e4r precis som datam\u00e4rkning inom maskininl\u00e4rning).<\/li>\n<li>Varje komponent (projekt) f\u00e5r sitt eget CI-system - den h\u00e4r processen \u00e4r idag v\u00e4larbetad, och fr\u00e5gan om att skapa ett CI-system f\u00f6r en enskild komponent \u00e4r till stor del l\u00f6st.<\/li>\n<li>Den \"Intelligenta integrationssystemet\" samlar resultat fr\u00e5n olika CI-system och s\u00e4tter samman projektkomponenter till en slutprodukt, utf\u00f6r tester och ber\u00e4knar slutligen den kortaste v\u00e4gen f\u00f6r att uppn\u00e5 \u00f6nskad produktfunktionalitet utifr\u00e5n befintliga komponenter och riskfaktorer. Om en uppdatering inte \u00e4r m\u00f6jlig, varnar systemet utvecklarna om de befintliga komponenterna och vilken av dem som har ett fel. Jag vill \u00e5terigen understryka att testsystemet h\u00e4r \u00e4r av avg\u00f6rande betydelse, eftersom integrationssystemet anv\u00e4nder tester som utv\u00e4rderingskriterier.<\/li>\n<li>CD-systemet som sedan tar emot data fr\u00e5n den \"Intelligenta integrationssystemet\" och utf\u00f6r sj\u00e4lva uppdateringen. Detta steg avslutar cykeln.<\/li>\n<\/ol>\n<p>\nSammanfattningsvis \u00e4r en av de st\u00f6rsta utmaningarna f\u00f6r mig just nu avsaknaden av ett s\u00e5dant \"Intelligent integrationssystem\" som kopplar samman olika komponenter i produkten och d\u00e4rmed m\u00f6jligg\u00f6r att f\u00f6lja hur produkten som helhet \u00e4r sammansatt. Jag skulle vara intresserad av communityns tankar kring detta (spoiler \u2014 jag arbetar f\u00f6r n\u00e4rvarande med ett projekt <noindex><a rel=\"nofollow\" href=\"https:\/\/relizahub.com\">Reliza<\/a><\/noindex>, som kan bli ett s\u00e5dant intelligent integrationssystem).<\/p>\n<p>En sista sak jag vill n\u00e4mna \u00e4r att jag inte anser att en monolit \u00e4r acceptabel f\u00f6r n\u00e5got projekt av ens medelstorlek. Jag \u00e4r mycket skeptisk till f\u00f6rs\u00f6k att p\u00e5skynda genomf\u00f6randet och kvaliteten p\u00e5 utvecklingen genom att \u00e5terv\u00e4nda till en monolit. F\u00f6r det f\u00f6rsta har monoliten ett liknande problem med komponenthantering \u2014 bland de olika bibliotek som den best\u00e5r av, men allt detta \u00e4r inte s\u00e5 m\u00e4rkbart och visar sig f\u00f6rst och fr\u00e4mst i den tid som utvecklarna l\u00e4gger ner. En konsekvens av monolitens problem \u00e4r den faktiska om\u00f6jligheten att g\u00f6ra f\u00f6r\u00e4ndringar i koden \u2014 och extremt l\u00e5ngsam utvecklingshastighet.<\/p>\n<p>Mikrotj\u00e4nster f\u00f6rb\u00e4ttrar situationen, men d\u00e5 st\u00e5r mikrotj\u00e4nstarkitekturen inf\u00f6r problemet med kombinatorisk explosion i integrationsfasen. Ja, i allm\u00e4nhet har vi flyttat samma problem \u2014 fr\u00e5n utvecklingsfasen till integrationsfasen. Men enligt min \u00e5sikt leder mikrotj\u00e4nstmetoden \u00e4nd\u00e5 till b\u00e4ttre resultat, och teamen uppn\u00e5r resultat snabbare (troligen fr\u00e4mst p\u00e5 grund av minskningen av storleken p\u00e5 utvecklingsenheten \u2014 eller <i>batch-storlek<\/i>). Men \u00f6verg\u00e5ngen fr\u00e5n monolit till mikrotj\u00e4nster har hittills inte resulterat i tillr\u00e4cklig f\u00f6rb\u00e4ttring av processen \u2014 den kombinationsexplosion av versioner av mikrotj\u00e4nster \u00e4r ett stort problem, och vi har stor potential att f\u00f6rb\u00e4ttra situationen i takt med att vi l\u00f6ser detta.<br \/>\n<br \/>K\u00e4lla: <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.4 - 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\/sv\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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\/sv\/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\udd47Mikrotj\u00e4nster \u2014 kombinationsexplosion av versioner | ProHoster","description":"Hej, Habr!","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/mikroservisy-kombinatornyj-vzryv-versij","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\/sv\/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\/sv\/wp-json\/wp\/v2\/posts\/75892","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=75892"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/75892\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media\/75893"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=75892"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=75892"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=75892"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}