{"id":1916,"date":"2023-03-31T14:02:43","date_gmt":"2023-03-31T12:02:43","guid":{"rendered":"https:\/\/www.dotsource.de\/labs\/?p=1916"},"modified":"2024-07-18T15:37:28","modified_gmt":"2024-07-18T13:37:28","slug":"fehlerbehandlung-in-einer-mikroservicearchitektur-ein-ansatz-aus-der-funktionales-programmierung","status":"publish","type":"post","link":"https:\/\/www.dotsource.de\/labs\/fehlerbehandlung-in-einer-mikroservicearchitektur-ein-ansatz-aus-der-funktionales-programmierung\/","title":{"rendered":"Fehlerbehandlung in einer Mikroservicearchitektur &#8211; Ein Ansatz aus der funktionales Programmierung"},"content":{"rendered":"<p>In gr\u00f6\u00dferen Programmarchitekturen ist ein gutes Konzept zum Umgang mit Fehlern unabdingbar. In einer produktiven Umgebung eines Kunden sollen die Anwendungen im Falle eines Fehlers nicht den Betrieb der Plattform beeinflussen, indem sie abst\u00fcrzen oder sogar andere Teile der gesamten Plattform zum Absturz bringen. Im besten Fall gibt die Anwendung eine Fehlermeldung aus, um sie in einem Log zu speichern und arbeitet, ggf. nach einem Neustart, wie gewohnt weiter.<\/p>\n<p>Speziell in Microservicearchitekturen ist es wichtig, dass jede der vielen kleinen Anwendungen stets bereit ist Anfragen zu bearbeiten, da zwischen den Anwendungen sehr viel Kommunikation stattfindet und sie deshalb abh\u00e4ngig voneinander sind. Es ist wichtig, dass \u00fcber alle Microservices hinweg eine einheitliche Programmstruktur herrscht, die dabei hilft Fehler g\u00e4nzlich zu vermeiden oder diese elegant zu behandeln.<\/p>\n<p>Bei der Entwicklung solcher Architekturen werden Fehler h\u00e4ufig auf unterschiedliche Art und Weise behandelt. Dabei werden Fehler meistens geworfen, um sie sp\u00e4ter an anderer Stelle zu behandeln. Das macht es schwer die bestehende Codebasis zu erweitern, Fehler zu finden oder kann zu inkonsistentem Logging f\u00fchren. Ein Ansatz aus der funktionalen Programmierung soll dabei helfen die Programmlogik noch klarer von den Fehlern zu trennen und eine robustere Codebasis schaffen. Dadurch wird das Logging verbessert und Fehler k\u00f6nnen effizienter gesucht und behoben werden.<\/p>\n<figure id=\"attachment_1917\" aria-describedby=\"caption-attachment-1917\" style=\"width: 1089px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1917\" src=\"https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2023\/03\/Fehlerbehandlung-in-einer-Mikroservicearchitektur-Ein-Ansatz-aus-der-funktionales-Programmierung.jpg\" alt=\"Umsetzung der Hauptfunktion - funktionaler Ansatz\" width=\"1089\" height=\"733\" srcset=\"https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2023\/03\/Fehlerbehandlung-in-einer-Mikroservicearchitektur-Ein-Ansatz-aus-der-funktionales-Programmierung.jpg 1089w, https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2023\/03\/Fehlerbehandlung-in-einer-Mikroservicearchitektur-Ein-Ansatz-aus-der-funktionales-Programmierung-300x202.jpg 300w, https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2023\/03\/Fehlerbehandlung-in-einer-Mikroservicearchitektur-Ein-Ansatz-aus-der-funktionales-Programmierung-1024x689.jpg 1024w, https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2023\/03\/Fehlerbehandlung-in-einer-Mikroservicearchitektur-Ein-Ansatz-aus-der-funktionales-Programmierung-768x517.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption id=\"caption-attachment-1917\" class=\"wp-caption-text\">Umsetzung der Hauptfunktion &#8211; funktionaler Ansatz<\/figcaption><\/figure>\n<p><a href=\"https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2023\/03\/Fehlerbehandlung-in-einer-Mikroservicearchitektur-Ein-Ansatz-aus-der-funktionales-Programmierung.pdf\">Kostenloser Download der gesamten Praxisarbeit<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In gr\u00f6\u00dferen Programmarchitekturen ist ein gutes Konzept zum Umgang mit Fehlern unabdingbar. In einer produktiven Umgebung eines Kunden sollen die Anwendungen im Falle eines Fehlers nicht den Betrieb der Plattform beeinflussen, indem sie abst\u00fcrzen oder sogar andere Teile der gesamten Plattform zum Absturz bringen. Im besten Fall gibt die Anwendung eine Fehlermeldung aus, um sie &hellip; <a href=\"https:\/\/www.dotsource.de\/labs\/fehlerbehandlung-in-einer-mikroservicearchitektur-ein-ansatz-aus-der-funktionales-programmierung\/\" class=\"more-link\">weiterlesen<span class=\"screen-reader-text\"> &#8222;Fehlerbehandlung in einer Mikroservicearchitektur &#8211; Ein Ansatz aus der funktionales Programmierung&#8220;<\/span><\/a><\/p>\n","protected":false},"author":189,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"ngg_post_thumbnail":0,"footnotes":""},"categories":[231],"tags":[214,215,213],"class_list":["post-1916","post","type-post","status-publish","format-standard","hentry","category-entwicklung","tag-funktionale-programmierung","tag-logging","tag-microservices"],"aioseo_notices":[],"acf":[],"_links":{"self":[{"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts\/1916","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/users\/189"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/comments?post=1916"}],"version-history":[{"count":1,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts\/1916\/revisions"}],"predecessor-version":[{"id":1919,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts\/1916\/revisions\/1919"}],"wp:attachment":[{"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/media?parent=1916"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/categories?post=1916"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/tags?post=1916"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}