{"id":75891,"date":"2020-03-29T01:43:45","date_gmt":"2020-03-28T23:43:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/vernite-mne-moj-monolit"},"modified":"2020-03-29T01:43:45","modified_gmt":"2020-03-28T23:43:45","slug":"vernite-mne-moj-monolit","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/vernite-mne-moj-monolit","title":{"rendered":"Ge mig tillbaka min monolit","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Det verkar som att hightiden f\u00f6r mikrotj\u00e4nster har passerat. Vi l\u00e4ser inte l\u00e4ngre flera g\u00e5nger i veckan inl\u00e4gg med titlar som 'Hur jag migrerade min monolit till 150 tj\u00e4nster'. Nu h\u00f6r jag oftare mer fundamentala tankar: 'Jag hatar inte monoliten, jag bryr mig bara om effektivitet'. Vi har till och med bevittnat flera migrationer <noindex><a rel=\"nofollow\" href=\"https:\/\/segment.com\/blog\/goodbye-microservices\/\">fr\u00e5n mikrotj\u00e4nster tillbaka till monoliten<\/a><\/noindex>. N\u00e4r man g\u00e5r fr\u00e5n en stor applikation till flera mindre tj\u00e4nster m\u00e5ste man hantera ett antal nya problem. L\u00e5t oss r\u00e4kna upp dem s\u00e5 kort som m\u00f6jligt.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1>Installation: fr\u00e5n grundl\u00e4ggande kemi till kvantmekanik<\/h1>\n<p>\nAtt konfigurera en grundl\u00e4ggande databas och en applikation med en bakgrundsprocess var en ganska tydlig process. Jag publicerar readme p\u00e5 Github \u2013 och ofta inom en timme, max ett par timmar, fungerar allt, och jag kan p\u00e5b\u00f6rja ett nytt projekt. Att l\u00e4gga till och k\u00f6ra koden, \u00e5tminstone f\u00f6r startmilj\u00f6n, g\u00f6rs samma dag. Men om vi ger oss in p\u00e5 mikrotj\u00e4nster skjuter den initiala starttiden i h\u00f6jden. Ja, vi har nu Docker med orkestrering och en K8-kluster med maskiner, men f\u00f6r en nyb\u00f6rjare \u00e4r allt detta betydligt mer komplicerat. F\u00f6r m\u00e5nga juniorer \u00e4r detta en b\u00f6rda som verkligen \u00e4r on\u00f6dig komplexitet.<\/p>\n<h1>Systemet \u00e4r inte l\u00e4tt att f\u00f6rst\u00e5<\/h1>\n<p>\nL\u00e5t oss stanna upp ett \u00f6gonblick med v\u00e5r junior. Med monolitiska applikationer var det l\u00e4tt att sp\u00e5ra ett fel och omedelbart p\u00e5b\u00f6rja fels\u00f6kningen. Nu har vi en tj\u00e4nst som kommunicerar med en annan tj\u00e4nst, som l\u00e4gger n\u00e5got i k\u00f6 p\u00e5 en meddelandebuss, som hanterar en annan tj\u00e4nst \u2013 och h\u00e4r uppst\u00e5r ett fel. Vi m\u00e5ste sammanfoga alla dessa delar f\u00f6r att i slut\u00e4ndan f\u00e5 veta att tj\u00e4nst A k\u00f6rs p\u00e5 version 11, medan tj\u00e4nst E redan f\u00f6rv\u00e4ntar sig version 12. Detta skiljer sig starkt fr\u00e5n min vanliga konsoliderade logg: jag m\u00e5ste anv\u00e4nda en interaktiv terminal\/fels\u00f6kare f\u00f6r att g\u00e5 igenom processen steg f\u00f6r steg. Fels\u00f6kning och f\u00f6rst\u00e5else har blivit betydligt sv\u00e5rare.<\/p>\n<h1>Om det inte g\u00e5r att fels\u00f6ka, kanske vi kan testa dem<\/h1>\n<p>\nKontinuerlig integration och kontinuerlig utveckling blir allt mer vanligt. De flesta nya applikationer som jag ser automatiskt skapar och k\u00f6r tester med varje ny release och kr\u00e4ver att testerna g\u00e5r igenom och granskas innan registreringen. Det \u00e4r utm\u00e4rkta processer som man inte b\u00f6r avst\u00e5 ifr\u00e5n; de har blivit en stor f\u00f6r\u00e4ndring f\u00f6r m\u00e5nga f\u00f6retag. Men nu, f\u00f6r att verkligen testa tj\u00e4nsten, beh\u00f6ver jag k\u00f6ra en fullst\u00e4ndig produktionsversion av min applikation. Kommer du ih\u00e5g den nya ingenj\u00f6ren med en K8-kluster av 150 tj\u00e4nster? Tja, nu ska vi l\u00e4ra v\u00e5rt CI-system att starta alla dessa system f\u00f6r att verifiera att allt verkligen fungerar. Det \u00e4r f\u00f6rmodligen f\u00f6r mycket arbete, s\u00e5 vi kommer bara att testa varje del isolerat: jag \u00e4r s\u00e4ker p\u00e5 att v\u00e5ra specifikationer \u00e4r tillr\u00e4ckligt bra, API:erna \u00e4r rena, och avbrottet i tj\u00e4nsten \u00e4r isolerat och p\u00e5verkar inte andra.<\/p>\n<h1>Alla kompromisser har en god anledning. Eller hur?<\/h1>\n<p>\nDet finns m\u00e5nga sk\u00e4l att \u00f6verg\u00e5 till mikrotj\u00e4nster. Jag har sett att det g\u00f6rs f\u00f6r st\u00f6rre flexibilitet, f\u00f6r att skala team, f\u00f6r prestanda och f\u00f6r att s\u00e4kerst\u00e4lla b\u00e4ttre drifts\u00e4kerhet. Men i verkligheten har vi investerat \u00e5rtionden i verktyg och metoder f\u00f6r att utveckla monoliter, som forts\u00e4tter att utvecklas. Jag arbetar med yrkesverksamma inom olika teknologier. Oftast pratar vi om skalning, eftersom de st\u00e5r inf\u00f6r begr\u00e4nsningar med en enda Postgres-databasnod. Mycket av diskussionerna handlar om <noindex><a rel=\"nofollow\" href=\"https:\/\/www.citusdata.com\/blog\/2018\/06\/28\/scaling-from-one-to-one-hundred-thousand-tenants\/\">databasskalning<\/a><\/noindex>.<\/p>\n<p>Men jag \u00e4r alltid intresserad av deras arkitektur. I vilket skede av \u00f6verg\u00e5ngen till mikrotj\u00e4nster befinner de sig? Det \u00e4r intressant att se hur fler och fler ingenj\u00f6rer s\u00e4ger att de \u00e4r n\u00f6jda med sin monolit\u00e4ra applikation. M\u00e5nga kommer att dra nytta av mikrotj\u00e4nster, och f\u00f6rdelarna kommer att \u00f6verv\u00e4ga de hinder som finns p\u00e5 migrationsv\u00e4gen. Men personligen f\u00f6redrar jag g\u00e4rna min monolit\u00e4ra applikation, en plats p\u00e5 stranden \u2013 och jag \u00e4r helt lycklig.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/444130\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u043f\u0438\u043a \u0445\u0430\u0439\u043f\u0430 \u043f\u043e \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u043f\u043e\u0437\u0430\u0434\u0438. \u041c\u044b \u0443\u0436\u0435 \u043d\u0435 \u0447\u0438\u0442\u0430\u0435\u043c \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0430\u0437 \u0432 \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u043e\u0441\u0442\u044b \u00ab\u041a\u0430\u043a \u044f \u043f\u0435\u0440\u0435\u043d\u0435\u0441 \u0441\u0432\u043e\u0439 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 \u043d\u0430 150 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432\u00bb. \u0422\u0435\u043f\u0435\u0440\u044c \u044f \u0447\u0430\u0449\u0435 \u0441\u043b\u044b\u0448\u0443 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u0435 \u043c\u044b\u0441\u043b\u0438: \u00ab\u042f \u043d\u0435 \u043d\u0435\u043d\u0430\u0432\u0438\u0436\u0443 \u043c\u043e\u043d\u043e\u043b\u0438\u0442, \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u0431\u043e\u0447\u0443\u0441\u044c \u043e\u0431 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438\u00bb. \u041c\u044b \u0434\u0430\u0436\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0439 \u043e\u0442 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u043a \u043c\u043e\u043d\u043e\u043b\u0438\u0442\u0443. \u041f\u0440\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u043e\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-75891","post","type-post","status-publish","format-standard","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=\"\u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u043f\u0438\u043a \u0445\u0430\u0439\u043f\u0430 \u043f\u043e \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u043f\u043e\u0437\u0430\u0434\u0438. \u041c\u044b \u0443\u0436\u0435 \u043d\u0435 \u0447\u0438\u0442\u0430\u0435\u043c \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0430\u0437 \u0432 \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u043e\u0441\u0442\u044b \u00ab\u041a\u0430\u043a \u044f \u043f\u0435\u0440\u0435\u043d\u0435\u0441 \u0441\u0432\u043e\u0439 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 \u043d\u0430 150 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432\u00bb.\" \/>\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\/vernite-mne-moj-monolit\" \/>\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\u0412\u0435\u0440\u043d\u0438\u0442\u0435 \u043c\u043d\u0435 \u043c\u043e\u0439 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u043f\u0438\u043a \u0445\u0430\u0439\u043f\u0430 \u043f\u043e \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u043f\u043e\u0437\u0430\u0434\u0438. \u041c\u044b \u0443\u0436\u0435 \u043d\u0435 \u0447\u0438\u0442\u0430\u0435\u043c \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0430\u0437 \u0432 \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u043e\u0441\u0442\u044b \u00ab\u041a\u0430\u043a \u044f \u043f\u0435\u0440\u0435\u043d\u0435\u0441 \u0441\u0432\u043e\u0439 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 \u043d\u0430 150 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432\u00bb.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/vernite-mne-moj-monolit\" \/>\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:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-28T23:43:45+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\udd47\u00c5terst\u00e4ll min monolit | ProHoster","description":"Det verkar som att toppen av hype kring mikrotj\u00e4nster \u00e4r \u00f6ver. Vi l\u00e4ser inte l\u00e4ngre flera g\u00e5nger i veckan inl\u00e4gg om \" hur jag omvandlade min monolit till 150 tj\u00e4nster\".","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/vernite-mne-moj-monolit","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\u0412\u0435\u0440\u043d\u0438\u0442\u0435 \u043c\u043d\u0435 \u043c\u043e\u0439 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 | ProHoster","og:description":"\u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u043f\u0438\u043a \u0445\u0430\u0439\u043f\u0430 \u043f\u043e \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u043f\u043e\u0437\u0430\u0434\u0438. \u041c\u044b \u0443\u0436\u0435 \u043d\u0435 \u0447\u0438\u0442\u0430\u0435\u043c \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0430\u0437 \u0432 \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u043e\u0441\u0442\u044b \u00ab\u041a\u0430\u043a \u044f \u043f\u0435\u0440\u0435\u043d\u0435\u0441 \u0441\u0432\u043e\u0439 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 \u043d\u0430 150 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432\u00bb.","og:url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/vernite-mne-moj-monolit","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:45+00:00","article:modified_time":"2020-03-28T23:43:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"75891","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-10-02 16:16:33","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\/75891","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=75891"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/75891\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=75891"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=75891"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=75891"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}