Tech Talk Architektur Dem Software-Hype auf der Spur: Erfolgreicher im Web mit Microservices? 24. Mai 2018 Wer Berge versetzen will, hat zwei Möglichkeiten: ihn Stein für Stein abtragen oder sich genug Muskeln antrainieren, um ihn auf einmal bewegen zu können. Angenommen, vom Versetzen des Berges ist das wirtschaftliche Überleben abhängig: wie wählt man? Mit Bedacht. Und dazu gehört, dass man weiß, worum es geht. Nun sind wir bei CAMAO zwar gerne in den Alpen unterwegs, unsere versetzten Berge beziehen ihre Härte jedoch aus ihrer technischen Komplexität – zum Beispiel als Website für die Silberregion Karwendel. In der Software-Architektur nennen sich die beiden vorgestellten Herangehensweisen Microservice- und Monolith-Architektur. Letzteres hat für Jahrzehnte die Branche dominiert. Microservices hingegen erfreuen sich erst seit ein paar Jahren immer größerer Beliebtheit. Davids gegen Goliath: Microservices und Monolith im Vergleich Die Monolith-Architektur sieht für ein Projekt eine einzige Code-Basis vor. Diese adressiert jeden einzelnen Aspekt des Produkts (bei einer Website z. B. Frontend, Backend, jeweils server- und client-seitig uvm.). Das erleichtert es, produktübergreifende Faktoren wie Sicherheit, Fehlerbehandlung oder Performance zu modifizieren. Kleinere Teams bewahren mit Monolith zudem einfacher den Überblick über ihr Projekt. Dies macht es für fachlich neue Projekte oder Prototyping attraktiv, da linear auf das Ziel hingearbeitet werden kann. Man verliert also weniger Zeit mit dem Aufsetzen einer komplexen Struktur. Die Microservice-Architektur kommt am besten bei sehr komplexen Projekten zur Geltung. Sie teilt ein Projekt in mehrere, auch unabhängig voneinander funktionierende Services auf. Für jeden Service kann so die optimale Herangehensweise gewählt werden. Um z. B. für Big-Data-Projekte riesige Logdateien zu verarbeiten, ist C++ einfach geeigneter als Python. Auch die immer gefragteren Progressive Web Apps profitieren von der Microservice-Architektur, da sie von Haus aus oft viele verschiedene Funktionen beinhalten. Bei der Microservices-Architektur gibt es Ansätze mit einzelnen Repositories (links) und einem zentralen Repository für alle Services (rechts). Quelle: http://blog.shippable.com/our-journey-to-microservices-and-a-mono-repository Die entkoppelte Struktur vereinfacht außerdem die Wiederverwendung einzelner Services im Unternehmen. Spezifische Skalierbarkeit ist ein weiterer Vorteil: Wenn nur ein bestimmter Service konstant unter Strom steht, kann diesem gezielt mehr Power gegeben werden. Natürlich lassen sich auch Monolith-Systeme gut in Module einteilen, oft werden die Grenzen zwischen den Modulen jedoch überschritten. Das kann direkte Fehler – und indirekte an ganz anderen Orten im Code – entstehen lassen. Die striktere Microservices-Architektur entschärft diese Fehlerquelle jedoch. Die Hürde leichtfertig Verbindungen herzustellen, ist hier zu groß. Architektur-Matching: Was passt zum Unternehmen? Die Entscheidung für oder gegen eine Architektur hängt zusätzlich noch vom Unternehmen ab. Microservices lohnen sich besonders mit einer guten Cloud-Infrastruktur: Neue Services lassen sich so kinderleicht ausrollen oder bestehende skalieren. Zudem begünstigt es schnelles Wachstum einer Organisation. Neue Mitarbeiter können einfach an einem isolierten Service arbeiten und müssen nicht direkt den ganzen Monolith verstehen. Zur Veranschaulichung hilft diese Infografik von Martin Fowler, der sich dem Thema bereits in einem eigenen Blogbeitrag gewidmet hat: Quelle: <href="https://martinfowler.com/microservices" target="_blank">Martin Fowler Bei CAMAO sind wir undogmatisch: Für eine Corporate Website zum Beispiel, wo „nur” redaktionell Content verarbeitet wird, generiert eine Microservice-Architektur wenig Mehrwert. Funktionsreiche Web-Applikationen hingegen, wie die von Classic Trader, können von dem Ansatz hingegen stark profitieren. Am besten, Ihr fragt uns einfach direkt unter: hello@camao.one Der Autor Markus Rothenbacher auf
16. Oktober 2019 An introductory series to Marketing Category Subscription in Sitecore Hey Sitecore crowd! Today I want to talk about leveraging the potential of the EXM preference center for the reverse cause: signing up for marketing categories (i. e. newsletters). Tech Talk CMS Sitecore EXM
08. November 2019 CAMAOs allein zu Haus: Wir coden einen Sprachassistenten „Wer nicht mit der Zeit geht, muss mit der Zeit gehen“. Doch wie geht man als Organisation, als Team strukturell und methodisch statt aktionistisch „mit der Zeit“? In einem internen Entwickler-Workshop sind wir dieser Frage auf den Grund gegangen. Tech Talk Web & App Frameworks
18. Juni 2020 Da, wo die wilden Satelliten fliegen: Wetterdaten direkt von der Quelle Was ist cooler als ausgeklügelte Maschinen, die um die Erde kreisen und Informationen sammeln und senden? Wenn man als kleiner Erdling ihre Daten „anzapfen" kann. Tech Talk Web & App