Kafka The Definitive Guide

Author: Neha Narkhede
Publisher: "O'Reilly Media, Inc."
ISBN: 9781491936139
Release Date: 2017-08-31
Genre: COMPUTERS

Every enterprise application creates data, whether it’s log messages, metrics, user activity, outgoing messages, or something else. And how to move all of this data becomes nearly as important as the data itself. If you’re an application architect, developer, or production engineer new to Apache Kafka, this practical guide shows you how to use this open source streaming platform to handle real-time data feeds. Engineers from Confluent and LinkedIn who are responsible for developing Kafka explain how to deploy production Kafka clusters, write reliable event-driven microservices, and build scalable stream-processing applications with this platform. Through detailed examples, you’ll learn Kafka’s design principles, reliability guarantees, key APIs, and architecture details, including the replication protocol, the controller, and the storage layer. Understand publish-subscribe messaging and how it fits in the big data ecosystem. Explore Kafka producers and consumers for writing and reading messages Understand Kafka patterns and use-case requirements to ensure reliable data delivery Get best practices for building data pipelines and applications with Kafka Manage Kafka in production, and learn to perform monitoring, tuning, and maintenance tasks Learn the most critical metrics among Kafka’s operational measurements Explore how Kafka’s stream delivery capabilities make it a perfect source for stream processing systems

Microservices

Author: Sam Newman
Publisher: MITP-Verlags GmbH & Co. KG
ISBN: 9783958450837
Release Date: 2015-07-06
Genre: Computers

Feingranulare Systeme mit Microservices aufbauen Design, Entwicklung, Deployment, Testen und Monitoring Sicherheitsaspekte, Authentifizierung und Autorisierung Verteilte Systeme haben sich in den letzten Jahren stark verändert: Große monolithische Architekturen werden zunehmend in viele kleine, eigenständige Microservices aufgespalten. Aber die Entwicklung solcher Systeme bringt Herausforderungen ganz eigener Art mit sich. Dieses Buch richtet sich an Softwareentwickler, die sich über die zielführenden Aspekte von Microservice-Systemen wie Design, Entwicklung, Testen, Deployment und Monitoring informieren möchten. Sam Newman veranschaulicht und konkretisiert seine ganzheitliche Betrachtung der grundlegenden Konzepte von Microservice-Architekturen anhand zahlreicher praktischer Beispiele und Ratschläge. Er geht auf die Themen ein, mit denen sich Systemarchitekten und Administratoren bei der Einrichtung, Verwaltung und Entwicklung dieser Architekturen in jedem Fall auseinandersetzen müssen. Aus dem Inhalt: Vorteile von Microservices Gestaltung von Services Ausrichtung der Systemarchitektur an der Organisationsstruktur Möglichkeiten zur Integration von Services Schrittweise Aufspaltung einer monolithischen Codebasis Deployment einzelner Microservices mittels Continuous Integration Testen und Monitoring verteilter Systeme Sicherheitsaspekte Authentifizierung und Autorisierung zwischen Benutzer und Service bzw. zwischen Services untereinander Skalierung von Microservice-Architekturen »Microservice-Architekturen besitzen viele interessante Eigenschaften, allerdings sind bei der Umstellung so einige Fallstricke zu beachten. Dieses Buch wird Ihnen helfen herauszufinden, ob Microservices für Ihre Zwecke geeignet sind und zeigt Ihnen, wie Sie die Fallstricke umgehen können.« Martin Fowler, Chief Scientist, ThoughtWorks

Untersuchung und Bewertung cloud basierter Streaming Technologien zur Echtzeit Datenanalyse

Author: Christian Voigtländer
Publisher: diplom.de
ISBN: 9783961162277
Release Date: 2018-04-10
Genre: Computers

Das Internet sorgt für ein rasches Wachstum von verfügbaren Daten. Dem „EMC/IDC Digital Universe“ Report nach verdoppelt sich die Menge an Daten alle zwei Jahre. Es werden täglich eine Millionen Uber-Fahrten gebucht, monatlich 10 Milliarden Stunden Netflix-Videos konsumiert und jährlich eine Trillion US-Dollar auf E-Commerce-Webseiten ausgegeben. Dabei spielt der Umgang mit diesen Daten eine große Rolle für den Erfolg dieser Unternehmen. Insbesondere die Echtzeit-Datenanalyse hilft den Unternehmen, Kundenwünsche schnellstmöglich zu erkennen und diese auszuschöpfen. Ein weiterer Faktor des immensen Datenwachstums sind Web 2.0 Plattformen. In diesem Bereich sind die Benutzer der treibende Faktor für die stetig wachsende Datenflut dieser Plattformen, indem sie Beiträge veröffentlichen, Fotos teilen und Videos streamen. Beispielsweise sammelt Twitter 8 Terabyte, Facebook 500 Terabyte und Google 20 Terabyte an benutzergenerierten Daten täglich. Inhalte sind nicht länger statisch, sondern dynamisch. Diese Datenflut gilt es, zu kontrollieren. Unmittelbar nachdem Daten entstehen, haben sie den höchsten Wert. In der heutigen Zeit wird erwartet, Ergebnisse in schnellstmöglicher Zeit bereitzustellen. Analytische Prozesse werden in Minuten, Sekunden oder Bruchteilen von Sekunden durchgeführt, welche früher Monate, Tage oder Stunden gebraucht hätten. Aufgrund dieser Evolution der stetig neu entstehenden Daten müssen Veränderungen in der Art und Weise, wie diese Daten empfangen, transportiert, verarbeitet und analysiert werden, stattfinden. Die Technologie, die Echtzeit-Datenanalysen durchführt, wird in der vorliegenden Arbeit genauer betrachtet.

