Hartmut Schlosser

Hartmut Schlosser
Content-Stratege, IT-Redakteur, Storyteller – als Online-Teamlead bei S&S Media ist Hartmut Schlosser immer auf der Suche nach der Geschichte hinter der News. #java #eclipse #devops #machinelearning #seo. Zum Lächeln bringen ihn kreative Aktionen, die den Leser bewegen. @hschlosser
Beiträge dieses Autors

Frohe Weihnachten!

Liebe Leserinnen und Leser, ein ereignisreiches Jahr 2019 liegt hinter uns – vor allem für Sie als Java-Entwickler und -Architekten. Umso mehr haben Sie es sich verdient, nun endlich einmal die Füße hochzulegen und sich in der Weihnachtszeit ausgiebig zu […]

Dynamische Doku: Generierung der Dokumentation einer Microservices-Landschaft

Eine gute Dokumentation gilt als Aushängeschild eines Systems. Doch meist wird sie als notwendiges Übel betrachtet und daher viel zu oft vernachlässigt. Dabei ist eine lückenhafte und veraltete Dokumentation ein risikobehafteter Bereich mit viel Konflikt- und Fehlerpotenzial. Um die Risiken zu vermeiden, haben wir uns auf die Suche nach einer dynamischen und flexiblen Lösung gemacht. Die Ergebnisse stellen wir euch hier vor.

Laufzeitumgebung in AWS Lambda: In wenigen Schritten von der Anwendung zur Ausführung gelangen

AWS Lambda [1] ist ein serverloser Compute-Service, der Code als Reaktion auf Ereignisse ausführt und automatisch die zugrunde liegenden Compute-Ressourcen verwaltet. Lambda unterstützt nativ Java, Go, PowerShell, Node.js, C#, Python und Ruby. Vor kurzem wurde eine interessante neue Funktionalität vorgestellt: ein Runtime API [2], das es ermöglicht, jede andere Programmiersprache im Kontext von Lambda zu nutzen, um eigene Funktionen zu implementieren. Im Folgenden werden wir einen genauen Blick auf AWS Lambda, AWS Lambda Layers [3] und AWS Lambda Custom Runtimes [4] werfen.

Service Mesh: Eine Einführung in die Nutzung von Istio bei Microservices-Architekturen

Je umfangreicher und verflochtener eine Microservices-Architektur wird, desto unübersichtlicher wird es. Man spricht hierbei vom sogenannten Service Mesh. Viele solcher Architekturen werden heutzutage nativ in der Cloud entwickelt. An diejenigen, die diese Microservices dann verwalten sollen, werden besondere Anforderungen gestellt. Das Tool Istio soll dabei behilflich sein, die Übersicht zu behalten.

DDD: Taktisches Design – Architektur innerhalb eines Bounded Context

In Teil 2 dieser Serie [1] haben uns Carola Lilienthal und Michael Plöd gezeigt, wie man eine Domäne in mehrere Bounded Contexts aufteilt. Dabei erhalten wir statt einem großen, schwer verständlichen und schwer wartbaren Domänenmodell nun mehrere, besser handhabbare Domänenmodelle. In diesem Teil der Serie schauen wir darauf, wie man das einzelne Domänenmodell konkret implementieren kann.

Okay Google, hier spricht die Himbeere: Google Home auf dem Raspberry Pi installieren

Sprachassistenten sind heutzutage in aller Munde und werden immer beliebter. Die stylischen kleinen Geräte sind mittlerweile ein ständiger Begleiter im Alltag geworden. Leider sind sie nicht gerade billig. Daher sehen wir uns in diesem Artikel an, wie wir mit einem Raspberry Pi und einigen zusätzlichen Teilen einen eigenen Google Home aufbauen können. Damit es nicht zu theoretisch wird, verwenden wir den Raspberry Google Home, um einen Lüfter zu aktivieren, der uns an heißen Sommertagen ein wenig Abkühlung bringt.

Tekton-Tutorial: Cloudnative Java-Anwendungen mit Tekton entwickeln

Früher war Java in der Lage, die größten Probleme eines Unternehmens mit dem Paradigma „write once, run anywhere“ (WORA) zu bewältigen. Im Zuge von Phänomenen wie Serverless, der Popularität von cloudnativen Anwendungen und der Ausführung von Anwendungen als Linux-Container wurde Java von Sprachen wie Go und Node.js – den Vorreitern für den Aufbau von cloudnative Anwendungen – zurückgedrängt, da diese kleiner, schneller und wohl auch agiler sind.

Hohe Skalierbarkeit, weitreichende Ressourcen: Serverlose Webapplikationen mit AWS

