{"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\/nl\/blog\/administrirovanie\/vernite-mne-moj-monolit","title":{"rendered":"Geef me mijn monolith weer","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Het lijkt erop dat de piek van de hype rondom microservices achter ons ligt. We lezen niet meer meerdere keren per week artikelen als 'Hoe ik mijn monolith naar 150 services heb gemigreerd'. Nu hoor ik vaker zinnige opmerkingen zoals: 'Ik haat geen monolith, ik geef gewoon om effici\u00ebntie.' We hebben zelfs een paar migraties gezien <noindex><a rel=\"nofollow\" href=\"https:\/\/segment.com\/blog\/goodbye-microservices\/\">van microservices terug naar monolithen<\/a><\/noindex>. Bij de overstap van \u00e9\u00e9n grote applicatie naar meerdere kleinere diensten moet je een aantal nieuwe problemen aanpakken. Laten we ze zo kort mogelijk opsommen.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1>Installatie: van basische chemie naar kwantummechanica<\/h1>\n<p>\nHet instellen van een basisdatabase en een applicatie met een achtergrondproces was een vrij duidelijk proces. Ik publiceer een readme op Github \u2013 en vaak binnen een uur of maximaal twee, werkt alles en begin ik met een nieuw project. Het toevoegen en uitvoeren van code, althans voor de initi\u00eble omgeving, gebeurt op de eerste dag. Maar als we de sprong naar microservices wagen, schiet de tijd voor de initi\u00eble opzet door het dak. Ja, we hebben nu Docker met orkestratie en een cluster van K8-machines, maar voor een beginnende programmeur is dit een orde van grootte moeilijker. Voor veel junioren is dit een last die echt onnodige complexiteit met zich meebrengt.<\/p>\n<h1>Het systeem is moeilijk te doorgronden<\/h1>\n<p>\nLaten we even stilstaan bij onze junior. Bij monolithische applicaties was het eenvoudig om een fout te traceren en direct over te gaan tot debugging. Nu hebben we een service die met een andere service communiceert, die iets in de wachtrij plaatst op een berichtenbus, die een andere service verwerkt \u2013 en dan doet zich de fout voor. We moeten al deze onderdelen bij elkaar verzamelen om uiteindelijk te ontdekken dat service A draait op versie 11, terwijl service E al op versie 12 wacht. Dit verschilt sterk van mijn standaard gecompileerde logboek: ik moet een interactieve terminal\/debugger gebruiken om het proces stap voor stap door te nemen. Debugging en begrip zijn in wezen moeilijker geworden.<\/p>\n<h1>Als we niet kunnen debuggen, zullen we ze misschien testen<\/h1>\n<p>\nContinuous integration and continuous development are becoming commonplace. Most new applications I see automatically create and run tests with each new release, requiring those tests to pass and be reviewed before deployment. These are excellent processes that should not be abandoned; they have been a significant shift for many companies. However, to truly test the service, I need to set up a full working version of my application. Remember that new engineer with a K8s cluster of 150 services? Well, now we will teach our CI system how to bring all these systems up to verify that everything really works. This is probably too much effort, so we will just test each part in isolation: I am confident that our specifications are good enough, APIs are clean, and service failures are isolated and won\u2019t affect others.<\/p>\n<h1>Every compromise has a valid reason. Right?<\/h1>\n<p>\nThere are many reasons to transition to microservices. I have seen this done for greater flexibility, team scaling, performance improvements, and to ensure better operational resilience. But in reality, we have invested decades in the tools and practices for developing monoliths, which continue to evolve. I work with professionals across various technologies. Usually, we talk about scaling because they are hitting the limits of a single Postgres database node. Most of the conversations revolve around <noindex><a rel=\"nofollow\" href=\"https:\/\/www.citusdata.com\/blog\/2018\/06\/28\/scaling-from-one-to-one-hundred-thousand-tenants\/\">scaling the database<\/a><\/noindex>.<\/p>\n<p>But I am always curious about their architecture. At what stage of migrating to microservices are they? It is interesting to see more engineers say they are satisfied with their monolithic application. For many, microservices will provide benefits, and the advantages will outweigh the bumps on the migration road. But personally, I would like my monolithic application\u2014with a spot on the beach\u2014and I would be completely happy.<br \/>\n<br \/>Bron: <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.3 - 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\/nl\/blog\/administrirovanie\/vernite-mne-moj-monolit\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\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\/nl\/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\udd47Give me back my monolith | ProHoster","description":"It seems the hype peak around microservices is behind us. We no longer read multiple times a week posts like 'How I transitioned my monolith to 150 services.'","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/administrirovanie\/vernite-mne-moj-monolit","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","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\/nl\/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\/nl\/wp-json\/wp\/v2\/posts\/75891","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=75891"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/75891\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=75891"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=75891"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=75891"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}