Spring im Einsatz

Author: Craig Walls
Publisher: Carl Hanser Verlag GmbH Co KG
ISBN: 9783446429468
Release Date: 2012-01-12
Genre: Computers

SPRING IM EINSATZ // - Spring 3.0 auf den Punkt gebracht: Die zentralen Konzepte anschaulich und unterhaltsam erklärt. - Praxis-Know-how für den Projekteinsatz: Lernen Sie Spring mit Hilfe der zahlreichen Codebeispiele aktiv kennen. - Im Internet: Der vollständige Quellcode für die Applikationen dieses Buches Das Spring-Framework gehört zum obligatorischen Grundwissen eines Java-Entwicklers. Spring 3 führt leistungsfähige neue Features wie die Spring Expression Language (SpEL), neue Annotationen für IoC-Container und den lang ersehnten Support für REST ein. Es gibt keinen besseren Weg, um sich Spring anzueignen, als dieses Buch - egal ob Sie Spring gerade erst entdecken oder sich mit den neuen 3.0-Features vertraut machen wollen. Craig Walls setzt in dieser gründlich überarbeiteten 2. Auflage den anschaulichen und praxisorientierten Stil der Vorauflage fort. Er bringt als Autor sein Geschick für treffende und unterhaltsame Beispiele ein, die das Augenmerk direkt auf die Features und Techniken richten, die Sie wirklich brauchen. Diese Auflage hebt die wichtigsten Aspekte von Spring 3.0 hervor: REST, Remote-Services, Messaging, Security, MVC, Web Flow und vieles mehr. Das finden Sie in diesem Buch: - Die Arbeit mit Annotationen, um die Konfiguration zu reduzieren - Die Arbeit mit REST-konformen Ressourcen - Spring Expression Language (SpEL) - Security, Web Flow usw. AUS DEM INHALT: Spring ins kalte Wasser, Verschalten von Beans, Die XML-Konfiguration in Spring minimalisieren, Aspektorientierung, Zugriff auf die Datenbank, Transaktionen verwalten, Webapplikationen mit Spring MVC erstellen, Die Arbeit mit Spring Web Flow, Spring absichern, Die Arbeit mit Remote-Diensten, Spring und REST, Messaging in Spring, Verwalten von Spring-Beans mit JMX

Big Data in der Praxis

Author: Jonas Freiknecht
Publisher: Carl Hanser Verlag GmbH Co KG
ISBN: 9783446441774
Release Date: 2014-10-01
Genre: Computers

BIG DATA IN DER PRAXIS // - Für Analysten, BI-Verantwortliche, Data-Scientists, Consultants - Auf der DVD finden Sie: 18 fertige Projekte, die im Buch Schritt für Schritt entwickelt werden; Videotutorials u.a. zur Installation von Hadoop, Hive, HBase (Gesamtdauer: 80 Min.); Testdatensätze für die Wissensdatenbank Dieses Buch bringt Ihnen das Thema Big Data auf sehr praktische Art und Weise nahe. Sie lernen Technologien, Tools und Methoden kennen, entwickeln Beispiel-Lösungen und bekommen aufgezeigt, wie Sie bestehende Systeme vorausschauend auf die mit dem Big Data-Trend einhergehenden Herausforderungen vorbereiten. Dazu werden Sie neben den bekannten Apache-Projekten wie Hadoop, Hive und HBase auch einige weniger bekannte Frameworks wie Apache UIMA oder Apache OpenNLP kennenlernen, um gezielt die Verarbeitung unstrukturierter Daten zu behandeln. Alle hier verwendeten Software-Komponenten stehen im vollen Umfang kostenlos im Internet zur Verfügung. Gemeinsam mit dem Autor werden Sie ganz konkret Schritt für Schritt viele kleinere Projekte aufbauen bis hin zu einer fertigen und funktionstüchtigen Implementierung. Ziel des Buches ist es, Sie auf den Effekt und den Mehrwert der neuen Möglichkeiten aufmerksam zu machen, sodass Sie diese konstruktiv in Ihr Unternehmen tragen können und für sich und Ihre Kollegen somit ein Bewusstsein für den Wert Ihrer Daten schaffen. AUS DEM INHALT // Einführung rund um Big Data // Hadoop installieren, konfigurieren & bedienen // HDFS, Map-Reduce & YARN: Daten speichern und verarbeiten // Hadoop-Ecosystem: Überblick über dessen Komponenten // Einführung in NoSQL // HBase installieren, einrichten & auf Daten zugreifen // Data-Warehousing mit Apache Hive // HiveQL als Abfragesprache, Hive Security, Hive & JDBC // Datenimport aus relationalen Datenbanken mit Sqoop // Big Data-Visualisierung: Diagrammarten, Tipps & Trends // Visualisierungs-Frameworks im Vergleich // D3.js: Entwicklung einiger Beispieldiagramme // Entwicklung einer abschließenden Big Data-Analyse-Lösung // Troubleshooting für die Arbeit mit Hadoop, Hive & HBase