Serverless Computing ist eine aktuelle Entwicklung im Cloud-Computing, bei der die meisten Anbieter mittlerweile auch Function as a Service im Programm haben. Geboten werden skalierbare Webapplikationen, bei denen man sich nicht um Ressourcen kümmern muss. Dieser Artikel ist eine Einführung in AWS Lambda von Amazon Web Services. Das händische Deployment von Lambda-Funktionen ist anspruchsvoll, aber Frameworks wie Chalice für Python-Entwickler nehmen dem Anwender die meisten Handgriffe ab.

Container in den Wolken: Knative: Serverless Workloads auf Kubernetes

„Serverless“ ist heutzutage in aller Munde. Man kann den Begriff mögen oder nicht, wichtig ist, was er beschreibt. Kurz und bündig bedeutet Serverless: Eine Anwendung wird von der Skalierung her fortwährend so angepasst, dass immer die Ressourcen zur Verfügung stehen, die benötigt werden. Das kann dann bedeuten, dass gar keine Ressourcen zur Verfügung stehen. Für den Nutzer hat das den Vorteil, dass er stets nur für die Kapazität bezahlt, die für seine Anwendung benötigt wird. Sind keine Nutzer vorhanden, zahlt er auch nichts.

Des Gophers neue Kleider: Go Modules revisited

Go 1.11 hat einen Paradigmenwechsel eingeleitet. Aus Go Packages werden versionierte Go Modules. Go Modules lösen den GOPATH ab und werden fester Bestandteil der Go Toolchain. Bis jetzt mussten Go Modules explizit aktiviert werden, doch mit Go 1.13 ändert sich das. Ihr lernt, was Go 1.13 in Sachen Go Modules bringt und was sich seit Go 1.11 getan hat.

Sprudelnde Quellen: Knative Eventing

Nachdem wir im vorangegangenen Artikel gesehen haben, wie einfach Applikationen deployt und auf null skaliert werden können, widmen wir uns hier der Frage, welche Möglichkeiten existieren, Knative Services mit Event-Quellen zu verbinden. Knative Serving unterstützt ausschließlich HTTP als Service-Protokoll. Jedoch gibt es eine Vielzahl von Protokollen und Möglichkeiten des Datentransports, die über reine HTTP-Kommunikation hinausgehen. Eine typische Eigenschaft dieser Datenquellen ist auch, dass sie asynchron als Events ausliefern und nicht auf das Ergebnis der Verarbeitung warten. Hier setzt Knative Eventing an, das diese Datenquellen mit Knative Services flexibel verbindet und sich zudem um eine sichere und garantierte Auslieferung dieser Events kümmert.

Serverless-Container in Azure: Docker-Container ohne eigene Server in der Microsoft-Azure-Cloud

Containertechnologie ist ein heißes Thema. Jeder spricht darüber, viele möchten sie einsetzen, erst wenige tun es im größeren Stil. Der Grund für die Zurückhaltung ist meiner Erfahrung nach oft Respekt vor der großen und komplexen Basisinfrastruktur, die man braucht, um eine nennenswerte Anzahl an Containern sicher und hochverfügbar zu betreiben. Muss für den professionellen Einstieg in die Containerwelt erst einmal eine Menge Basiswissen über Registries, Kubernetes und Co. gesammelt werden? Nicht, wenn man sich für Serverless-Containerdienste in der Cloud entscheidet.

Codegenerierung: Generieren oder nicht generieren – das ist hier die Frage!

In diesem Artikel geht es um Codegenerierung, warum wir Code generieren müssen und wie es funktioniert. Zunächst möchte ich allgemein beschreiben, warum die Generierung von Code notwendig ist, und auch ein bisschen Theorie einfließen lassen (aber nicht zu viel). Außerdem geht es um die verschiedenen Phasen der Softwareentwicklung, in denen der Quellcode programmatisch generiert werden kann, und ich vergleiche die verschiedenen Ansätze. Nicht zuletzt gehe ich auf die Architektur und die Idee hinter einem spezifischen Tool ein, das in einer bestimmten Phase Code generiert.

Mobile Payment: Die Zukunft des Bezahlens

Obwohl Deutschland immer noch ein Bargeldland ist, tut sich einiges im Bereich Mobile Payment. Der folgende Artikel gibt einen Überblick über den aktuellen Stand des mobilen Bezahlens in Deutschland und darüber, welche Innovationen wir in Zukunft in diesem Bereich erwarten können.

Mit AWS Lambda zur Multicloud: Function as a Service mit AWS Lambda und Knative

Viele Unternehmen werden zukünftig versuchen, ihre IT-Infrastruktur mit Hilfe der Cloud wachsen zu lassen oder gar komplett in die Cloud zu verlagern. Größere Unternehmen fordern häufig die Multicloud. Im Hinblick auf Serverless gibt es einige Möglichkeiten, einen Mulicloudbetrieb zu erreichen. Mittels AWS Lambda lässt sich eine Function zur Verfügung stellen und das Ganze mit Knative cloudunabhängig machen.