PaaS - Die wichtigsten Java Clouds auf einen Blick: Die wichtigsten Java Clouds auf einen Blick
Von Bernhard Löwenstein, Stephan Müller, Eberhard Wolff und
()
Über dieses E-Book
welche PaaS-Lösungen gibt es und wie erleichtern sie dem Entwickler konkret das Leben? Dieser Shortcut stellt die wichtigsten PaaS-Technologien für Java-Entwickler vor und dabei werden die Vor- und Nachteile herausgearbeitet. So werden Leser nicht nur in der Einarbeitung in die Technologien, sondern auch bei der Technologieauswahl unterstützt.
Mehr von Bernhard Löwenstein lesen
shortcuts
Ähnlich wie PaaS - Die wichtigsten Java Clouds auf einen Blick
Titel in dieser Serie (100)
Einstieg in Google Go Bewertung: 0 von 5 Sternen0 BewertungenIT Wissensmanagement: Theorie und Praxis Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Bewertung: 0 von 5 Sternen0 BewertungenAlgorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Bewertung: 0 von 5 Sternen0 BewertungenSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Bewertung: 0 von 5 Sternen0 BewertungenÜberzeugende Präsentationen: Konzeption, Technik und Design Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Executive Briefing Bewertung: 0 von 5 Sternen0 BewertungenQualitätssicherung mit JavaScript und PHP Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Strategie und Planung Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Technologiegrundlagen Bewertung: 0 von 5 Sternen0 BewertungenJava EE Security Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenZend Framework 2: Für Einsteiger und Umsteiger Bewertung: 0 von 5 Sternen0 BewertungenUX Design für Tablet-Websites: Ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Bewertung: 0 von 5 Sternen0 BewertungenNFC: Near Field Communication für Android-Entwickler Bewertung: 5 von 5 Sternen5/5JavaScript auf dem Server Bewertung: 0 von 5 Sternen0 BewertungenHTML5 Security Bewertung: 0 von 5 Sternen0 BewertungenHTML5 für Mobile Web Bewertung: 0 von 5 Sternen0 BewertungenAmazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Bewertung: 0 von 5 Sternen0 BewertungenMobile Business: Was Entscheider morgen wissen müssen Bewertung: 0 von 5 Sternen0 BewertungenC++: Kurzportträt einer zeitlosen Sprache Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Management Bewertung: 0 von 5 Sternen0 BewertungenApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Bewertung: 0 von 5 Sternen0 BewertungenGeolocation mit PHP: Foursquare-API, Google Places & Qype Bewertung: 0 von 5 Sternen0 BewertungenWebentwicklung mit dem Play Framework Bewertung: 0 von 5 Sternen0 BewertungenBPM: Strategien und Anwendungsfälle Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnliche E-Books
Ihr Weg in die Cloud: Ratgeber zur sicheren Migration Bewertung: 0 von 5 Sternen0 BewertungenCloud Computing Grundlagen: Technisch / rechtlich / wirtschaftlich und architekturell Bewertung: 0 von 5 Sternen0 BewertungenMicroservices: Der Hype im Realitätscheck Bewertung: 0 von 5 Sternen0 BewertungenAdministrator Praxis - Kleine Windows Netzwerke Bewertung: 0 von 5 Sternen0 BewertungenBig Data, Fast Data Bewertung: 0 von 5 Sternen0 BewertungenMicrosoft Azure: Cloud Entwicklung für lokale Applikationen Bewertung: 0 von 5 Sternen0 BewertungenCloud Computing Bewertung: 0 von 5 Sternen0 BewertungenServer-Infrastrukturen mit Microsoft Windows Server Technologien: Alle Themen für das Microsoft Seminar und die Zertifizierungsprüfung MOC 20413 Bewertung: 0 von 5 Sternen0 BewertungenWebanwendungen erstellen mit Vue.js: MVVM-Muster für konventionelle und Single-Page-Webseiten Bewertung: 0 von 5 Sternen0 BewertungenSQL Server 2014: Ein Blick in die Datenzukunft Bewertung: 0 von 5 Sternen0 BewertungenServerless Computing in der AWS Cloud Bewertung: 0 von 5 Sternen0 BewertungenApache Tamaya: Einstieg in die Konfiguration in Java Bewertung: 0 von 5 Sternen0 BewertungenDocker und die Containerwelt: Einstieg und Expertentipps rund um Docker-Container Bewertung: 1 von 5 Sternen1/5Amazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenVMware vRealize Automation - Das Praxisbuch: Cloud-Management für den Enterprise-Bereich Bewertung: 0 von 5 Sternen0 BewertungenVerteilte Systeme mit Kubernetes entwerfen: Patterns und Prinzipien für skalierbare und zuverlässige Services Bewertung: 0 von 5 Sternen0 BewertungenCloud Computing Anbietervergleich: Amazon / Microsoft / Google & Co Bewertung: 0 von 5 Sternen0 BewertungenStructr: Quelloffenes Daten-CMS auf Neo4j-Basis Bewertung: 0 von 5 Sternen0 BewertungenVue.js für alle: Wissenswertes für Einsteiger und Experten Bewertung: 0 von 5 Sternen0 BewertungenCDI - Dependency Injection in Java EE 7: Dependency Injection in Java EE 7 Bewertung: 0 von 5 Sternen0 BewertungenDie Serverwelt von Node.js Bewertung: 0 von 5 Sternen0 BewertungenImplementierung von Lizenzmodellen in .NET Bewertung: 0 von 5 Sternen0 BewertungenDatenschutz Cloud-Computing: Ein Handbuch für Praktiker - Leitfaden für IT Management und Datenschutzbeauftragte Bewertung: 0 von 5 Sternen0 BewertungenMicroservices: Grundlagen flexibler Softwarearchitekturen Bewertung: 0 von 5 Sternen0 BewertungenKubernetes Patterns: Wiederverwendbare Muster zum Erstellen von Cloud-nativen Anwendungen Bewertung: 0 von 5 Sternen0 BewertungenDNX: Grundlagen, Design und Compile Time Bewertung: 0 von 5 Sternen0 BewertungenCloud Computing: Praxisratgeber und Einstiegsstrategien Bewertung: 0 von 5 Sternen0 BewertungenOSGi-Entwicklung Bewertung: 0 von 5 Sternen0 BewertungenMicroservices-Architektur: Patterns in Spring implementieren Bewertung: 0 von 5 Sternen0 BewertungenAgiles Projektmanagement: Scrum für Einsteiger Bewertung: 0 von 5 Sternen0 Bewertungen
Informationstechnologie für Sie
Zertifizierung für Softwarearchitekten: Ihr Weg zur iSAQB-CPSA-F-Prüfung Bewertung: 0 von 5 Sternen0 BewertungenKnigge für Softwarearchitekten. Reloaded Bewertung: 0 von 5 Sternen0 BewertungenErfolgreich bewerben in der IT - die besten Praxistipps von A wie (Anschreiben) bis Z (wie Zeugnis) Bewertung: 0 von 5 Sternen0 BewertungenBlockchain: Praktische Anwendungen, Praktisches Verständnis Bewertung: 0 von 5 Sternen0 BewertungenAndroid-Entwicklung für Einsteiger - 20.000 Zeilen unter dem Meer: 2. erweiterte Auflage Bewertung: 0 von 5 Sternen0 BewertungenAgiles Requirements Engineering und Testen Bewertung: 0 von 5 Sternen0 BewertungenKompaktes Managementwissen: Die Grunstruktur agiler Prozesse Bewertung: 0 von 5 Sternen0 BewertungenEinplatinencomputer - ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenBusiness-Intelligence-Lösungen für Unternehmen Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für PaaS - Die wichtigsten Java Clouds auf einen Blick
0 Bewertungen0 Rezensionen
Buchvorschau
PaaS - Die wichtigsten Java Clouds auf einen Blick - Bernhard Löwenstein
Herausgegeben vom Javamagazin
PaaS
Die wichtigsten Java-Clouds auf einen Blick
ISBN: 978-3-86802-462-3
© 2013 entwickler.press
Ein Imprint der Software & Support Media GmbH
1 Java in der Cloud
Die nächste Plattform für Ihre Anwendung?
Gerade mithilfe von PaaS-Umgebungen können Anwendungen sehr einfach in die Cloud gebracht werden. Aber was sind PaaS-Lösungen überhaupt und wie erleichtern sie dem Entwickler das Leben? Sollten Sie sich jetzt mit diesem Thema auseinander setzen? Als Einleitung stellt dieses erste Kapitel die Konzepte von Cloud und vor allem PaaS genauer vor.
Eine Anwendung in Produktion zu bringen, ist ein kompliziertes Unterfangen: Server müssen gekauft werden, darauf muss ein Betriebssystem installiert und konfiguriert werden – sowie Application Server, Datenbanken und weitere Infrastruktur. Das ist aufwändig und dauert lange – nicht selten Monate. Recht leicht schleichen sich dabei auch Fehler ein. Dieser Prozess muss dann auch noch mehrfach durchlaufen werden: Neben der Produktionsumgebung benötigt ein Entwicklerteam auch Test- und Staging-Umgebungen – und die sollten möglichst identisch zur Produktionsumgebung sein. Oft gibt es aber subtile Unterschiede, die dann die Fehlersuche richtig interessant machen. Und natürlich gibt es immer mindestens eine Umgebung weniger, als benötigt wird. PaaS-Lösungen bieten eine vollständige Umgebung schlüsselfertig an. Alle so erzeugten Umgebungen sind garantiert identisch – und für eine neue Umgebung reicht ein Maus-Klick. Und zusätzlich lösen sie klassische Probleme wie Skalierbarkeit und Ausfallssicherheit. Dabei sind die Cloud-Lösungen auch noch kostengünstig, weil nur die jeweils genutzte Kapazität abgerechnet wird.
Cloud-Modelle
Aber was ist PaaS, also Platform as a Service, überhaupt genau? Kurz gesagt handelt es sich um eine spezielle Cloud-Lösung. Cloud steht für ein IT-Modell, bei dem die Investition in Lösungen durch den Bezug von Services ersetzt wird. Zunächst unterscheiden sich die Cloud-Lösungen danach, was als Service angeboten wird:
Bei SaaS (Software as a Service) wird Anwendungssoftware angeboten. Konkrete Beispiele sind Google Docs oder Microsoft Office 365, die Office-Software anbieten. Ebenso gibt es beispielsweise mit Gmail ein sehr bekanntes Cloud-Angebot für die Nutzung von E-Mail. Für Entwickler ist SaaS relevant, weil auch sie eine solche Lösung nutzen können – und natürlich müssen auch SaaS-Lösungen von jemandem entwickelt werden. Ebenso können auf der Basis von Standard-Software-Lösungen wie Salesforce.com oder Microsoft Dynamics eigene Lösungen entwickelt werden.
IaaS (Infrastructure as a Service) bietet sozusagen virtuelles Metall an – also Rechner, Netzwerke und Speicher. Wesentliche Basis-Technologie ist Virtualisierung: Wenn für jeden Kunden eine eigene Infrastruktur angeboten werden soll, kann das kaum mit echter Hardware realisiert werden.
PaaS (Plattform as a Service) bietet wiederum eine Plattform an, auf der Anwendungen ausgeführt werden können. Entwickler müssen die Anwendung nur noch deployen, den Rest übernimmt die Plattform.
Für Entwickler sind IaaS als Gegenentwurf zu klassischen Servern und PaaS als „Cloud-Application-Server" besonders interessant. Worin besteht nun der Unterschied und Vorteil gegenüber den klassischen Ansätzen? Ein wichtiges Merkmal hat das NIST (National I>nstitute of Standards and Technology) [1] in seine Definition der Cloud erwähnt: Demnach ist ein Self-Service-Portal ein essenzieller Teil jeder Cloud-Lösung. Das mag sich auf der ersten Blick trivial anhören. Aber in der Praxis ist es nicht ungewöhnlich, ohne Cloud auf einen neuen Server Tage, Wochen oder Monate zu warten. Das gilt oft auch dann, wenn er wegen Virtualisierung lediglich durch den Betrieb mit einigen wenigen Befehlen eingerichtet werden muss. Der Grund für den langen Durchlauf sind die manuellen Schritte, aber oft auch organisatorische Probleme, weil Prozesse nicht auf die Möglichkeiten durch Virtualisierung angepasst worden sind. Beispielsweise sind oft noch manuelle Schritte notwendig oder es müssen Genehmigungen verschiedener Vorgesetzter eingeholt werden.
Bei einer IaaS-Cloud-Lösung steht der benötigte Server hingegen dank durchgängiger Automatisierung innerhalb weniger Minuten zur Verfügung – oder bei einer PaaS-Lösung sogar die Ablaufumgebung. Und wer die Umgebung benötigt, kann den Prozess dafür durch das Self-Service-Portal selber starten. Durch eine Cloud-Lösung wird es also wesentlich einfacher, Anwendungen zu deployen und in Produktion zu bekommen. Es ist auch einfacher möglich, zusätzliche Kapazitäten zu schaffen, um eine größere Anzahl Nutzer zu unterstützen. Die damit einhergehende Flexibilität ist der Hauptvorteil von Cloud-Umgebungen.
Oft wird der Kostenvorteil als ein wesentlicher Grund für die Nutzung von Cloud-Lösungen ins Feld geführt. Zu dem trägt ein Faktor wesentlich bei: Durch die Flexibilität kann der Nutzer genau die Ressourcen mieten und bezahlen, die er tatsächlich gerade benötigt. Es muss also kein Sizing geben, in dessen Folge so viele Maschinen gekauft werden, wie voraussichtlich höchstens benötigt werden. Stattdessen können der Anwendung gerade so viele Kapazitäten zur Verfügung gestellt werden, wie sie benötigt. Das ist zum einen billiger, aber auch flexibler, weil das System viel höher skalieren kann. Ein weiterer Grund für die Kosteneffizienz liegt darin, dass Cloud-Anbieter sehr große Infrastrukturen betreiben. Dadurch sind Effizienzgewinne möglich, wie sie in einem normalen Rechenzentrum kaum zu realisieren sind. So können ganz andere Ansätze zur Stromversorgung genutzt werden, was den Energieverbrauch und damit die Kosten senkt.
Public vs. Private Cloud
Übrigens ist das auch der Grund, warum der Kostenvorteil praktisch nur in einer öffentlichen Cloud-Infrastruktur realisiert werden kann, den so genannten Public Clouds. Es ist auch möglich, eine Cloud im eigenen Rechenzentrum zu betreiben (Private Cloud). Dann lassen sich aber kaum die notwendigen Größenordnungen erreichen, um die Kosteneffizienz eine Public Cloud zu erreichen. Die Flexibilität – also das schnelle Zurverfügungstellen von Umgebungen – bleibt aber erhalten. Der wesentliche Vorteil einer Private Cloud ist, dass die Umgebung im eigenen Rechenzentrum steht und daher in Bezug auf