Eine Microservices-Architektur unterteilt Software-Systeme in eine Vielzahl kleiner Dienste, die unabhängig voneinander in Produktion gebracht werden können. Jedes Team arbeitet dabei an seinen Microservices und ist weitgehend entkoppelt von anderen Teams; das erlaubt eine einfache Skalierung agiler Prozesse. Die Aufteilung in Microservices schützt gegen den Verfall der Architektur, sodass die Systeme auch langfristig wartbar bleiben. Zudem können Legacy-Systeme durch Microservices ergänzt werden, ohne dabei den alten Code zu ändern. Und auch Continuous Delivery ist einfacher umsetzbar. Eberhard Wolff bietet Ihnen in diesem Buch eine umfangreiche Einführung in das Thema Microservices. Dabei geht es u. a. um: - Vor- und Nachteile des Microservice-Ansatzes - Microservices vs. SOA - Die übergreifende Architektur von Microservice-Systemen - Die Architektur einzelner Services - Auswirkungen auf Projektorganisation, Betrieb, Testen und Deployment - Nanoservices Das Buch erläutert technologieneutrale Konzepte und Architekturen, die mit verschiedenen Technologien umgesetzt werden können. Als Beispiel für einen konkreten Technologie-Stack wird Java mit Spring Boot, dem Netflix-Stack und Spring Cloud gezeigt. Anhand von vielen Beispielen und konkreten Szenarien lernen Sie, wie Microservices möglichst gewinnbringend genutzt werden können. Außerdem erhalten Sie Anregungen, das Gelernte durch eigene Experimente weiter zu vertiefen.
Eberhard Wolff Books
Eberhard Wolff is an experienced architect and consultant with over 15 years navigating the nexus of business and technology. As a Fellow at innoQ, he focuses on modern architectures, particularly those incorporating Cloud, Continuous Delivery, DevOps, Microservices, and NoSQL. Wolff is a prolific author and sought-after speaker, having contributed over 100 articles and books, notably exploring the intricacies of Microservices. His expertise lies in crafting robust and forward-thinking technological solutions.






Domain-Driven Design Reference
- 88 pages
- 4 hours of reading
The Domain-Driven Design Reference provides an overview of the fundamental patterns for Domain-Driven Design. Domain-Driven Design is an approach to the architecture and design of software projects that consistently aligns with business requirements.
Continuous Delivery ermöglicht eine schnellere und zuverlässigere Bereitstellung von Software. Im Mittelpunkt steht eine Continuous-Delivery-Pipeline, die den Rollout weitgehend automatisiert und einen reproduzierbaren, risikoarmen Prozess für neue Releases schafft. Dieses Buch führt in den Aufbau einer solchen Pipeline ein und erläutert die verwendbaren Technologien. Zu den behandelten Themen gehören: Infrastruktur-Automatisierung mit Chef, Docker und Vagrant, Automatisierung von Builds und Continuous Integration, sowie verschiedene Testarten wie Akzeptanz- und Kapazitätstests. Zudem wird die Einführung von Continuous Delivery im Unternehmen und die Verbindung zu DevOps thematisiert, einschließlich der Auswirkungen auf die Softwarearchitektur. Ein konkreter Technologie-Stack wird als praktisches Beispiel vorgestellt, ergänzt durch Aufgaben und Vorschläge für Experimente zur Vertiefung des Themas. Nach der Lektüre sind Sie in der Lage, die Vorteile von Continuous Delivery zu erkennen und die nötigen Werkzeuge zur Implementierung in Ihrem Arbeitsumfeld zu nutzen. Die aktualisierte Neuauflage behandelt moderne Werkzeuge wie Docker, Jenkins, Graphite und den ELK-Stack sowie neue Themen wie Docker Compose, Docker Machine, Immutable Server und Microservices, einschließlich der Einführung von Continuous Delivery ohne DevOps.
Microservices haben viele Vorteile: Effizient mehr Features umsetzen, Software schneller in Produktion bringen, Robustheit und einfache Skalierbarkeit zählen dazu. Aber die Implementierung einer Microservices-Architektur und die Auswahl der notwendigen Technologien sind schwierige Herausforderungen. Dieses Buch zeigt Microservices-Rezepte, die Architekten anpassen und zu einem Microservices-Menü kombinieren können. So kann die Implementierung der Microservices individuell auf die Anforderungen im Projekt angepasst werden. Eberhard Wolff führt zunächst in Microservices, Self-contained Systems, Mikro- und Makro-Architektur und die Migration hin zu Microservices ein. Der zweite Teil zeigt die Microservices-Rezepte: Basis-Technologien wie Docker oder PaaS, Frontend-Integration mit Links, JavaScript oder ESI (Edge Side Includes). Es schließen sich asynchrone Microservices mit Apache Kafka oder REST Atom an. Bei den synchronen Ansätzen bespricht das Buch REST mit dem Netflix-Stack, Consul und Kubernetes. Zu jedem Rezept gibt es Hinweise zu Variations- und Kombinationsmöglichkeiten. Der Ausblick greift den Betrieb von Microservices auf und zeigt außerdem, wie der Leser ganz konkret mit Microservices beginnen kann. Das Buch bietet das technische Rüstzeug, um eine Microservices-Architektur umzusetzen. Demo-Projekte und Anregungen für die Vertiefung im Selbststudium runden das Buch ab.
Spring 2
Framework für die Java-Entwicklung - 2, aktualisierte und erweiterte Auflage - Mit einem Geleitwort von Jürgen Höller, Co-Founder Spring Framework
- 380 pages
- 14 hours of reading
Spring ist ein Framework für die Java-SE- und Java-EE-Entwicklung, das auf einfachen Java-Objekten aufbaut und ohne komplexen Infrastrukturcode auskommt. Dies wird durch Dependency Injection und die Unterstützung aspektorientierter Programmierung erreicht. Spring stellt zudem Vereinfachungen für verschiedene Java-EE-APIs (z. B. EJB, JMS, JCA) sowie für Web- und Persistenz-Frameworks zur Verfügung. Das Buch bietet eine umfassende Einführung in das Spring-Framework und behandelt: Dependency Injection Aspektorientierte Programmierung Transaktionen Persistenz (JDBC, iBATIS, Hibernate, JPA) Verteilte Anwendungen (RMI, SOAP, HTTP, EJB) Spring Web Framework Integration in Struts und JSF Acegi-Sicherheitsframework Spring Web Flow Die 2. Auflage wurde vollständig überarbeitet und auf die Version 2.0 von Spring aktualisiert. Sie enthält neue Kapitel zur Java Persistence API (JPA), zu EJB 3 und zu Spring Web Services sowie einen Überblick über Spring OSGi. Der Leser ist nach dem Studium des Buches in der Lage, eigene Anwendungen mit Spring zu entwickeln. Als Vorbild wird im Buch schrittweise eine Beispielanwendung entwickelt.