Docker

Author: Adrian Mouat
Publisher: dpunkt.verlag
ISBN: 9783960880370
Release Date: 2016-09-30
Genre: Computers

Docker-Container bieten eine einfache, schnelle und robuste Möglichkeit, Software zu entwickeln, zu verteilen und laufen zu lassen – besonders in dynamischen und verteilten Umgebungen. Mit diesem praktischen Leitfaden lernen Sie, warum Container so wichtig sind, was durch den Einsatz von Docker möglich ist und wie Sie es in Ihren Entwicklungsprozess einbinden. Dieses Buch ist aktuell zu Docker 1.12 und ideal für Entwickler, Operations-Techniker und Administratoren – insbesondere, wenn Sie einen DevOps-Ansatz verfolgen. Es nimmt Sie mit auf eine Reise von den Grundlagen bis zum Ausführen Dutzender Container auf einem Multi-Host-System mit Networking und Scheduling. Im Verlauf des Buches erfahren Sie, welche Schritte zum Entwickeln, Testen und Bereitstellen einer Webanwendung mit Docker notwendig sind. • Beginnen Sie mit Docker, indem Sie eine einfache Webanwendung entwickeln und bereitstellen. • Nutzen Sie Techniken aus dem Continuous Deployment, um Ihre Anwendung mehrmals pro Tag in die Produktivumgebung zu bringen. • Lernen Sie Optionen und Techniken kennen, um mehrere Container gleichzeitig zu protokollieren und zu überwachen. • Befassen Sie sich mit dem Erkennen im Netzwerk und mit Services: Wie finden sich Container gegenseitig und wie verbinden Sie sie? • Orchestrieren und clustern Sie Container, um Load Balancing zu ermöglichen, Ihr System skalierbar zu machen sowie Failovers und Scheduling umzusetzen. • Sichern Sie Ihr System, indem Sie den Prinzipien der "Defense in Depth" und dem Konzept der geringsten Rechte folgen. • Setzen Sie Container ein, um eine Microservices-Architektur aufzubauen.

Mit Java programmieren lernen f r Dummies

Author: Barry A. Burd
Publisher: John Wiley & Sons
ISBN: 9783527691890
Release Date: 2015-03-31
Genre: Computers

Steigen Sie mit diesem Buch in die Welt des Programmierens ein und zwar mit der beliebten Programmiersprache Java! Schritt fï¿1⁄2r Schritt werden Sie mit den Grundlagen, wie zum Beispiel Variablen, Schleifen und objektorientierter Programmierung, vertraut gemacht, probieren viele anschauliche Beispiele aus und schreiben Ihr erstes eigenes Programm. Dieses Buch steht Ihnen bei allen Herausforderungen jederzeit mit hilfreichen Tipps und Lï¿1⁄2sungsvorschlï¿1⁄2gen zur Seite, sodass Sie fï¿1⁄2r Ihren Weg zum Programmierer optimal gerï¿1⁄2stet sind!

Clean Architecture

Author: Robert C. Martin
Publisher: MITP-Verlags GmbH & Co. KG
ISBN: 9783958457263
Release Date: 2018-02-20
Genre: Computers


Datenintensive Anwendungen designen

Author: Martin Kleppmann
Publisher: O'Reilly
ISBN: 9783960101840
Release Date: 2018-11-26
Genre: Computers

