Java Magazin 5.15

Umfang: 132 Seiten
Erhältlich ab: 08.04.2015
Autoren: Wajdi Almir Ahmad, Joachim Arrasz, Marc van den Bogaard, Uwe Friedrichsen, Martin Gutenbrunner, Arno Haase, Roland Huß, Thomas Jaggi, Thorben Janssen, Tobias Kraft, Arne Limburg, Thomas Mauch, Christian Meder, Christian Mennerich, Sascha Möllering, Nils Preusker, Alois Reitbauer, Roland Rickborn, Lars Röwekamp, Peter Roßbach, Daniel Takai, Stefan Toth, Anatole Tresch, Stefan Ullrich, Eberhard Wolff
Sie werden zu unserer Partnerseite kiosk.entwickler.de weitergeleitet
Magazin
News
Bücher
Continuous Delivery
Java Core
Collections aus dem Baukasten
Key Collections: Ein Baukasten für Java Collections
Thomas Mauch
High-Performance-Computing mit Java
Parallelisierung auf der Grafikkarte mit JNI, Rootbeer und CUDA
Marc van den Bogaard
Kolumne: Java-Trickkiste
Class Loading
Arno Haase
Titelthema
Damit es auch morgen noch läuft
Eine kurze Einführung in Resilient Software Design
Uwe Friedrichsen
Keine Angst vor Chaos
Netflix: Resilience konsequent zu Ende gedacht
Stefan Toth
Resilience mit Spring Cloud
Integration von Netflix Hystrix und Turbine
Eberhard Wolff
„Die normale Betriebsart heißt: teilweiser Ausfall.“
Michael Nygard über Resilient Software Design
Architektur
Nachhaltig – oder nur langlebig?
Eine Replik auf Wolfgang Pleus’ Artikelserie „Sustainable Service Design“
Nils Preusker
Enterprise
Kolumne: EnterpriseTales
Reduce to the Max: Microservices
Lars Röwekamp und Arne Limburg
Tools
Kolumne: Docker rockt Java
Docker mit Maven steuern
Roland Huß und Peter Roßbach
Testen mit Selenium
Teil 2: Selenium im Grid parallelisieren
Roland Rickborn und Tobias Kraft
Datenbanken
Eine kleine Reise durch NoSQL
Teil 1: Relationale Datenbanksysteme
Christian Mennerich und Joachim Arrasz
Agile
Konfiguration in Java
Einführung in Apache Tamaya
Anatole Tresch und Thorben Janssen
Web
gulp
Inkrementelles Frontend-Build-System auf Node.js-Basis
Daniel Takai und Thomas Jaggi
Vaadin und JavaScript
Vaadin-Widgets mit JavaScript erweitern
Wajdi Almir Ahmad
„Loserere“ Kopplung
Dynamische Schnittstellenkommunikation mit JSON und REST
Stefan Ullrich
Cloud Computing
Gesundheitscheck für Cloud-Apps
Architektur-Reviews in hoch dynamischen Anwendungen
Alois Reitbauer und Martin Gutenbrunner
Android360
Die wunderbare Reise des Androiden Lollipop
Release auf Raten: Android 5 Lollipop und seine Nexus-Geräte
Christian Meder
The Art of Runtime Development
ART vs. Dalvik VM
Lars Röwekamp und Arne Limburg
Fehler passieren
In den Anfängen des Internets machten Firmen wie Sun Microsystems, IBM, aber auch Yahoo! als Taktgeber technischer Innovation und als Orte „wahrhaftiger Ingenieurskultur“ auf sich aufmerksam.
Nach dem Platzen der New-Economy-Blase folgte dann das Google-Jahrzehnt, in dem technische Exzellenz, modernste Geek-Kultur (vom kostenlosen Bioessen bis hin zur berühmten „20 Percent Time“) und höchste Sympathiewerte in der Tech-Szene den Internetgiganten aus Mountain View auszeichneten.
Möglicherweise befinden wir uns heute mitten in einem „Netflix-Zeitalter“, zumindest wenn man über das Thema Softwarearchitektur in extrem skalierbaren Systemen nachdenkt. So ist der Videostreamer, dem man nachsagt, für ein Drittel des gesamten Downstream-Internettraffics in Nordamerika verantwortlich zu sein, Urheber von einer Fülle zukunftsweisender Konzepte für den Bau von Software – womit wir bei unserem Titelthema wären.
In Zeiten digitaler Geschäftsmodelle ist die Verfügbarkeit eines Systems von essenzieller Bedeutung für den Erfolg von Unternehmen. Da es aber deren Natur mit sich bringt, dass die entsprechenden Systeme hoch skalierbar und extrem verteilt mit einer Vielzahl externer Abhängigkeiten funktionieren, müssen wir uns eingestehen, dass Fehler unvermeidlich werden.
Wie können wir dann noch für die gebotene Verlässlichkeit sorgen? Bei klassischen Ansätzen der Qualitätssicherung und -optimierung würde man versuchen, die Anlässe für solche Fehler systematisch zu reduzieren oder gar zu eliminieren.
Das Konzept „Resilience“ schlägt da einen anderen Gedanken vor: Es ist etwas fundamental anderes, Fehler als nicht vorgesehene Ausnahme zu betrachten oder aber davon auszugehen, dass Fehler immer passieren können und passieren werden – und von dieser Warte aus nach Wegen zu suchen, die Verfügbarkeit von Systemen zu maximieren. Davon handelt unser Schwerpunkt ab Seite 33.
Wenn man bedenkt, dass das erfolgreichste Netzwerk, das in den vergangenen Jahrzehnten aufgebaut wurde und im Prinzip seit über zwei Jahrzehnten unverändert seinen Dienst tut, das Internet ist, dann ahnt man die Bedeutung des Resilience-Konzepts: Das Netz, vom amerikanischen Militär von Anfang an für den Fall des Ausfalls konzipiert, scheint das stabilste und dauerhafteste zu sein, das die IT je hervor gebracht hat. Es ist resilient.
Sebastian Meyen, Chefredakteur