Latest / Coding Buddies | Tech & Dev-Mindset / #130 Monolith vs. Microservices – Dein Architektur-Check
Transcript
- 0:00Es gibt den Begriff bin ich der Meinung, das heißt glaube ich
- 0:02Micro Frontend oder so. Lass mich nicht lügen, habe ich
- 0:07bitte lügen. Nicht im Podcast Coding Buddies.
- 0:10Dein Podcast rund um Softwareentwicklung und
- 0:12aktueller Tech News herzlich Willkommen.
- 0:27Halli Hallo und herzlich Willkommen zur neuen Folge vom
- 0:30Coaling Buddies Podcast. Ich begrüße Dich ganz herzlich
- 0:33zur neuen Folge, wie ich gerade meinte und natürlich auch
- 0:36logischerweise den Tino hier an meiner Seite, der auf gar keinen
- 0:38Fall fehlen darf und deswegen Tino was geht ab jetzt hab ich
- 0:42dir deine Frage geklaut, aber egal was geht.
- 0:44Ab Moin Moin fabi, ja was geht denn ab?
- 0:49Also krass, dass du mir einfach meine Frage klaust.
- 0:51Ich musste kurz ganz spontan reagieren, was ich darauf
- 0:53antworte und ich frag einfach zurück, was geht ab den
- 0:56Signature musst du mir lassen. Ja tut mir leid, tut mir leid,
- 0:59manchmal weißt du manchmal kann ich nicht anders so was.
- 1:04Geht ab, ist halt auch in meinem Sprachgebrauch einfach auch
- 1:07dabei. Deswegen ja, aber es ist
- 1:11natürlich ist natürlich dein Ding im Podcast, das verstehe
- 1:13ich. Bestimmt also bitte ja.
- 1:16OK, gut, lass das nicht zur Krise ausbrechen hier, sondern
- 1:19lass weitermachen und ich beantworte dir die Frage, was
- 1:22geht ab. Mir geht es sehr gut, mir geht
- 1:24es sehr sehr gut, ich hab richtig Bock auf die Folge ich
- 1:28glaub du hast auch n spannendes Thema mitgebracht, das kommt ja
- 1:32aus deiner Feder sagt man das so?
- 1:34Ja ich glaube und ich hab Bock da mit dir drüber zu sprechen,
- 1:37aber bevor wir so richtig reinstarten mit dem Thema.
- 1:41Noch mal ganz kurz die Anmerkung, Wieso oft jetzt schon
- 1:44in den Folgen auch jetzt noch mal die Erinnerung an das kleine
- 1:48Glöckchen, falls ihr das zum Beispiel bei Spotify findet und
- 1:52auf unseren Podcast geht, dann gibt es da so ne kleine Glocke,
- 1:54dann könnt ihr quasi. Benachrichtigung anschalten
- 1:57immer wenn ne neue Folge rauskommt ja OK, sie kommt jetzt
- 2:00schon die ganze Zeit immer Donnerstag 18:00 Uhr, das wisst
- 2:03ihr natürlich, aber so als kleiner Reminder könnt ihr dann
- 2:07Benachrichtigung bekommen, also drückt da ruhig mal drauf.
- 2:09Dann wird wirklich keine Folge mehr verpasst.
- 2:10Dann wird auf keinen Fall ne Folge verpasst.
- 2:12Und falls euch der Podcast gefällt, hier auch noch mal den
- 2:15Reminder. In den Shownotes findet ihr
- 2:16einen Link zu einer Spendenseite, falls ihr uns
- 2:18unterstützen möchtet, dann vielen vielen Dank dafür, Leute.
- 2:22Das ehrte uns und das freut uns und deswegen dafür schon mal
- 2:25vielen, vielen Dank. Ja, auf jeden Fall.
- 2:27Und ich, wenn wir gerade beim Dankeschön sind, möchte ich mich
- 2:30auch generell noch mal bei allen Hörern und Hörerinnen bedanken,
- 2:34die hier immer so fleißig mithören uns.
- 2:37Das ehrt uns natürlich und das freut uns total, dass wir auch
- 2:40regelmäßig mal schöne ich sag mal Kommentare bekommen auf
- 2:44verschiedenen Plattformen, zum Beispiel auch bei Twitch oder
- 2:46so, dass euch der Podcast gefällt, dass ihr uns auch durch
- 2:49den Podcast zum Beispiel gefunden habt und so.
- 2:51Das ist deswegen auch noch mal da in die Richtung ganz, ganz
- 2:53großen lieben Dank, freut uns mega, ja absolut fabi und vor.
- 2:57Allem auch danke fürs Feedback zu folgen.
- 2:59Ja, also das finde ich halt mega, wenn wir noch so
- 3:02Anmerkungen kriegen, Ergänzungen, auch
- 3:04Themenvorschläge das. Ich mein, dieser Community
- 3:08Gedanke ist der Grund, warum wir coaling Buddies auch ins Leben
- 3:10gerufen haben und das Macht die ganze Sache ja nur noch umso
- 3:13besser. Also vielen vielen Dank auch
- 3:14dafür, absolut. Und da würde ich sagen, damit
- 3:18wir jetzt auch noch mal n bisschen in die Podcast Folge
- 3:21eintauchen können, haben wir ja heute das n neues Thema was ich
- 3:25so n bisschen mitgebracht hab beziehungsweise was heißt
- 3:27mitgebracht. Wir machen das ja mal so, dass
- 3:30wir irgendwie ne wir brainstorm mehr beide so welche Folge wir
- 3:33vielleicht mal wieder haben wollen kriegen von euch auch
- 3:34manchmal n paar Ideen. Diesmal geht es jetzt um
- 3:38Microservices versus Monoliten, Monoliten versus Microservices.
- 3:42Wie auch immer ne, also eigentlich n Thema, was ja in
- 3:45vielen Teams auch immer mal wieder diskutiert wird,
- 3:47zumindest kenn ich das auch aus der Vergangenheit, zumindest zum
- 3:51Beispiel, dass es da auch immer mal so ne kleine Diskussion gab.
- 3:54Wie macht man es jetzt, sollte man vielleicht das die Software
- 3:58als Monolith. Bauen oder als Microservice
- 4:01beziehungsweise sollte man den Monolith aufspalten in ein in in
- 4:05Microservices und so weiter das heißt es geht ja heute n
- 4:09bisschen um Architektur. Genau.
- 4:11Also es geht jetzt mal nicht so um Coding Pattern zum Beispiel,
- 4:14sondern wirklich um Architekturentscheidung in dem
- 4:18Softwareprojekt, und das sind jetzt 2 Ansätze, die wir da
- 4:22jetzt quasi besprechen wollen, die auch gegensätzlich sind.
- 4:27Haben aber beide natürlich ihre vor und Nachteile und also die
- 4:30sie mitbringen. Ne diese Ansätze und es wäre
- 4:33natürlich cool, wenn wir genau das heute mal beleuchten.
- 4:36Fabi, Was sind die vor und Nachteile?
- 4:38Ich könnte mir vorstellen ich ich guck dich an und ich seh es
- 4:41in deinen Augen, dass du auch schon wieder irgendwie ne
- 4:43Analogie bei hast, weil du grinst schon so, du freust dich
- 4:45schon so richtig diese Analogie zu bringen und als Fazit würde
- 4:51ich es sehr spannend finden. Wenn wir irgendwie zu dem Punkt
- 4:54kommen, wann eignet sich wann was, wann eignet sich, welcher
- 4:58Ansatz so? Das wäre der richtige Satz
- 5:01gewesen. Ja, genau.
- 5:04Definitiv. Ich lach übrigens, das ist das
- 5:06das das trägt sich gegenseitig, weißt du wenn du von Analogie
- 5:10redest, dann muss ich schon wieder lachen und deswegen
- 5:12denkst du, dass ich schon, dass ich lache, weil ich schon wieder
- 5:14ne Analogie was ist das? Freuen uns einfach, dass wir uns
- 5:18sehen, hier durch den Bildschirm fahren.
- 5:20Du kannst es ruhig ehrlich sein, natürlich natürlich nee, aber
- 5:22Analogie natürlich. Ich find wie gesagt ich find
- 5:26Analogien sind eigentlich immer ganz angenehm, kann man sich
- 5:28vielleicht einmal grob vorstellen worum es überhaupt
- 5:30geht, sozusagen ne, auch wenn man vielleicht gerade gar nicht
- 5:33so richtig im Thema drin steckt und.
- 5:36Wenn wir jetzt diese diese Monolithen und Microservices mal
- 5:41so als uns als Häuser vorstellen, dann gibt es ja zum
- 5:44Beispiel weiß nicht, es gibt ja so reihenhaussiedlungen, ne und
- 5:48es gibt jetzt zum Beispiel auch weiß nicht so riesengroße
- 5:52Häuser, wo ganz viele Leute drin wohnen, ne, also du hast.
- 5:55Da so Mehrfamilienhäuser. Genau, Mehrfamilienhäuser.
- 5:58Ja, ich stell mir jetzt was richtig Großes vor.
- 6:00Weißt du so 1 wo einfach keine Ahnung 100 Wohnungen drin sind
- 6:03still so n Wolkenkratzer n. Müllabbau.
- 6:07Genau, den Plattenbau in New York.
- 6:11Ja oder halt ne. Wie gesagt so so einfach so
- 6:13Reihenhäuser, so ne ganze Siedlung wo mal ganz viele
- 6:15kleine Häuser sind weißt du ja, aber halt dann eben
- 6:18Einfamilienhäuser und im Endeffekt wenn du jetzt sagst OK
- 6:24du hast jetzt ne diese beiden häuserarten ne kann man sich ja
- 6:29vielleicht schon vorstellen OK was von beiden ist jetzt
- 6:31eventuell so der Monolith von beiden?
- 6:37Guckst und fragst. Ich denke an das ist ne Antwort.
- 6:39Ja, das ist ja dann auf jeden Fall das Mehrfamilienhaus ne,
- 6:43weil du ja jetzt viele Parteien unter einem Dach hast sozusagen.
- 6:46Ja genau. Und wenn du jetzt zum Beispiel
- 6:49sagst, OK, du willst irgendwie deinen Nachbarn besuchen, dann
- 6:51musst du ja das Haus nicht verlassen.
- 6:53Wenn du jetzt. Weiß ich nicht.
- 6:56Sagst irgendwie das Dach ist undicht, ne oder irgendwo keine
- 6:59Ahnung. Regnet es rein, dann hast du ja
- 7:02womöglich n Wasserschaden, nicht nur in einer Wohnung, sondern
- 7:06vielleicht in mehreren Wohnungen, vielleicht im Worst
- 7:08Case im ganzen Haus. Und wenn du jetzt aber zum
- 7:10Beispiel sagst, ja OK, ich möchte jetzt vielleicht das Haus
- 7:13streichen, dann fängst du ja im Normalfall auch nicht an zu
- 7:15sagen, OK, ich streich jetzt nur meine eigene Wohnung n bisschen,
- 7:18so mach ich mal weiß, sondern wird ja im Endeffekt das gesamte
- 7:21Haus gestrichen, ne? Also ja, gerade wenn es um
- 7:24Fassade geht, ne, dann fängst du ja nicht an, nur auf Höhe einer
- 7:27Etage das zu streichen genau, sondern das ganze Haus sozusagen
- 7:31ne. Richtig genau.
- 7:32Und da gegenüberstehend jetzt, wenn du das so siehst, hast du
- 7:36dann dann als sozusagen die Repräsentation der
- 7:38Microservices? Werden dann diese
- 7:40Reihenhaussiedlung ne oder was weiß ich?
- 7:42Nimm ne Siedlung mit kleinen Häusern wie auch immer, ist
- 7:44eigentlich auch egal, aber da ist es ja so, dass zum Beispiel
- 7:47du hast. Ein also jedes Haus hat n
- 7:51eigenen Eingang, ne bei dem großen Haus kommst du ja immer
- 7:53durch den gleichen Eingang unten rein, da hast du auch unten
- 7:56immer den gleichen Schlüssel. Wie gesagt alle wohnen im
- 7:58gleichen Haus, wenn du deinen Nachbarn besuchen willst, musst
- 8:00du nicht mal das Haus verlassen, in dem Fall von den kleinen
- 8:02Häusern der Siedlung, da musst du halt dein Haus irgendwie
- 8:04verlassen und wenn jetzt zum Beispiel sowas wie n
- 8:08Stromausfall ist bei einem Haus, dann hast du es ja nur in dem
- 8:11Haus und nicht in dem anderen also ich geh jetzt mal davon
- 8:13aus, dass wir jetzt nicht irgendwie n flächendeckenden
- 8:14Stromausfall in der ganzen Stadt haben.
- 8:16Ja. Kein Blackout so komplett genau.
- 8:19Und weiß ich nicht. Wenn du jetzt genau das gleiche,
- 8:22du willst dein Haus streichen, du kannst dein Haus streichen,
- 8:24du musst aber nicht noch das Haus vom Nachbarn streichen und
- 8:26wenn du, weil sie nicht sagst, OK du hast n undichtes Dach, ja
- 8:29dann hast du leider n undichtes Dach, aber dein Nachbar nicht
- 8:31zwangsläufig ne, das heißt es ist halt das eine.
- 8:34Dieser Monolith ist halt alles grob gesagt in einem drin, da
- 8:38ist alles quasi verpackt in einem großen Paket und bei den
- 8:42bei der Reihenhaussiedlung, da hast du halt die das sind die
- 8:44Microservices, da sind halt alles kleine und.
- 8:46Pakete und jedes Paket steht irgendwo für sich und macht halt
- 8:50so sein Ding. Ne?
- 8:51Ja, das ist eigentlich ne ganz coole Analogie, also gehen wir
- 8:55noch mal davon aus. Man betrachtet also wir als
- 8:59Softwareentwickler oder wir, die an einem Softwareprojekt
- 9:01arbeiten, ne sind so gesehen die Besitzer dieser Häuser, ne hab
- 9:06ich jetzt dieses Mehrfamilienhaus oder diesen
- 9:08Plattenbau, wo jetzt so ganz viele Familien drin wohnen oder
- 9:11halt so ne Siedlung und ich hab einzelne Häuser die getrennt
- 9:14sind voneinander aber mein. Also mein Eigentumssinn ne mein
- 9:18Komplex abbilden für diesen einzelnen Familien dann und das
- 9:22find ich, zeigt halt schon auch gut vor und Nachteile ne es ist
- 9:26ja sowohl vor als auch n Nachteil in so einem
- 9:28Mehrfamilienhaus, dass alle Parteien davon betroffen sind
- 9:33was ich mache ne beispielsweise ich Streich die Fassade neu.
- 9:38Ja. Es ist natürlich n großer
- 9:40Aufwand, weil es n großes Haus ist.
- 9:41Allerdings. Alle Parteien da drin haben
- 9:44jetzt n Haus mit einer neuen Fassade, was frisch und schön
- 9:46aussieht, beispielsweise die Solaranlage die aufs Dach kommt.
- 9:52Ne kannst du halt auch für alle Parteien nutzen, dann
- 9:54beispielsweise ne. Also alles so Sachen auch
- 9:58Erneuerung, Erweiterung betrifft immer alle Parteien da drin
- 10:02Vorteil Nachteil es geht was kaputt, dann geht es für alle
- 10:06kaputt wie du ja meintest. Und das ist genau im
- 10:11Umkehrschluss, also quasi schon gegensätzlich bei dieser
- 10:15Siedlung. Ja, wie du meintest, wenn ein
- 10:18Haus kaputt ist, sind die anderen noch heile, wenn ich 1
- 10:21aber saniere, sind die anderen immer noch alt so, und das finde
- 10:25ich verdeutlicht schon sehr gut das Konzept oder beispielsweise
- 10:28noch weil das später n großes Thema wird.
- 10:31Ich möchte jetzt alle Parteien im Haus benachrichtigen, dass
- 10:35Umbaumaßnahmen stattfinden, oder?
- 10:37Einfach so n Newsletter hinhängen sag ich mal ne, dass
- 10:41irgendwas passiert, dann kann ich in diesem großen
- 10:44Mehrfamilienhaus ja unten nen Aushang machen, Zettel und alle
- 10:48gehen dran vorbei, weil sie ja über das gleiche Treppenhaus
- 10:50oder über den gleichen Eingang kommen und können den Lesen.
- 10:53Ja wenig Aufwand geht schnell. Wenn ich jetzt aber ne Siedlung
- 10:57hab mit 1015 Häusern muss ich jetzt überall so n Zettel im
- 10:59Briefkasten werfen. Ja, wenn du es per Post
- 11:02Versendest Ey Post ist teuer geworden.
- 11:04Porto ist. Das ist halt so.
- 11:06Ist halt wirklich so, aber weißt du, da hast du halt den Aufwand
- 11:10um alle zu informieren, musst du natürlich auch zu jedem
- 11:12einzelnen gehen, dann ja klar ja, also ich geh jetzt nicht
- 11:15davon aus, dass du einfach so n Zettel an der Tür nagelst.
- 11:18Deswegen mal in n Briefkasten geworfen und das sind halt auch
- 11:22so diese unterschiedlichen Konzepte die sich auf die
- 11:24Softwareentwicklung übertragen lassen.
- 11:26Ja. Ja, auf jeden Fall finde ich.
- 11:29Auf jeden Fall waren auch noch mal gute Beispiele dabei, wenn
- 11:32wir uns jetzt zum Beispiel angucken, OK, was ist jetzt
- 11:34wirklich, wenn wir jetzt auf die technische Ebene gehen, was ist
- 11:37eigentlich dann Monolith? Ich glaube, es ist schon n
- 11:39bisschen klar geworden, würde ich sagen, wo wo es da hingeht,
- 11:43trotzdem noch mal so, um es auf n Punkt zu bringen ist es ja am
- 11:48Ende Monolith ne Anwendung die als einzige.
- 11:53Sag ich jetzt mal zusammenhängende Codebasis
- 11:55entwickelt und übertrieben wird, so könnte man es ja eigentlich
- 11:57sagen. Ne ja bedeutet also du hast mehr
- 12:01oder weniger alles in einem Projekt.
- 12:02Du hast vielleicht ne gemeinsame Datenbank an der Stelle
- 12:05beispielsweise und das Deployment oder ich sag mal
- 12:09changes für deine Anwendung betrifft immer die komplette
- 12:12Anwendung ja also wenn du jetzt sagst OK du hast n.
- 12:15Ne Webanwendung. Ich find daran kann man es
- 12:17irgendwie mal wunderbar erklären, weil du da halt
- 12:19wirklich so einfach auch du hast so mehrere Komponenten, ne.
- 12:21Du hast dann vielleicht ne Datenbank, du hast n Backend, du
- 12:23hast n Frontend. Wenn du aber alles irgendwie
- 12:26zusammen in einem Knödel hast, ne, dann ist es ja so, dass
- 12:31sagen wir mal, du veränderst irgendwie was an an deiner
- 12:34Website allein schon sagen wir mal nur irgendwas an der UI soll
- 12:38n bisschen anders aussehen, ne, aber die Funktionalität bleibt
- 12:40an sich irgendwie die gleiche. Und du veränderst das und willst
- 12:44jetzt aber diese Änderung sozusagen an den User die Userin
- 12:48bringen, dann hast du ja quasi den den Effekt, dass du halt
- 12:52sagst. OK, pass auf, dadurch, dass du
- 12:53alles in einem Projekt hast, musst du das gesamte oder wird
- 12:57das gesamte Projekt deployed, das heißt du hast irgendwo auch
- 13:01vielleicht ne im worst case sag ich jetzt mal vielleicht auch ne
- 13:04Downtime von deinem Backend, weil das Backend kurz einmal neu
- 13:08deployed wird, ne, je nachdem wie deine Infrastruktur
- 13:10aussieht, aber. Du hast eigentlich nichts am
- 13:12Backend geändert, aber dein Backend wird mit deployed ne so
- 13:15das meine ich damit. Es ist halt sehr eng gekoppelt
- 13:18dann einfach. Genau richtig und Microservices.
- 13:22Da sieht es ja dann tatsächlich auch einfach anders aus, ne?
- 13:26Ja, also der Grundgedanke von den Microservices ist ja, dass
- 13:30ich ne Anwendung in viele oder sagen was heißt vieles immer
- 13:34projektgrößen abhängig ja, aber in ich sag mal viele kleine
- 13:37unabhängige Services unterteile. Die jeweils einen
- 13:41Funktionsbereich abdecken. Ja, also das heißt, ich mach mir
- 13:45jetzt mein ganzes Projekt so mundgerecht in Häppchen und
- 13:51alles erfüllt so seine Aufgabe und wird miteinander verknüpft,
- 13:55dass sie zwar autark leben können, aber im gesamten mein
- 13:58komplettes Projekt in der Funktionalität abbilden, genauso
- 14:00wie der Monolith. Ja.
- 14:02Also so n ganz einfacher schnitt, wie du ihn gerade
- 14:05genannt hast, wär mein Frontend ist einzeln, mein Backend ist
- 14:08einzeln und die Datenbank wird auch zum Beispiel einzeln
- 14:10verwaltet. Ja beispielsweise das ist jetzt
- 14:14sehr grob geschnitten, das geht natürlich noch viel feiner ne n
- 14:17Frontend hat ja auch verschiedene Funktionalitäten am
- 14:21Ende wieder ne, also n Frontend kann ja in mehreren Bereichen
- 14:24auch unterteilt werden, was ja auch Sinn macht, wenn ich den
- 14:26Microservices. Ansatz verfolge, da kommen wir
- 14:29bestimmt später noch mal bei den Vorteilen, denn noch mal genauer
- 14:31hinzu, ich meine, wir haben auch in vergangenen Folgen da schon
- 14:35mal so n Beispiel gebracht, was wir aufgreifen können.
- 14:37Erinner mich dran, dass ich dran denke bis später.
- 14:42Genau. Und der Vorteil dabei ist,
- 14:43beziehungsweise was das heißt am Ende, dass du diese einzelnen
- 14:47Services, diese einzelnen Bestandteile natürlich auch
- 14:49einzeln deployen kannst. Wenn ich jetzt am Frontend was
- 14:52ändere, dann muss ich diese Änderung deployen und den Kunden
- 14:56zur Verfügung stellen. Aber ich habe keinen keinen
- 14:59Effekt, sag ich mal aufs Backend, also am Backend
- 15:01passiert nichts, da wird nicht ne neue Version erzeugt, die im
- 15:04Endeffekt die gleiche ist wie vorher sozusagen.
- 15:07Ja, es ist bleibt halt einfach der gleiche stand.
- 15:10Und ich hab halt den Vorteil, dass ich die einzelnen Services
- 15:14auch mit der Datenhaltung beispielsweise so verwenden
- 15:17kann, was sie auch wirklich nur brauchen.
- 15:18Sie sehen halt nur Sachen, die sie brauchen und sie verwenden
- 15:21nur Sachen, die sie brauchen. Ja, also ich kann das halt
- 15:23wirklich autark leben lassen und hab keine große Kopplung mehr,
- 15:28das alles zusammenhängt, was du damit aber dir einkaufst und das
- 15:33hat man an dem Newsletter Beispiel in der Analogie
- 15:36gesehen. Ich muss natürlich für
- 15:39Kommunikation zwischen diesen Services sorgen, weil es ja
- 15:42jetzt nicht mehr ein großer Blob ist, sondern kleine
- 15:46Bestandteile, die aber ja Daten austauschen müssen, die
- 15:49informiert werden müssen, damit das große Ganze auch
- 15:51funktioniert. Ja, ja, auf jeden Fall.
- 15:54Hast du da vielleicht so n Beispiel noch?
- 15:56Also wir, wir hatten ja. Glaube ich schon öfter mal für
- 16:00so. Also haben wir jetzt glaube ich
- 16:02weiß gar nicht, ob wir das explizit gesagt hatten, aber in
- 16:04ein oder mehreren Folgen, die wir früher, also ne alten Folgen
- 16:08haben wir auf jeden Fall schon mal das Beispiel von E Commerce
- 16:10System genommen. Ich finde daran kann man das
- 16:12eigentlich immer ganz angenehm erklären, wie jetzt zum Beispiel
- 16:15Microservices vielleicht, wie man sich das vorstellen kann,
- 16:18also du hast ja im Endeffekt. Du gehst ja auf irgend ne Seite
- 16:21ne so, dann hast du vielleicht zum Beispiel deinen Frontend als
- 16:25kleinen Service irgendwie. Du meintest ja n Frontend muss
- 16:28nicht auch unbedingt ein. Ich nenne es jetzt mal Service
- 16:32sein, also ein Microsoft. Es gibt es gibt den Begriff bin
- 16:35ich der Meinung, das heißt glaube ich Micro Frontend oder
- 16:38so, lass mich nicht lügen, habe ich bitte lügen.
- 16:42Nicht hier im Podcast habe ich. Auf jeden Fall mal mal von
- 16:45gehört, wollte ich mich auch noch mal ein bisschen genauer
- 16:47mit auseinandersetzen, habe ich aber auch noch nie
- 16:48mitgearbeitet, finde ich aber auch eigentlich ganz spannend,
- 16:50aber angenommen du hast jetzt das Frontend einfach als ganzes
- 16:53und du greifst darauf zu, das wird halt angezeigt, du holst ja
- 16:56aber deine Daten von den einzelnen Services, zum Beispiel
- 16:59die Produkte, du hast irgendwelche.
- 17:00Irgendwo ne Produktpalette wo du halt in deinem E Commerce
- 17:04Service halt irgendwas suchen kannst.
- 17:05Ne, das heißt du greifst auf diese Datenbasis zu, wo du dein
- 17:08Produkt hast, wo du sagst, OK diese Produktpalette hab ich
- 17:11halt eben und die kann ich jetzt anzeigen.
- 17:12Wenn du jetzt weitergehst und sagst ich pack mir das jetzt in
- 17:15den Warenkorb, dann sagt der Warenkorb zum Beispiel alles
- 17:17klar, ich hab jetzt irgendwie diese waren bei mir drin ne das
- 17:21ist vielleicht ein anderer Service.
- 17:24Als zum Beispiel der Service, der dann dahinter steht und zum
- 17:28Beispiel die Möglichkeit der der Suche in diesen Produkten
- 17:31anbietet. Und du hast vielleicht noch
- 17:33einen nächsten Service, der dir zum Beispiel sagt, OK, wenn du
- 17:35jetzt aber wirklich bezahlen willst, dann läuft der die
- 17:38Zahlungsabwicklung halt eben über noch einen separierten
- 17:40Service, um sich das vielleicht noch mal ein bisschen besser
- 17:44vorstellen zu können, weil wir gesagt haben, wieso deployed man
- 17:47jetzt zum Beispiel, wenn du jetzt.
- 17:48Ne, wenn das jetzt n Monolith wäre.
- 17:50Wir können ja auch sagen, ein Monolith oder Microservices, du
- 17:53kannst ja die gleiche Anwendung, kannst du ja in beiden
- 17:56Architekturen irgendwie abbilden, ne, also du kannst ja
- 18:01sagen OK ich ich pack alles zusammen, es ist jetzt zum
- 18:04Beispiel ein Backend zum Beispiel n Spring Boot Backend
- 18:06nur mal so als Beispiel ne und da hast du jetzt den Warenkorb
- 18:10drin, du hast den Bezahlservice da drin und du hast da
- 18:12vielleicht irgendwie noch ne diese den.
- 18:15Ist dein deine deine Datenbasis mit den ganzen Produkten da drin
- 18:17und so weiter ne alles zusammen in einen Topf geworfen und das
- 18:23Frontend zum Beispiel ist auch noch mit da drin und das ist
- 18:25alles n Repository oder es sind alles unterschiedliche
- 18:28Repositories auf denen du einzelne Changes machen kannst,
- 18:30an denen auch wiederum ne einzelne Pipeline zum Beispiel
- 18:33hängt. So als so kann man sich das ja
- 18:35zum Beispiel auch vorstellen, dass man sagt, OK, das ist halt.
- 18:39Diese auch irgendwo ne gewisse Art von Kopplung der Datenbasis
- 18:44deiner Repositories und so weiter ne um halt eben bei
- 18:47Changes zum Beispiel bei Monolithen alles gleichzeitig zu
- 18:50deployen oder microservice einzeln so ne, weil weiß nicht
- 18:54ob das so rübergekommen ist vorher, aber das ist mir gerade
- 18:56noch so eingefallen. Ja, ist auch gutes Beispiel.
- 18:59Ich find auch gut, dass du das E Commerce Beispiel genommen hast,
- 19:01weil das was ich jetzt gerade im Kopf hatte war sehr ähnlich.
- 19:04Wir hatten ja mal so über Lieferdienste gesprochen und
- 19:06dann auch gesagt, dass das ja so unterteilt ist, damit du halt
- 19:10nicht immer strenge Kopplung hast.
- 19:11So wie. Ja, du kannst jetzt nur mit
- 19:12Paypal bezahlen, so nach dem Motto und da bietet sich dann
- 19:15halt auch so ne Architektur einfach an.
- 19:16Ne, dass du sagst, OK, ich hab Microservices wie n Bezahlsystem
- 19:21wie n lokalisierungssystem und so weiter und also Service ich
- 19:25hab jetzt System gesagt, das sind ja Services für n
- 19:27Gesamtsystem. Da.
- 19:29Genau, aber. Welche vor und Nachteile ist
- 19:33eigentlich immer der spannende Punkt?
- 19:35Ne, weil man muss ja jetzt sagen OK ich hab n neues projekt ich
- 19:39hab n Kontext ne ich weiß was grob also man weiß nie was zu
- 19:44100% implementiert werden muss, das ist die Realität aber ich
- 19:47hab so ne grobe vor also Vorstellung was erledigt werden
- 19:50muss und soll jetzt ne Architekturentscheidung zum
- 19:53Beispiel treffen dann muss man ja abwägen was sind jetzt so die
- 19:56vor und Nachteile da würde ich gerne mit dir drüber sprechen
- 19:59magst du mal? Mit dem monoliden Ansatz mal
- 20:02anfangen welche Vorteile du da drin siehst und welche
- 20:06Nachteile. Ja, gerade weil wir eben auch
- 20:09gesagt hatten, dass man ja beides machen kann.
- 20:12Ne, es ist ja auch wirklich interessant zu sagen, OK, wann
- 20:15kann man denn vielleicht was verwenden, weil ich finde, wenn
- 20:18man sich das erst mal anhört, so ganz objektiv.
- 20:23Und vielleicht das zum ersten Mal hört, finde ich.
- 20:25Klingt Microsoft ist irgendwie cooler, dass man nicht so sagt,
- 20:27so OK, warum soll ich denn Monolithen nehmen, wenn da alles
- 20:31irgendwie eng gekapselt ist? Du hast alles irgendwie ne weiß
- 20:35nicht ist es. Irgendwie schwer wartbar
- 20:38irgendwann ne, was jetzt beispielsweise n Nachteil ist,
- 20:40wenn das Ganze wächst. Beispielsweise hab ich auch
- 20:43schon selber erlebt, dass du irgendwann n Riesenprojekt hast,
- 20:45wo du dir denkst, so boah, ich kann hier gar nichts mehr
- 20:47anfassen, ohne dass irgendwie das eine vom anderen abhängt,
- 20:50weil halt irgendwie sehr enge Kopplungen irgendwie stattfinden
- 20:54oder es gibt halt eben genau durch solche engen Kopplungen
- 20:56oder so von verschiedenen, Ich nenn es jetzt mal Services in
- 21:00Anführungsstrichen, die im Monolithen gekapselt sind.
- 21:03Dass da irgendwie Seiteneffekte oder Side Effects auftreten
- 21:05weißt du, das ist halt das sind natürlich Nachteile, die relativ
- 21:08schnell auftreten können, wenn du alles irgendwie miteinander
- 21:10verwurstelt hast, ne, was aber n Vorteil natürlich ist, ist,
- 21:15dass. Du eigentlich n bisschen
- 21:17einfacher starten kannst und das ganze Setup ne du sagst OK, ich
- 21:20nehm mir jetzt ein Repository, ich baller da jetzt in dem
- 21:23Beispiel was wir hatten in Frontend rein Backend was auch
- 21:25immer das ist alles da drin und du musst jetzt jetzt zum
- 21:30Beispiel nicht gleich ne riesen Infrastruktur aufbauen ne weil
- 21:34mit Microservices hast du ja irgendwo auch dann ist jetzt n
- 21:39bisschen Spoiler Alert sorry aber du hast natürlich n
- 21:42bisschen mehr Overhead ne bei der ganzen Infrastruktur kommen
- 21:45wir ja gleich noch mal drauf. Und es ist natürlich auch von
- 21:48Vorteil, dass du halt dadurch, dass du n gemeinsamen Code hast,
- 21:52erleichtert es dir auch am Anfang.
- 21:54Und ich sag jetzt extra am Anfang eines Projektes natürlich
- 21:56auch die Zusammenarbeit ne, weil du halt gerade wenn jetzt zum
- 22:00Beispiel irgendjemand neu ins Team kommt, sagst, OK, das ist
- 22:02unsere Codebasis, bitteschön. Wie gesagt, wenn es größer wird,
- 22:07irgendwann schwer wartbar und schwer handelbar.
- 22:09Irgendwann weil wenn es riesengroß ist, hast du
- 22:10natürlich irgendwann den Punkt, dass irgendwann wer reinkommt
- 22:12und sagt, Boah, ist ja super viel, keine Ahnung, check ich
- 22:14nicht wo fang ich denn jetzt an so ne.
- 22:17Genau. Wo muss ich denn überhaupt jetzt
- 22:19im Repository nachschauen? Wo geht es denn hier los?
- 22:22Genau das sind halt auch schon sehr, sehr wichtige Punkte, ne
- 22:25am Start bietet sich das, also fühlt sich das natürlich erstmal
- 22:29richtig an, weil du wie ja meintest microservice Ansatz
- 22:33bedeutet. Overhead, weil du ja auch diese
- 22:35Kommunikation aufbauen musst. Ja, du musst ja, du hast ja dann
- 22:38einzelne Services, die aber irgendwie vernetzt werden müssen
- 22:40und miteinander arbeiten und kommunizieren müssen.
- 22:42Da ist natürlich der Monolithenansatz erstmal
- 22:45praktischer, ne weil was auch n großer Punkt ist.
- 22:48Und das darf man auch nicht unterschätzen, weil das auch
- 22:50wirklich n Vorteil ist. Wenn ich jetzt mein ganzes
- 22:54Projekt zum Beispiel als Monolith Abbilde und ich mache
- 22:57ne Änderung, beispielsweise wie du meintest vorhin am Frontend,
- 23:01kann es sein, dass das Backend nicht betroffen ist.
- 23:04Ne und so gesehen ne neue Version kriegt was n Nachteil
- 23:07wäre, weil es unnötig ist. Was aber auch Fakt ist, wenn ich
- 23:10diese Änderung mache und das in meinen Monolithen mache und
- 23:14teste, sehe ich natürlich auch. Muss ich denn am Backend was
- 23:18ändern? Ne durch diese Kopplung hast du
- 23:20natürlich auch den Vorteil Sachen nicht zu übersehen, sage
- 23:25ich mal. Definitiv weißt du was ich
- 23:27meine. Voll also, dass du einfach
- 23:29sagst, warte mal, wenn ich das hier änder, ne, ich brauche
- 23:31jetzt zum Beispiel mehr Daten im Frontend, Oh das das stellt das
- 23:35Backend aber gar nicht zur Verfügung, das sehe ich dann
- 23:37sofort, weil es halt nicht mehr zusammenpasst.
- 23:39Ne, Na du hast ja zum Beispiel gerade ja auch von Kommunikation
- 23:42gesprochen, ne und ich hatte tatsächlich auch schon mal den
- 23:46Fall, also da hatten wir auch so n microservice Ansatz mal
- 23:50benutzt, ist schon n paar Jahre her, da haben wir ich glaub das
- 23:53waren so. 3. Microservices würd ich es jetzt
- 23:56mal nennen oder? Im Endeffekt war es
- 23:59wahrscheinlich eher noch so ne Art Monolith plus microservice
- 24:03so aber Fakt ist auf jeden Fall, es waren auf jeden Fall 2 oder
- 24:08ich glaub sogar 3 Komponenten die halt eben zusammengearbeitet
- 24:11haben ne und wir haben uns halt eben um diese Komponenten
- 24:14gekümmert und hatten dann irgendwie beispielsweise die
- 24:16haben mit ich glaube über Rest kommuniziert.
- 24:20Und da war es dann so, dass beispielsweise wir irgendwie an
- 24:23der Restschnittstelle von unserem System zu unserem System
- 24:26wiederum etwas geändert haben, aber nur auf der einen Seite,
- 24:29dann haben wir uns irgendwann gefragt, das lief jetzt nicht
- 24:33produktiv, aber auf einer Stage, wieso das nicht mehr
- 24:35funktioniert oder warum der Fehler da auftritt, ne oder n
- 24:39Fehler da den wir da. Sag ich mal identifiziert haben
- 24:42haben wir dann irgendwie gemerkt, ja gut, OK hier
- 24:43Monitoring war gut, alles alles schick, alles toll, haben wir
- 24:46relativ schnell identifiziert, dass man, dass wir halt einfach
- 24:49vergessen haben an der Stelle beim anderen Service was
- 24:52anzupassen, aber es kommt halt relativ schnell vor.
- 24:55Wie du meintest, du testest dein 1 System ab, du testest das
- 24:58andere System ab, du hast da vielleicht irgendwo sag ich mal
- 25:01n mog zu dieser Schnittstelle ne und hast vielleicht in dem
- 25:04Moment aber nicht so n übergreifenden Test vielleicht
- 25:07zwischen den verschiedenen Systemen und selbst wenn du
- 25:09diese Tests hast, dann wird es meistens trotzdem auch immer n
- 25:12bisschen komplexer. Ne ja, und dann natürlich n ganz
- 25:16großer Faktor dabei ist, ich weiß jetzt nicht wie viele ihr
- 25:19damals im Team wart und wie umfangreich das Projekt war. 6
- 25:23Leute. 6 Leute. Ja, das ist ja aber noch
- 25:27überschaubar von der Teamgröße. Also es sind schon also 6
- 25:30Entwickler. Entwicklerinnen würde ich jetzt
- 25:31mal denken, das ist schon ne gute Mannstärke oder Fraustärke
- 25:35wie sagt man aber es ist kein Riesenprojekt oder kein riesen
- 25:42Team. Ja und deswegen sag ich mal sind
- 25:44dieser Monolitenansatz. Ist auch so n bisschen abhängig
- 25:48wie erfolgreich der sein kann. Auch von der Skalierbarkeit.
- 25:51Wieviel Leute arbeiten da drauf, wieviel Varianten gibt es von
- 25:55diesem Projekt? Ja, also von dieser
- 25:57Implementierung, ich find das ist n ganz ganz großer Punkt
- 26:00dabei den man berücksichtigen muss ist es n relativ statisches
- 26:05Projekt, das heißt ich hab so eine Anwendung, die hat zwar
- 26:07viele Bestandteile aber es gibt nur diese Anwendung, es gibt
- 26:11keine Variation dieser Anwendung.
- 26:14Na und? Da arbeiten jetzt fest 6 Leute
- 26:16dran, beispielsweise bei euch, dann dann ist das vertretbar,
- 26:21das als Monolith zu machen, weil du die Vorteile dann haben
- 26:23kannst und gar nicht so Riesen Nachteile hast am Ende.
- 26:27Aber jetzt stell dir vor, du hast sowas wie austauschbare
- 26:33Elemente da drin, ne Varianten zum Beispiel vom Frontend.
- 26:37Ja also du hast. Du hast n normales Frontend?
- 26:40Dann hast du noch ne mobile App und so weiter ne Desktop
- 26:42application und so weiter wir gehen jetzt mal nicht von so
- 26:44Cross Plattform Entwicklung aus. Ja sondern du machst das jetzt
- 26:46nativ für alles und immer mehr und immer mehr und dann gibt es
- 26:49Varianten, dann gibt es unterschiedliche Schnittstellen,
- 26:54unterschiedliche Produkte und dann fächerst du irgendwie
- 26:57dieses Projekt auf und versuchst das alles in den Monolithen rein
- 27:01zu graben ja ja warte mal hier brauchen wir jetzt ne andere
- 27:05Variante ja komm mach n Brunch auf.
- 27:07Ja, so richtig jetzt. Jetzt gehen wir in die
- 27:08Versionierung, machen Branch auf und dann haben wir n neuen
- 27:11Entwicklungszweig, der auch nie wieder zusammenführt, weil die
- 27:13komplett unterschiedlich voneinander jetzt entwickelt
- 27:16werden, weil die einfach 2 Varianten sind, Variante A und
- 27:19Variante B unseres Produkts beispielsweise und dann merkst
- 27:23du es schon so mit dem Monoliten ey, jetzt haben wir das ganze
- 27:26Riesenprojekt als 2 Varianten, obwohl sich 10% nur
- 27:31unterscheiden, ja. Ne, aber ich mach das jetzt auch
- 27:34nicht über irgendwie konfigurierbar oder so, das ist
- 27:36einfach zu krass einfach ne das kriegst du nicht mehr gehandelt,
- 27:39das skaliert nicht mehr. Also was machen wir jetzt und
- 27:42dann kommt auch so n microservice Ansatz ins Spiel wo
- 27:44du sagst na ja gut, aber wenn du einfach nur diesen Server also
- 27:46wenn du das als einzelnen Server hättest und du tauschst den aus
- 27:51ist doch alles cool ja also dann dann bau ich mir nur so n mein
- 27:55Cluster anders aus und Tausch nur diesen kleinen Bestandteil
- 27:58aus und schon funktioniert es alles wieder definitiv klingt ja
- 28:00auch verlockend ne? Also lass uns mal so über vor
- 28:03und Nachteile von Microservices reden.
- 28:05Klingt sehr verlockend. Ja, also wie gesagt ne.
- 28:13Also du hast ja gerade glaube ich gerade von Vorteil, die
- 28:16Skalierbarkeit schon angesprochen, Teams können
- 28:21unabhängig voneinander entwickeln und deployen, das ist
- 28:23natürlich, weil du ja gerade meintest die Teamgröße ne spielt
- 28:25natürlich da an der Stelle ne ne starke Rolle, klar und.
- 28:33Ja, du kannst halt auch unterschiedliche Tech Stacks
- 28:35benutzen. Vielleicht ne also weil du ja
- 28:37gerade auch zum Beispiel meintest so du hast verschiedene
- 28:42vielleicht Varianten und je nach Variante könnte es ja vielleicht
- 28:46auch sein, dass du vielleicht, also ich meine jetzt Variante
- 28:48ne, also im Sinne von von App du willst jetzt nicht eine Cross
- 28:51Plattform App machen, sondern du nutzt halt vielleicht für jede
- 28:54Anwendung, für den, für die jedes Frontend vielleicht eine
- 28:57andere Technologie, ne. Und du kannst ja zum Beispiel
- 29:01auch sagen, der Bezahltservice beispielsweise, der muss
- 29:04unglaublich, ich sag jetzt einfach mal aus der Hüfte
- 29:08geschossen, so sehr performant sein, was aber vielleicht n
- 29:11anderer Service nicht unbedingt sein muss.
- 29:14Demzufolge kannst du vielleicht auch unterschiedliche
- 29:15Programmiersprachen nehmen, weil du halt sagst, OK, da hast du
- 29:18vielleicht ne, ne ne höhere. Also du musst halt gucken was
- 29:21für Anforderungen brauchst du denn für die verschiedenen
- 29:23Services, kannst dann viel besser darauf dann das ganze
- 29:26Anpassen, aber Nachteile hatten wir glaub ich auch schon so n
- 29:29bisschen angesprochen von Microservices.
- 29:31Genau also den ersten Punkt, den du auch Recht schnell genannt
- 29:33hast, weil den kann man, den darf man einfach nicht vergessen
- 29:35dabei. Das wär unfair.
- 29:37Ist natürlich, dass du dir damit ne komplexe Infrastruktur
- 29:41einkaufst. Ne, also?
- 29:43Monitoring, Logging, das sind so Stichwörter, die so essentiell
- 29:47sind. Wenn ich diesen diesen
- 29:48Architekturansatz fahre, weil es klingt verlockend, dass du jetzt
- 29:53einzelne Elemente hast und wie gesagt, gerade wenn es um
- 29:56Varianten geht oder so, ist das auch wirklich n Riesenvorteil,
- 30:00aber ich muss ja auch mitkriegen, wenn irgendwas nicht
- 30:02stimmt, ja, also ich arbeite die ganze Zeit am Service A
- 30:07entwickel den weiter und Service B und C liefen ja, das ging ja
- 30:10und dann mach ich irgendeine Änderung an A.
- 30:13Dass B und C auf einmal zum Beispiel mit der Kommunikation
- 30:15nicht mehr zufrieden sind und nicht mehr die Daten kriegen,
- 30:17die sie brauchen. Oder vielleicht doch, aber
- 30:20anders formatiert, was auch immer.
- 30:21Also es ändert sich zum Beispiel, was an der
- 30:23Schnittstelle, aber ich seh das nicht, ich arbeite an A die
- 30:27Ployders, das läuft das Ding, ich guck mir das an, zum
- 30:30Beispiel so n Teil vom Frontend ne und alles ist cool und ich
- 30:33krieg aber dann wenn ich kein Monitoring, kein Logging hab gar
- 30:35nicht mit, dass B und C gerade. Wirklich dauerhaft Fehler
- 30:39werfen? Ja und gar nicht mehr wirklich
- 30:41funktionieren. Und ich kenn das auch.
- 30:43Ich mein das ich find, das klingt immer so.
- 30:45Ja natürlich musst du das irgendwie, das musst du halt
- 30:48irgendwie sicherstellen, aber und ich finde das ist auch
- 30:51wirklich n wichtiger Punkt den man glaub ich auch schnell mal
- 30:55unterschätzt, ist halt eben dieses Monitoring, dieses
- 30:58Logging und klar du welches zu haben.
- 31:03Warum nicht auf jeden Fall. Klar willst du Monitoring und
- 31:06Logging ja, aber mach es mal richtig, mach es mal so, dass du
- 31:10auch wirklich relativ schnell verstehst, was das Problem ist
- 31:13und das ist finde ich auch ne ich sag mal unterschätzte Sache,
- 31:18weil man logischerweise sich sofort hinstellt und sagt klar
- 31:21braucht man das, ist ja No brainer, aber das richtig zu
- 31:24machen. Finde ich ist echt auch n
- 31:27Knackpunkt wo man auch ne Menge von lernen kann und also so so
- 31:32ging es uns auch ne so wie gesagt was ich vorhin eben
- 31:34meinte, das Beispiel was ich mal hatte am Anfang war unser unser
- 31:37Monitoring auch noch nicht gut, irgendwann haben wir es dann
- 31:40ausgebaut weil wir relativ schnell gemerkt haben wir wissen
- 31:42dass es gerade nicht mehr funktioniert, aber wir wissen
- 31:45nicht warum es nicht mehr funktioniert ne also auch die
- 31:47Observability dahinter. Die einfach irgendwie nicht mehr
- 31:50richtig hingehauen hat. Ne so, und dann denkst du dir so
- 31:53OK, wir haben vielleicht Monitoring irgendwie
- 31:55eingerichtet und n logging, aber eigentlich wissen wir trotzdem
- 31:58gar nicht warum, also wie wir es wie wir es fixen können, was
- 32:03überhaupt das Problem ist so ne. Da noch ganz kurz die Anmerkung,
- 32:09Liebe Zuhörerinnen, lieber Zuhörer, falls dich das Thema
- 32:12Monitoring und Logging interessiert und du dir denkst,
- 32:14so ah ja, da könnt ich wahrscheinlich auch noch mehr
- 32:17machen. In unserer Def Ops Reihe.
- 32:19Die ist zwar schon abgeschlossen, aber da gibt es
- 32:22ne spezielle Folge zu dem Thema, dann hör da gern mal rein, ist
- 32:25super interessant und bringt auf jeden Fall das Projekt weiter
- 32:28nach vorne, wenn man diese Prinzipien die wir da besprechen
- 32:31auch umsetzt. Ja, definitiv so.
- 32:35Jetzt bin ich n bisschen raus und zwar vor und Nachteile
- 32:39Microsofts, was mich jetzt eigentlich interessiert Tino ist
- 32:42OK, es gibt logischerweise ne du kannst mit, du kannst es als
- 32:45Monolith machen, du kannst das Microsoft machen, du hast da von
- 32:48beiden vor und Nachteile, aber wann ist denn jetzt zum Beispiel
- 32:50wenn wir uns jetzt sagen OK wir haben jetzt, wir sind jetzt in
- 32:52der Praxis unterwegs, wann ist denn vielleicht was eventuell
- 32:54besser ne also irgendwo müssen wir uns vielleicht orientieren
- 32:58und sagen OK macht es irgendwie Sinn wenn man an der und der
- 33:01Stelle das und das macht ja. Fangen wir noch mal bei
- 33:06Monolithen an. Wann ist das sinnvoll, also
- 33:10gerade am Anfang eines Projektes ist es sehr oft sinnvoll, das
- 33:15möchte ich gleich mal vorweg sagen, gerade wenn ich noch so
- 33:19in der Machbarkeitsphase bin, vielleicht NMVP bauen möchte,
- 33:25dann brauche ich nicht, also dann brauche ich diesen Overhead
- 33:29einfach nicht, da muss ich nicht ne komplexe Infrastruktur
- 33:31aufbauen. Um Microservices als
- 33:35Architekturansatz abbilden zu können?
- 33:37Ja, weil wie gesagt, dieser Overhead, der ist nicht zu
- 33:39unterschätzen, gerade wenn es Richtung Pipeline geht, ne, dass
- 33:42ich einzelne Services quasi integrieren und deployen kann,
- 33:47das da muss man dann schon ne Menge machen um das aufzusetzen
- 33:51und beim MVP verbrenne ich da ziemlich viel Zeit,
- 33:53beispielsweise gerade wenn ich n kleines Team bin, was ja oft der
- 33:56Fall ist, wenn ich. Etwas n Prototypenbaue ja, also
- 34:00so NMVP machst du ja nicht mit 20 Leuten.
- 34:01Da sitzt du vielleicht allein oder zu zweit dran und gerade
- 34:04wenn es schnell gehen soll, die Geschwindigkeit ne Rolle spielt,
- 34:10dann würde ich da halt ganz klar n Monolith n Ansatz wählen am
- 34:12Anfang, denn Fakt ist, es ist ja nicht in Stein gemeißelt, ich
- 34:17hoffe du weißt was ich meine damit also du kannst diesen
- 34:21Ansatz ja auch wie ihr es im Projekt macht oder gemacht habt,
- 34:24das ist ja Vergangenheit. Ändern, also wieder umbauen oder
- 34:30oder so Stück für Stück adaptieren.
- 34:33Ja, auf jeden Fall. Also es ist es, ich sag mal, nie
- 34:35zu spät, auch zu sagen, OK, du ziehst jetzt aus deinem
- 34:39Monolith, vielleicht identifizierst du und sagst OK,
- 34:41das ist jetzt vielleicht n Service, der irgendwie wichtig
- 34:44ist, der wirklich abgekapselt für eine.
- 34:48Wie nennt man das für für eine Verantwortlichkeit?
- 34:51Da ist ne wie zum Beispiel ne Authentication oder so ne wo du
- 34:54sagst OK diesen Service, den können wir einfach mal
- 34:56rausziehen, den können wir abkoppeln aus unserem Monolithen
- 35:00und da machen wir n kleinen Microservice draus und dann ist
- 35:02es ja auch nicht schlecht zu sagen OK angenommen du kommst an
- 35:06diesem Punkt ne Microservices draus zu machen aus bestimmten
- 35:09Gründen, dann ist es halt ja auch nicht verkehrt es nach und
- 35:14nach zu machen, also sowieso ne Übergangsphase zu zu haben.
- 35:18Und das, was halt noch übrig bleibt, bleibt dann halt übrig.
- 35:21So ne. Also angenommen du hast jetzt
- 35:22vielleicht irgendwie so am Ende noch so n ich nenn es jetzt mal
- 35:26salopp gesagt so n kuddelmuddel wo du nicht mehr ne irgendwie ne
- 35:29wo du nicht mehr ne Verantwortlichkeit rausziehen
- 35:32kannst. Ne und gerade wenn man jetzt zum
- 35:35Beispiel sagt, OK wann passiert denn sowas?
- 35:36Also erstmal ist es natürlich wichtig und ich find da muss man
- 35:40natürlich gucken, man kann das natürlich auch irgendwie
- 35:42dahingehend vorbereiten, dass es besser funktioniert, ne das als
- 35:46erstes mal. Aber kommen wir gleich noch mal
- 35:49drauf zurück, was jetzt zum Beispiel was ich finde ist,
- 35:53wieso sollte man überhaupt vielleicht auf Microservices
- 35:55gehen? Also ne jetzt im Sinne von warum
- 35:58in der Praxis microservice, wann macht es Sinn?
- 36:01Also wir hatten ja jetzt zum Beispiel logischerweise, du
- 36:02kannst ja erst mal das nehmen so mehr oder weniger vom Monolithen
- 36:05und das Umdrehen und sagen ja gut, wenn du n großes Team hast.
- 36:07Klar da wenn du mehr Leute hast stehst.
- 36:10Dir nicht auf den Füßen. Da kannst du halt einfach ein
- 36:13kleines Team wieder nehmen oder draus machen und sagen, OK, du
- 36:17hast ein riesengroßes Team. Ist ja blöd, die Kommunikation
- 36:20dazwischen 1000 teammembern das ist ja riesen Overhead, da
- 36:25kommst du ja gar nicht mehr zum Arbeiten.
- 36:26Wieviel meetings willst du irgendwann halten, damit du
- 36:28irgendwann auf eine Reinigung kommst?
- 36:30In einem riesen Monoliten, also Microservices, kleine
- 36:33Verantwortlichkeiten, kleine Teams für die entsprechenden
- 36:35Verantwortlichkeiten wie zum Beispiel ein Authentication
- 36:37Service bringt natürlich aber auch was wenn du sagst OK.
- 36:41Du hast jetzt zum Beispiel deinen Authentication Service
- 36:43und du willst ihn jetzt zum Beispiel 5 mal in 5 Produkten,
- 36:46die du irgendwie rausbringst. Brauchst du ne Authentication,
- 36:48dann mach doch einen Authentication Service, dann
- 36:50brauchst dich nur einmal anmelden, kannst dich überall
- 36:51anders anmelden, ne so in die Richtung, das ist ja zum
- 36:55Beispiel auch noch ne Sache. Weiß nicht was.
- 36:58Das ist aber n wichtiger. Punkt.
- 36:59Ja. Ne.
- 37:01Ja, also wie gesagt, wir hatten die Komplexität des Produkts ne
- 37:04wenn es Varianten gibt, wenn es unterschiedlich, also wenn es
- 37:07einfach. Kein geradliniger
- 37:10Entwicklungszweig ist sozusagen ne beziehungsweise nee, das
- 37:13klingt jetzt sehr repolastig, ich will es gar nicht so
- 37:16formulieren, aber wenn die Funktionalität, nennen wir es
- 37:20mal so ne, die Funktionalität des Produkts vielseitig ist und
- 37:24es Varianten gibt, einfach das ist einfach der Punkt dahinter,
- 37:28dann kann man halt auch sagen, OK, vielleicht ist n
- 37:31Microservices Ansatz sinnvoll. Gerade hinsichtlich auch so
- 37:36Features. Wenn du sagst, nicht jeder
- 37:39Endverbraucher, jeder Kunde am Ende hat jedes Feature zum
- 37:42Beispiel Na von meinem Produkt auch wieder so n Punkt wo ich
- 37:46sagen kann na ja aber dann hab ich ne gewisse Komplexität wenn
- 37:50alles auf einem Haufen ist sozusagen und ich dann wieder
- 37:52dafür sorgen muss, aber Sachen müssen an sein müssen aus sein,
- 37:55der kriegt die Version der kriegt die Version.
- 37:58Dann dann, wenn ich sowas merke, dann kann man halt wirklich auf
- 38:01jeden Fall über diesen Microservices Ansatz nachdenken,
- 38:03ob man nicht in die Richtung geht.
- 38:04Ja, mit dem pro Abo kriegst du Halt 80% der Services und mit
- 38:07dem Ultimate Abo kriegst du dann.
- 38:10Wie immer und mit Free kannst du mal 5 Minuten testen.
- 38:17Genau jetzt hast du dich rausgemacht.
- 38:18Ja, aber das genau, also wenn diese wenn es viele
- 38:21Abhängigkeiten auch zu anderen Systemen gibt und so und dann
- 38:24ich das halt. Nicht entkoppeln möchte, weil
- 38:27ich jedes Mal dann bei jeder Änderung mir denke, oh jetzt ey,
- 38:29keine Ahnung, jetzt muss ich hier von 500 Funktionalitäten
- 38:33hab ich eine geändert und ich muss aber 500 so gesehen neu
- 38:36versionieren und neue Deployen obwohl da nichts passiert ist.
- 38:38Ne sowas find ich ist halt auch ärgerlich dann also ich find das
- 38:42dann merk ich halt auch so, dass es von Architektur manchmal so
- 38:45ist. Ah jetzt mach ich jetzt weißt du
- 38:46jetzt deploye ich das ganze System.
- 38:50Dauert alle Tests laufen ne, du hast halt ne große Pipeline
- 38:54dahinter, aber eigentlich hast du nur an einem kleinen
- 38:56Bestandteil was geändert und du hättest eigentlich nur 5 Tests
- 38:58laufen lassen müssen, so übertrieben gesagt und dann
- 39:01denkst du dir auch so und n Punkt, den haben wir vorhin
- 39:08nicht so richtig klar herausgestellt glaub ich ist
- 39:10wenn was schiefgeht, dann gilt das für deinen ganzen
- 39:13Monolithen, zum Beispiel, dass die Pipeline sagt ist nicht.
- 39:17Weil dieser eine Test jetzt rot ist.
- 39:18Das war, es klappt nicht noch mal alles laufen lassen.
- 39:22Wenn ich das jetzt auf microservice Ebene mache und
- 39:24diese der die Pipeline einfach viel schneller als für diesen
- 39:27kleinen Service kann ich ja viel schneller das fixen und dann
- 39:30deployen, richtig. Ja toll, wenn man noch mal, so
- 39:36ich ich überlege gerade so was man so vielleicht so tippmäßig
- 39:38so auch mitgeben kann. Also.
- 39:42Aber ich hab, ich weiß nicht, ich glaube, du hast es auch
- 39:45schon beides mal erlebt zu sagen okay man macht irgendwie was
- 39:47monolithisch, man fängt vielleicht monolithisch angeht,
- 39:52dann irgendwann vielleicht denkt, dann kommt man irgendwann
- 39:54an den Punkt, wo man sagt, Boah Ey, irgendwie passt das jetzt
- 39:56nicht mehr, haben wir privat ja auch schon gehabt, haben
- 39:59teilweise, da hast du ja auch einiges gemacht, auch direkt
- 40:03sozusagen einzelne Services sozusagen dann aufgesetzt, also
- 40:07so, ich sag mal Micro Service Ansatz, aber wenn man jetzt zum
- 40:10Beispiel sagt Ey okay irgendwie ist Microsoft ist cool und.
- 40:12Ich hab jetzt aber Monolith. Was könnte man machen oder man
- 40:16sagt OK wir haben jetzt aber NMVP gebaut, es ist jetzt
- 40:19monolithisch und ich will jetzt aber irgendwie das ganze
- 40:23aufspalten. Hast du da n Tipp was also was
- 40:28man machen könnte vielleicht zu sagen OK wir haben ne fängst
- 40:31monolithisch an, bist gerade dabei oder du weißt.
- 40:34Ne wie ich meinte, MVP ist gerade los, aber wahrscheinlich
- 40:37wird es irgendwann microservice kann man da schon irgendwie
- 40:40drauf achten, dass man vielleicht das ganze n bisschen
- 40:43Smoothie dann hinbekommt? Ja, fangen wir mal mit der
- 40:49Infrastruktur an. Die ist natürlich nicht so
- 40:51umfangreich logischerweise, es hat mir auch als Vorteil
- 40:53genannt, wie bei Microservices, aber Grundprinzipien gelten für
- 40:57beide Ansätze. Stichwort Tracing, logging,
- 41:00Monitoring. Alles was wir schon genannt
- 41:02hatten, gilt ja für beides, also bitte es nicht falsch verstehen,
- 41:05wenn ich sage ich nehm monolithen, dann brauch ich das
- 41:07alles nicht. Nein, so ist es nicht, das heißt
- 41:10diese ganzen Ansätze, diese Pipeline einfach auch schon
- 41:13vernünftig aufbauen, dass man sie adaptieren kann, auseinander
- 41:16trennen kann, auch wieder verwenden kann, Bestandteile
- 41:19dafür für einzelne ne, dass ich dann zum Beispiel mehrere kleine
- 41:22hab, aber halt das alles schon gut vorbereitet, frühzeitig
- 41:27Einsätze. Dann auf Entwicklungsebene ein
- 41:32Monolith bedeutet nicht, dass ich spaghetticode schreiben
- 41:34darf. Das heißt, ich muss ja trotzdem
- 41:38ne gute Softwarearchitektur aufsetzen, auch bei einem
- 41:41Monolithen, dass ich in der Lage bin, später das ganze zerlegen
- 41:46zu kann, ne zerlegen zu können, so falls ich dann sage, ich
- 41:50möchte doch auf den microservice Ansatz gehen, dass ich halt die
- 41:53Möglichkeit hab n Freischnitt zu machen.
- 41:55Ne, dass ich so Teile raustrenne und sie auslagere und das wären
- 41:59so Sachen, worauf ich jetzt persönlich achten würde.
- 42:02Halt wie gesagt einmal die diese Infrastruktur Sache, die
- 42:06Automatisierung ne dass du ne vernünftige Pipeline hast,
- 42:08vernünftiges Monitoring, dass dieser Overhead quasi nicht so
- 42:13riesig wird wenn ich es Umbau weil ich ja einfach n Teil auch
- 42:15beim Monolithen schon brauche und dass ja auf Code Ebene halt
- 42:19auch schon. Nicht also ich würde nicht von
- 42:22Anfang ansagen, oh, ich muss das jetzt unbedingt im Kopf haben,
- 42:25so ne, aber einfach sag ich mal best practices verwenden, damit
- 42:30du später auf so remit refactoring diese Freischnitte
- 42:33machen kannst. Ja, also gerade wenn man jetzt,
- 42:36ich hatte ja vorhin so auch angesprochen, dass mit der
- 42:38Authentication, du kannst halt zum Beispiel n Authentication
- 42:42Service schon in deinen Monolithen reinballern ja, das
- 42:45nennt man ja auch vielleicht so besser, wenn du so ne
- 42:47serviceschicht hast oder so in deinem Monolithen.
- 42:50Kannst du natürlich die auch hinstellen und sagen, gut, ich
- 42:52hab bau das da jetzt schon schön also modular rein ne kannst
- 42:57natürlich aber auch sagen auch keine Ahnung ich mach das hier
- 42:59ich mach das da so richtig so wild West Abhängigkeiten durch
- 43:04den ganzen Code von A nach B ziehen so wie es halt gerade
- 43:08passt. Ne wild West das sollte man
- 43:11natürlich n bisschen vermeiden und ich ich denke dann kann man
- 43:15eigentlich n ganz guten Shift hinkriegen von.
- 43:20Von einem Monolithen zum Beispiel, hinzu einem
- 43:23Microservice oder sich halt diesen, diesen Weg halt
- 43:26entspannt offen lassen. Ne, also ich sag mal so,
- 43:28Vorbereitung ist ja die halbe Miete, ich glaub sagt man das so
- 43:31war das. Sagt man so gut.
- 43:33Ja, es ist genauso ein. Also du sagst das sehr oft so,
- 43:38das war vielleicht der Erste, das erste Sprichwort, was ich
- 43:41seit langem mal wieder richtig hart da war, sehr gut.
- 43:45Was, was ja eigentlich noch irgendwie ganz interessant ist.
- 43:47Zumindest hab ich jetzt auch noch mal drüber nachgedacht.
- 43:48Wir haben ja auch gerne auch mal, sagen wir mal Leute in
- 43:52unserer Community, die vielleicht auch noch n bisschen
- 43:55im Bereich Starter, Beginner, Anfänger, Anfängerin, wie auch
- 43:58immer man das nennen möchte, so in der Softwareentwicklung sind
- 44:01und wenn man sich jetzt vielleicht so ne ich ich stell
- 44:05ich, ich versuch mich immer selbst in mich hineinzuversetzen
- 44:07und angenommen, ich würde jetzt diese Folge hören und würde mir
- 44:09denken so. Boah Mist ey, jetzt muss ich.
- 44:12Jetzt hab ich wieder das nächste was ich irgendwie machen muss.
- 44:14Microservice ist gar keine Ahnung, ich muss ja erstmal noch
- 44:17überhaupt erstmal meine erste richtige Anwendung bauen, da bin
- 44:19ich ja gerade dabei oder so was kann man was, was könnten wir
- 44:24denn Tino, was könnten wir denn mal so jemandem der sagt oder
- 44:28die sagt Ey ich bin gerade am Anfang, was ist denn die bessere
- 44:33Wahl für die entsprechende Person, die gerade am Anfang
- 44:36steht, wenn man sagt Ey du Boss willst ne Anwendung bauen.
- 44:40Mach mal hier Monolith oder Microservice.
- 44:45Ja, Take Home Message. Jetzt wird's spannend, gerade
- 44:51als Einsteiger oder Einsteigerin schreibe ich ja eher kleinere
- 44:56Projekte, also kleinere Softwarelösungen.
- 44:59Ja, das sind so erste kleine Projekte, da würde ich mir über
- 45:02Microservices gar keine Gedanken machen, also wenn ich wirklich
- 45:05richtig. Anfänger, Anfängerin bin und das
- 45:08nicht negativ gemeint, überhaupt nicht, nicht sich sag ich mal
- 45:13überwältigen lassen von dieser Inputflut.
- 45:16Ja, weil IT Soft Entwicklung ist.
- 45:18Unglaublich vielseitig und umfangreich und erdrückend, wenn
- 45:21man es alles gleich berücksichtigen möchte, deswegen
- 45:24codet einfach los Monolithen Ansatz was ihr braucht rein in
- 45:28das Projekt, fertig. Ganz einfach, da würde ich mir,
- 45:32man macht sich am Anfang ja auch um die Pipeline einfach denn
- 45:34auch noch keine Gedanken, deswegen monolithenansatz ja,
- 45:38wenn ich aber sage, nein, jetzt ist es so n Projekt, das möchte
- 45:42ich wirklich langfristig machen, ja, also das ist ne
- 45:45Softwarelösung, die brauche ich beispielsweise und die möchte
- 45:47ich verwenden oder ich möchte sie vielleicht sogar anderen
- 45:49schon zur Verfügung stellen, wieso ne erste kleine App,
- 45:52vielleicht ne Website ne also n Frontend und so weiter dann.
- 45:57Würde ich sagen, gut, wieviel bin ich im Team, bin ich
- 45:59alleine, ist es n privates Projekt, würde ich weiterhin den
- 46:02Monolithen Ansatz machen, aber halt Richtung Infrastruktur wie
- 46:06wir meinten das alles vorbereiten, aufbauen, dass man
- 46:09sagt ich hab ne vernünftige Pipeline, wirklich noch mal der
- 46:12reminder wir haben da ne ganze Reihe zu gemacht zu dev Ops mit
- 46:16Hilfe dieser Reihe kann man sich schon mal die erste kleine
- 46:19Pipeline aufbauen, dass man einfach da rein wächst, weil das
- 46:21ist. Wenn man mehr Erfahrung hat, ein
- 46:23sehr, sehr wichtiges Thema, was einen immer begleiten wird man,
- 46:26es gibt keinen Weg drumherum, ja so und dann irgendwann kann man
- 46:33ja mal sagen, ey, ich möchte jetzt mal Microservices machen,
- 46:36ja, ich möchte das mal verwenden und dann kann man sich ja auch
- 46:39gezielt mal n Projekt nehmen und sagen, ich, wie würde ich das
- 46:42denn splitten ja also ich hab jetzt meine Erfahrung gesammelt,
- 46:45ich hab. Ich hab so n Monolithen Projekt
- 46:48umgesetzt. Ich hab zum Beispiel n Backend n
- 46:49Frontend laufen, das ist zwar alles irgendwie eng gekoppelt,
- 46:52aber das läuft dann sich zu überlegen ey wie kann ich das
- 46:56denn Split? Ja.
- 46:58Weißt du? Ja, find ich gut.
- 47:00Also im Endeffekt denk ich mir halt auch so.
- 47:02Gerade am Anfang ist es halt sinnvoll diese Komplexität halt
- 47:05auch gering zu halten, weil weiß ich nicht, du bist ja vielleicht
- 47:08auch noch gerade in so einem in so bei bestimmten Grundlagen
- 47:11vielleicht, vielleicht bist du bei manchen Sachen schon weiter,
- 47:13aber woanders bist du noch bei Grundlagen irgendwie.
- 47:16Und dann bringt es dir halt auch noch nichts, wenn du quasi
- 47:18sagst, OK, ich muss jetzt aber schon irgendwie meine
- 47:22Infrastruktur aufbauen, weißt du ja, ich brauch jetzt unbedingt n
- 47:25Cloud Service, zum Beispiel keine Ahnung, du kannst das ja
- 47:27auch irgendwie lokal machen, aber beim beim Microservice
- 47:30kommst du ja relativ schnell irgendwann zu Docker und Docker
- 47:33finde ich ist auch n ist jetzt nicht n Riesenthema aber ist n
- 47:36Thema so, das heißt da musst du halt auch erst mal wieder n
- 47:39bisschen reinkommen. Wenn du aber gerade noch
- 47:41woanders bist, ist es natürlich am Anfang schwierig, dann wirst
- 47:43du vielleicht irgendwie überladen, ne und das?
- 47:45Lässt sich dadurch vermeiden. Ich find was wichtig ist ist,
- 47:49dass man jetzt sich nicht hinstellt und sagt, das ist zum
- 47:52Beispiel so n Tenor den ich höfter mal irgendwie dann so am
- 47:56Anfang auch mitbekommen hatte. Monolithen sind schlecht, so
- 48:00mach das nicht, das ist das ist von gestern, mach lieber
- 48:02microservice, das ist cool so, wir hatten ja mal das Ganze so
- 48:07durchgesprochen, ist es nicht so und gerade wenn du am Anfang
- 48:10bist find ich es monoli überhaupt nicht schlecht so,
- 48:12wenn du irgendwann dir aber denkst, ja.
- 48:15Was ist denn jetzt n großer Unterschied zwischen einem
- 48:17Monolithen und einem und einem Microservice?
- 48:19Dann fragt dich immer, OK, macht dein Monolith mehr als eine
- 48:23Sache oder macht es mehrere Sachen ne so also ist da zum
- 48:27Beispiel ne Authentication drin, ist da vielleicht irgendwie
- 48:29keine Ahnung irgendwas drin was was hatten wir n Beispiel E
- 48:33Commerce hast du da Zahlungsmittel hast du da
- 48:37irgendwie lokalisierungsservice hast du vielleicht noch so ne
- 48:40Art was weiß ich. Denkt dir irgendwas aus, du
- 48:46weißt ne, also hast hast du diese ganzen Sachen drin und
- 48:48wenn du aber n microservice hast, dann machen die Sachen
- 48:50alle nur das. Also du hast wirklich nur das
- 48:52ist für steht für sich alleine und du hast jetzt zum Beispiel
- 48:57so n Microservice der irgendwie sagt OK du bist jetzt zum
- 48:59Beispiel an der und der, also ne bist da und da lokalisiert.
- 49:03Dann sagt der aber nicht ja, du bist aber jetzt da und da
- 49:06lokalisiert und ich weiß, dass Anwendung x da lokalisiert ist.
- 49:11Baba BAB so nach dem Motto sondern ne du hast also das ist
- 49:14ja quasi ich will jetzt nicht stateless sagen, aber du dieser
- 49:18Service, der ist erstmal an sich relativ dumm, der kennt zum
- 49:22Beispiel vielleicht nicht unbedingt irgendwelche
- 49:25großartigen Details von irgendeiner vom vom anderen
- 49:31Service, ne. Und da das find ich so.
- 49:34Die hat halt eine gekapselte Funktionalität.
- 49:36Genau, und das ist halt immer so n bisschen die, die die
- 49:39Schwierigkeit finde ich dann auch irgendwann wirklich zu
- 49:41sagen, OK, das ist jetzt eine Verantwortlichkeit, das ist n
- 49:43Service und das muss man vielleicht auch erstmal
- 49:45irgendwie lernen, was halt auch wieder irgendwie n bisschen mit
- 49:47Reinspielt in das Ganze. Mach es dir erstmal nicht zu
- 49:50kompliziert, wag es erstmal rein, fang mit Monolithen an und
- 49:54prinzipiell ist spricht auch nicht immer irgendwas gegen
- 49:57Monolithen. Ne es ist halt immer die Sache
- 49:59was braucht man gerade, was hilft, was ist wichtig, was
- 50:02passt. Das genau das Problem bei
- 50:04Monolith ist einfach, dass dieser Begriff sag ich mal so n
- 50:09bisschen ja so n so n Schatten mit sich bringt, der weil er
- 50:13einfach auch oft im Zusammenhang mit so alten.
- 50:18Projekten verwendet werden, so Legacy Sachen, die aber seit 20
- 50:22Jahren irgendwie am Leben gehalten werden und.
- 50:24Dieses typische historisch. Gewachsene und dann redet man
- 50:27ganz oft von er ist so n altprojekt und da ist so n
- 50:30riesen Monolith drin und da ist es einfach Chaos.
- 50:33Ja, aber Monolith in dem Grundarchitekturansatz bedeutet
- 50:37nicht Chaos. Also man sagt nicht zu einem
- 50:39Projekt, was total chaotisch ist.
- 50:40Oder guck mal so n richtiger Monolith, aber so wird es oft
- 50:43verwendet oder einem verkauft und das ist halt einfach dem
- 50:46nicht gerecht und nicht fair. Wir haben das ja auch sehr
- 50:48objektiv hier betrachtet, ich sag mal so, Fakt ist beide
- 50:53Ansätze können komplettes Chaos werden und beide Ansätze können
- 50:56auch sehr gut funktionieren und wir haben ja die vor und
- 50:58Nachteile genannt. Wann man was bevorzugen sollte
- 51:02und auch gesagt, dass man aber beide auch verwenden kann um
- 51:05Sachen umzusetzen und deswegen würde ich sagen Fabi, Danke für
- 51:09den Talk war n sehr cooles Thema was du so mitgebracht hast.
- 51:13Ich fand es auch sehr spannend da jetzt noch mal so wirklich
- 51:15ausführlich drüber nachzudenken und du, liebe Zuhörer, liebe
- 51:18Zuhörer, was sind denn deine Erfahrungen damit?
- 51:21Das würde uns brennend interessieren, hast du mit
- 51:24beiden Ansätzen gute Erfahrungen gemacht oder schlechte oder
- 51:26bevorzugt? Bevorzugst du einen Fall?
- 51:29Besonders gegenüber dem anderen. Ja, bist du Team Microservices
- 51:34Team Microservices oder Team Monolith?
- 51:37Lass es uns wissen, schreib uns die Mail zum Podcast findest du
- 51:41in den Shownotes auch alle anderen Plattformen?
- 51:43Meld dich auf dem Kanal deiner Wahl, wir werden die Antworten
- 51:45wir freuen uns über jede Nachricht, ansonsten Tausch dich
- 51:50gerne auch auf n Discord mit unserer Community aus, das sind
- 51:53immer so coole Themen worüber man diskutieren kann, da freuen
- 51:55sich die Leute die schon da sind, da bin ich mir sicher.
- 51:58Wir sind ne super entspannte Runde.
- 52:00Ihr seid alle herzlich eingeladen und wenn dir der
- 52:04Podcast gefällt, lass auch gerne ne Bewertung da, das hilft uns
- 52:07ungemein und ansonsten würde ich sagen, hören wir uns alle in der
- 52:12nächsten Folge wieder, habt ne gute Zeit bis dahin ciao ciao
- 52:16deine Coding Bodys gemeinsam besser.