Daten stehen heute im Mittelpunkt vieler Herausforderungen im Systemdesign. Dabei sind komplexe Fragen wie Skalierbarkeit, Konsistenz, Zuverlässigkeit, Effizienz und Wartbarkeit zu klären. Darüber hinaus verfügen wir über eine überwältigende Vielfalt an Tools, einschließlich relationaler Datenbanken, NoSQL-Datenspeicher, Stream-und Batchprocessing und Message Broker. Aber was verbirgt sich hinter diesen Schlagworten? Und was ist die richtige Wahl für Ihre Anwendung?In diesem praktischen und umfassenden Leitfaden unterstützt Sie der Autor Martin Kleppmann bei der Navigation durch dieses schwierige Terrain, indem er die Vor-und Nachteile verschiedener Technologien zur Verarbeitung und Speicherung von Daten aufzeigt. Software verändert sich ständig, die Grundprinzipien bleiben aber gleich. Mit diesem Buch lernen Softwareentwickler und -architekten, wie sie die Konzepte in der Praxis umsetzen und wie sie Daten in modernen Anwendungen optimal nutzen können.Inspizieren Sie die Systeme, die Sie bereits verwenden, und erfahren Sie, wie Sie sie effektiver nutzen könnenTreffen Sie fundierte Entscheidungen, indem Sie die Stärken und Schwächen verschiedener Tools kennenlernenSteuern Sie die notwenigen Kompromisse in Bezug auf Konsistenz, Skalierbarkeit, Fehlertoleranz und KomplexitätMachen Sie sich vertraut mit dem Stand der Forschung zu verteilten Systemen, auf denen moderne Datenbanken aufbauenWerfen Sie einen Blick hinter die Kulissen der wichtigsten Onlinedienste und lernen Sie von deren Architekturen

Kubernetes

Author: Kelsey Hightower
Publisher: dpunkt.verlag
ISBN: 9783960884293
Release Date: 2018-01-24
Genre: Computers

Es heißt, dass Google über zwei Milliarden Anwendungscontainer pro Woche deployt. Wie ist das möglich? Diese Frage hat Google mit einem Projekt namens Kubernetes beantwortet, einem Cluster-Orchestrierer, der das Bauen, Deployen und Warten skalierbarer, verteilter Systeme in der Cloud radikal vereinfacht. Dieser praktische Leitfaden zeigt Ihnen, wie Kubernetes und die Container-Technologie Ihnen helfen können, in Bezug auf Schnelligkeit, Agilität, Zuverlässigkeit und Effizienz in ganz neue Bereiche vorzudringen. Die Autoren Kelsey Hightower, Brendan Burns und Joe Beda haben bei Google und in anderen Firmen mit Kubernetes gearbeitet und erklären Ihnen, wie sich dieses System in den Lebenszyklus einer verteilten Anwendung einfügt. Sie werden lernen, wie Sie Tools und APIs einsetzen, um skalierbare, verteilte Systeme zu automatisieren – egal ob es sich um Online-Services, Systeme zum maschinellen Lernen oder ein Cluster aus Raspberry Pis handelt. Lernen Sie die Herausforderungen verteilter Systeme kennen, die Sie mit Kubernetes angehen können.Tauchen Sie ein in die containerisierte Anwendungsentwicklung und nutzen Sie dabei zum Beispiel Docker-Container.Erstellen Sie Container im Docker-Image-Format mit Kubernetes und lassen Sie sie über die Docker-Runtime ausführen.Begutachten Sie die zentralen Konzepte und API-Objekte von Kubernetes, die notwendig sind, um Anwendungen produktiv laufen zu lassen.Rollen Sie neue Softwareversionen zuverlässig ohne Downtime oder Fehler aus.Lernen Sie aus Beispielen zum Entwickeln und Deployen realer Anwendungen in Kubernetes.

API Design

Author: Kai Spichale
Publisher: dpunkt.verlag
ISBN: 9783960880783
Release Date: 2017-04-12
Genre: Computers

Application Programming Interfaces (APIs) sind allgegenwärtig, denn Softwareentwickler benutzen sie nicht nur ständig, sondern entwerfen sie häufig auch. Dieses Buch bietet erstmals eine umfassende Anleitung für das vielfältige Thema API-Design. Neben theoretischen Konzepten werden zahlreiche praktische Hinweise und Programmbeispiele für Java-APIs gegeben. Remote APIs in Form von RESTful HTTP, SOAP-Webservices und Messaging, die für moderne Webanwendungen und andere verteilte Systeme enorm wichtig sind, spielen in diesem Buch ebenfalls eine zentrale Rolle. Aus dem Inhalt: - Entwurf leicht benutzbarer APIs - Kompatibilität und Versionierung - Objektkollaboration, Fluent APIs und Thread-Sicherheit - Dokumentation - Skalierbarkeit, Caching - API-Management Nach der erfolgreichen Lektüre dieses Buches kennen Sie die Grundlagen von APIs und sind in der Lage, objektorientierte APIs für Softwarekomponenten und Remote APIs für verteilte Systeme zu entwerfen.