>
Webservices & Microservices & Reactive Streams Webanwendung für Projekte mit großen Datenmengen

Bei der Verarbeitung von Big Data oder Live-Daten (Datenmengen, die fortlaufend eintreffen und deren Größe nicht abzuschätzen ist) bietet sich eine Architektur im Sinne von Reactive Streams an und bringt eine Reihe von Vorteilen mit sich. Die asynchrone Verarbeitung von Datenstreams wird somit möglich ohne die Anwendung zu blockieren. Das ist unter anderem die Grundlage für hochverfügbare Systeme.

Nachrichten-basierte Kommunikation und eine durchgängige asynchrone Vorgehensweise bei der Implementierung führen schließlich zu einer robusten und ansprechbaren Anwendung und Oberfläche für den Nutzer, trotz der Verarbeitung von großen Datenmengen und hohem Nutzeraufkommen. Ein weiterer Vorteil dieser Architektur: Die Anwendung ist jederzeit skalierbar!

Einige Fallbeispiele

Betrachten Sie die folgenden Beispiele. Sicherlich haben Sie schon einige dieser Anwendung selbst verwendet oder kennen ähnliche Online-Anwendungen.

Hoch skalierbare Web-Anwendungen

Bei Projekten mit einem hohen Nutzeraufkommen und Mehrbenutzersystemen sowie der Verarbeitung von Datenstreams ist eine durchgängige Verfügbarkeit wichtig.

Aktuelle Web-Technologien stellen sicher, dass ihre Anwendung immer und unter hoher Last funktioniert. Für hoch skalierbare Web-Anwendungen, bei denen die Performance auch unter großen Lasten gewährleistet werden muss, existieren vielfältige Frameworks und Infrastrukturen. Auch der Umgang mit großen Datenmengen im Sinne von Big Data lässt sich damit bewerkstelligen.

Damit Sie die passende Lösung finden, lassen Sie sich einen Einblick in die verschiedenen Infrastrukturen gewähren, die die Architektur ihrer Software ganz flexibel, modular und skalierbar macht.

Microservices

Bei der Entwicklung von Microservices werden Funktionalitäten einer großen Anwendung in kleine Container verteilt, die eine einzige Verantwortlichkeit übernehmen. Das ermöglicht eine unabhängige Arbeitslast und Portabilität. Jeder Microservice realisiert eine klar abgegrenzte Aufgabe und interagiert mit anderen Services über wohldefinierte Schnittstellen. Schaffen Sie sich somit eine loose gekoppelte Softwareanwendung!

Je kleiner desto besser: Microservices sollen von wenigen Entwicklern in kurzer Zeit umsetzbar sein und sind dadurch schnell ersetzbar beispielsweise, wenn leistungsfähigere Technologien genutzt werden sollen. Die Wartbarkeit steigt, da bei kleinen Services jeder Entwickler noch alles versteht. Steht eine große strukturelle Änderung bevor, kann diese innerhalb von drei bis vier Wochen umgesetzt werden.

Die Implementierung von Microservices wird mit dem Play!-Framework oder dem Spring-Framework umgesetzt. Für die Persistenzsschicht wird je nach Systemanforderung MySQL, MongoDB oder CouchDB eingesetzt. Die Auslieferung erfolgt mit API-Dokumentation. Somit erhalten Sie die konkrete Funktionalität für ihre IT-Infrastruktur und können ihre Unternehmensumwelt über Mircoservices erweitern oder Teile davon ersetzen.

Eventgesteuerte zustandslose Server

Hochverfügbare Systeme sind der neue Standard für Start-Ups, kleine und mittelständische Unternehmen.

Brechen Sie die Grenzen des traditionellen Request-Response Modells und erlauben Sie ihren Workflows dynamisch auf verändernde Unternehmenswelt zu reagieren.

Das Server-Management steht dabei nicht mehr im Vordergrund, wobei sich der Cloud-Service Anbieter automatisch um jegliche Belange kümmert. Der Funktionscode steht somit im Mittelpunkt.

Als cloudbasierte Lösung können sogenannte Function as a Service realisiert werden. Rüsten Sie ihre logischen Funktionalitäten Stück für Stück als Service in der Cloud aus und profitieren Sie von den Vorteilen des Cloud-Anbieters. Dieser sorgt für eine perfekte Skalierung, Caching, Synchronisation und Thread-Sicherheit.

Je nach Anwendungsfall erfolgt die technologische Umsetzung entweder mit dem Spring Stack und Cloud-Anbietern, wie beispielsweise Amazon oder Microsoft, oder ...

Eine weitere Möglichkeit ist die Verwendung der Open Source Cloudplattform Apache OpenWhisk, die verteilte Funktionen ausführt und auf Events reagiert - mit endlosen Skalierungsvolumen. Sie nutzen dafür IBM Bluemix als Provider für ihre Infrastruktur oder lassen Sie sich ihre eigene Cloud-Infrastruktur mit OpenWhisk + Mesos aufbauen.

RESTful Webservice

Schaffen Sie durch einen RESTful Webservice eine webbasierte Schnittstelle ihrer gesamten Anwendung oder Teilen davon, um den Zugriff in beliebigen Programmiersprachen und Endgeräten aus über HTTP zu ermöglichen. Durch das Veröffentlichen der Geschäftsprozesse als Dienst wird ihre Anwendung über eine wohldefinierte Schnittstelle webfähig gemacht. Sie besitzen die Kontrolle über den Webserver in ihrer IT-Infrastruktur, der die Webservices anbietet. Über eine normale HTTP-Authentifizierung oder durch JSON Web Tokens lässt sich zudem eine Authentifizerung für Nutzer einrichten und der Zugriff auf die Dienste einschränken. Diese kann mit einer bestehenden Nutzerdatenbank verknüpft werden.

Für die technologische Realisierung von Webservices sind keine Grenzen gesetzt und können beispielsweise mit PHP Frameworks oder dem Spring Framework umgesetzt werden - je nach Anforderung.

Die Vorteile einer verteilten Architektur

Loose Kooplung
Viele Microservices und Komponenten bilden ein System und kommunizieren über klar definierte Schnittstellen. Ein Austausch oder eine Skalierung ist in relativ kurzer Zeit möglich. Zudem ist eine Microservice-Architektur ausfallsicher.
Anpassungsfähig
Durch abgegrenzte Microservices kann das resultierende System nahezu einfach und schnell an veränderte Unternehmensbedingungen adaptiert werden.
Hohe Kohäsion
Ein Microservice deckt eine konkrete abgegrenzte Aufgabe ab. Die Verantwortlichkeiten sind damit klar getrennt sind, wodurch eine hohe Kohäsion erreicht wird.
Vertikal Skalierbar
Microservices können unabhängig von anderen Komponenten skaliert werden. Das führt zu optimalen Laufzeitverhalten und Beseitigung von Bottlenecks in Bezug auf die Performance. Monolithsche Systeme lassen sich oft nur durch Erhöhung der Rechnerleistung horizontal skalieren.

Erhalten Sie noch heute ihr Angebot

Tragen Sie ihre E-Mail-Adresse ein und Sie werden zum Kontaktformular weitergeleitet

All product names, logos, and brandsare property of their respective owners. All company, product and service names used in this website are for identification purposes only. | Android is a trademark of Google Inc. | BOMBERMAN is a trademark of Konami Digital Entertainment Co., Ltd.
Back to Top