{"id":1963,"date":"2024-02-27T13:54:43","date_gmt":"2024-02-27T12:54:43","guid":{"rendered":"https:\/\/www.dotsource.de\/labs\/?p=1963"},"modified":"2024-07-18T15:06:39","modified_gmt":"2024-07-18T13:06:39","slug":"graphql-in-einer-microservice-architektur","status":"publish","type":"post","link":"https:\/\/www.dotsource.de\/labs\/graphql-in-einer-microservice-architektur\/","title":{"rendered":"GraphQL in einer Microservice-Architektur"},"content":{"rendered":"<p>Die steigende Komplexit\u00e4t von Softwaresystemen erschwert das Design und die Integration von Schnittstellen, die traditionell auf REST basieren. Die zunehmende Beliebtheit von GraphQL als Alternative zu REST, insbesondere in komplexen Microservicearchitekturen, erm\u00f6glicht eine vereinfachte API-Entwicklung. Unternehmen unterschiedlicher Branchen setzen GraphQL ein, um komplexe Prozesse abzubilden und die Entwicklung zu erleichtern. Dennoch zeigt GraphQL in solchen Projekten verschiedene Schw\u00e4chen auf.<\/p>\n<p>Diese Arbeit untersucht die Integration externer GraphQL-APIs in eine eigene Microservicearchitektur unter Verwendung von Apollo Federation. Dabei wird auch das &#8222;N+1&#8220;-Problem betrachtet und eine L\u00f6sung im Rahmen verteilter Graphen angestrebt. Die Funktionsweise von GraphQL wird erl\u00e4utert, gefolgt von einer Beschreibung des aktuellen Einsatzes von GraphQL in verschiedenen Unternehmen, um Forschungsfragen zu identifizieren. Anschlie\u00dfend wird eine L\u00f6sung in Form eines Microservices beschrieben und hinsichtlich Machbarkeit und Performance evaluiert. Diese Arbeit richtet sich an Systemarchitekten und Entwickler mit grundlegenden Kenntnissen in Software- und Systemarchitekturen.<\/p>\n<figure id=\"attachment_1966\" aria-describedby=\"caption-attachment-1966\" style=\"width: 607px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1966 size-full\" src=\"https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2024\/02\/Ist-Stand-Statische-Query.jpg\" alt=\"Ist-Stand - Statische Query\" width=\"607\" height=\"435\" srcset=\"https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2024\/02\/Ist-Stand-Statische-Query.jpg 607w, https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2024\/02\/Ist-Stand-Statische-Query-300x215.jpg 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><figcaption id=\"caption-attachment-1966\" class=\"wp-caption-text\">Ist-Stand &#8211; Statische Query<\/figcaption><\/figure>\n<p><a href=\"https:\/\/www.dotsource.de\/labs\/wp-content\/uploads\/sites\/4\/2024\/02\/GraphQL-in-einer-Microservice-Architektur.pdf\">Kostenloser Download der gesamten Bachelorarbeit<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die steigende Komplexit\u00e4t von Softwaresystemen erschwert das Design und die Integration von Schnittstellen, die traditionell auf REST basieren. Die zunehmende Beliebtheit von GraphQL als Alternative zu REST, insbesondere in komplexen Microservicearchitekturen, erm\u00f6glicht eine vereinfachte API-Entwicklung. Unternehmen unterschiedlicher Branchen setzen GraphQL ein, um komplexe Prozesse abzubilden und die Entwicklung zu erleichtern. Dennoch zeigt GraphQL in solchen &hellip; <a href=\"https:\/\/www.dotsource.de\/labs\/graphql-in-einer-microservice-architektur\/\" class=\"more-link\">weiterlesen<span class=\"screen-reader-text\"> &#8222;GraphQL in einer Microservice-Architektur&#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":[227,225,226,228],"class_list":["post-1963","post","type-post","status-publish","format-standard","hentry","category-entwicklung","tag-api","tag-graphql","tag-microservice-architektur","tag-rest"],"aioseo_notices":[],"acf":[],"_links":{"self":[{"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts\/1963","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=1963"}],"version-history":[{"count":1,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts\/1963\/revisions"}],"predecessor-version":[{"id":1969,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/posts\/1963\/revisions\/1969"}],"wp:attachment":[{"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/media?parent=1963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/categories?post=1963"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dotsource.de\/labs\/wp-json\/wp\/v2\/tags?post=1963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}