SlideShare une entreprise Scribd logo
1  sur  17
Bild-Quelle: http://www.colorantshistory.org/NewarkColorantsIndustry.html
Cloud Platforms / PaaS




     Thomas Bachmann
        info@thobach.de
Gliederung
•   Motivation
•   Definition
•   Bedeutung
•   Plattformgedanke und -bestandteile
•   Marktüberblick
•   Fazit




•   Disclaimer: Die Aussagen in dieser Präsentation beziehen
    sich nur auf die Programmiersprache Java
                                                               1
Motivation




Bild-Quelle: http://dilbert.com/strips/comic/2010-01-18/




      •        Administrationsaufwand senken               •   Flexibilität erhöhen
      •        Skalierbarkeit verbessern                   •   Entwicklungsaufwand reduzieren
      •        Verfügbarkeit erhöhen                       •   schnellerer Markteintritt
      •        Gesamtkosten senken                         •   Fokus auf
      •        Fixkosten senken                                Geschäftsanwendungen
                                                                                                2
Definition

           HuaaS                  •   in der Mitte des Cloud
                                      Stacks
         SaaS                     •   Unterteilung in
    - Anwendungen                     Programmier- und
 - Anwendungsdienste                  Ausführungsumgebung
          PaaS                    •   Bereitstellung eines
- Programmierumgebung                 Anwendungscontainers für
- Ausführungsumgebung                 eine oder mehrere
                                      Programmiersprachen
            IaaS
                                  •   Unterscheidung von
  - Infrastrukturdienste
                                      Application PaaS und
(Netzwerk / Speicher / Rechnen)
                                      Integration and Governance
      - Ressourcen                    PaaS
    (virtuell / physikalisch)

        Hardware
                                                                   3
Abgrenzung zu SaaS und IaaS




Bild-Quelle: http://www.microsoft.com/austria/enterprise/article.aspx?Id=IaaS+PaaS+und+SaaS




      •          kein direkter Zugriff auf das Betriebs- und Dateisystem
      •          Application Server, Load Balancer und andere
                 Middleware ist schon installiert und über APIs nutzbar
                                                                                              4
Bedeutung

                                                                         •   genutzt von
                                                                             Leading Edge
                                                                             Users & ISVs
                                                                         •   in japanischen
                                                                             Unternehmen
                                                                             schon mehr
                                                                             Verbreitung
                                                                         •   momentan noch
                                                                             nicht für komplexe
                                                                             Anwendungen




            Bild-Quelle: http://www.gartner.com/it/page.jsp?id=1447613
                                                                                                  5
Plattformgedanke und -bestandteile

Programmiermodell
  •   vergleichbar mit Enterprise
      Anwendungen (Cluster aus
      Application Servern mit Load
      Balancer)
  •   Asynchronität
  •   Zustandslosigkeit
                                          Bild-Quelle: http://www.ibm.com/developerworks/websphere/library/techarticles/
                                          0606_petersonr/0606_petersonr.html




Entwicklungsprozess
  •   Anbieterauswahl (Vendor Lock-In)
  •   mehrere Versionen parallel
      benutzbar (Test, Stage, Live)
  •   SDKs und IDE Plugins der Anbieter
  •   Neuentwicklung oder Migration


                                                                                                                           6
                                                            Bild-Quelle: http://www.klinksoft.com/webdev.htm
Plattformgedanke und -bestandteile

Laufzeitumgebung
•   basierend auf existierenden
    Laufzeitumgebungen
•   kann jederzeit vom PaaS Anbieter
    heruntergefahren werden
•   teilweise eingeschränkt (Sandbox)
•   regelt Zugriff auf DB
•   z.B. Java Servlet Container




                                        Bild-Quelle: http://download.oracle.com/docs/cd/E19933-01/819-2641/6n4trr8j8/index.html


Persistenz
•    kein direkter Zugriff Festplatte
•    Datenhaltung in DB, Caches                                     RDS
     oder BLOB Stores
•    Zugriff via anbieterabhängiger
                                                                   NoSQL
     API oder Laufzeitumgebung                                     BLOB
                                                   Bild-Quelle: http://www.softicons.com/free-icons/system-icons/
                                                   colobrush-icons-by-eponas-deeway/database-icon                                 7
Plattformgedanke und -bestandteile

Nebenläufigkeit und Kommunikation
 •   Threads nicht überall erlaubt
 •   Asynchronität über
     anbieterabhängige APIs
 •   Nutzung von Messaging
     Infrastruktur

                                                                      Bild-Quelle: http://www.thefullwiki.org/Thread_pool_pattern




Zugriffsschicht
 •   Zugriff über das Internet via
     HTTP
 •   Nutzung der
     Protokolleigenschaften von
     HTTP (Cache, Zustandslosigkeit)
                                       Bild-Quelle: http://www.tcpipguide.com/free/t_HTTPOperationalModelandClientServerCommunication.htm




                                                                                                                                            8
Plattformgedanke und -bestandteile

Multi-Tenancy




                         Bild-Quelle: http://www.ibm.com/developerworks/webservices/library/ws-multitenantpart2/index.html

 •   Mandantenfähigkeit auf verschiedenen Ebenen
 •   PaaS Anbieter unterstützen Multi-Tenancy z.T. durch
     Namespaces für DB und Tasks
                                                                                                                             9
Marktüberblick




Bild-Quellen: AWS Logo: http://www.pironet-ndh.com/business-cloud/?attachment_id=5045, GAE Logo: http://www.behindmind.com/de/programs/4674_portable-google-
app-engine-sdk-for-python.html, Salesforce.com Logo: http://pro.clubic.com/entreprises/salesforce/actualite-423192-salesforce-bons-resultats-affiche-presque-100-000-
clients.html?TB_iframe=true&height=650&width=850, Windows Azure Logo: http://www.microsoft.com/germany/presseservice/news/pressemappe.mspx?id=532350                   10
Amazon Web Services: Elastic Beanstalk




                                                                                                   •   baut auf AWS IaaS
                                                                                                       Diensten auf
                                                                                                   •   direkter Zugriff auf EC2
                                                                                                       Instanzen möglich
                                                                                                   •   unterstützt nur JEE
                                                                                                       Anwendungen
Bild-Quelle: http://itsitspace.blogspot.com/2011/01/elastic-beanstalk-amazons-revolutionary.html




                                                                                                                                  11
Google: App Engine




 •   Laufzeitumgebung
     sandboxed
 •   unterstützt JEE und
     Python Anwendungen


                           Bild-Quelle: http://thegrovegroup.wordpress.com/2009/04/27/the-google-apps-engine/   12
Salesforce.com: VMforce




                                                                             •   VMware Stack
                                                                             •   läuft im salesforce
                                                                                 Rechenzentrum
                                                                             •   starke Anbindung an force.com
                                                                                 Dienste und Datenbank
                                                                             •   unterstützt Java Anwendungen
                                                                             •   schwer portierbar
Bild-Quelle: http://blog.springsource.com/2010/04/27/vmforce-spring-cloud/




                                                                                                           13
Microsoft: Windows Azure




                  Bild-Quelle: http://www.microsoft.com/china/ard/en/innoforum/innoforum_14.mspx




•   große Auswahl an Programmiersprachen
•   3 Rollen (Web Role, Worker Role, VM Role)
•   auch als Appliance nutzbar
                                                                                                   14
Fazit, Fragen & Diskussion




Bild-Quelle: http://dilbert.com/strips/comic/2010-01-18/




       •        Administrationsaufwand senken              •   Flexibilität erhöhen
       •        Skalierbarkeit verbessern                  •   Entwicklungsaufwand reduzieren
       •        Verfügbarkeit erhöhen                      •   schnellerer Markteintritt
       •        Gesamtkosten senken                        •   Fokus auf
       •        Fixkosten senken                               Geschäftsanwendungen
                                                                                                15

Contenu connexe

Tendances

Azure Data Factory Data Flows Training v005
Azure Data Factory Data Flows Training v005Azure Data Factory Data Flows Training v005
Azure Data Factory Data Flows Training v005Mark Kromer
 
Data modeling star schema
Data modeling star schemaData modeling star schema
Data modeling star schemaSayed Ahmed
 
OData service from ABAP CDS
OData service from ABAP CDSOData service from ABAP CDS
OData service from ABAP CDSAnil Dasari
 
Types of connections in Power BI
Types of connections in Power BITypes of connections in Power BI
Types of connections in Power BISwapnil Jadhav
 
Cloud Composer workshop at Airflow Summit 2023.pdf
Cloud Composer workshop at Airflow Summit 2023.pdfCloud Composer workshop at Airflow Summit 2023.pdf
Cloud Composer workshop at Airflow Summit 2023.pdfLeah Cole
 
Microsoft Azure Databricks
Microsoft Azure DatabricksMicrosoft Azure Databricks
Microsoft Azure DatabricksSascha Dittmann
 
Dynamic Allocation in Spark
Dynamic Allocation in SparkDynamic Allocation in Spark
Dynamic Allocation in SparkDatabricks
 
Extended ECM for SAP Solutions
Extended ECM for SAP SolutionsExtended ECM for SAP Solutions
Extended ECM for SAP SolutionsOpenText
 
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer ToolsA Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer ToolsAmazon Web Services
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveDataWorks Summit
 
Custom Connector development using Mule SDK
Custom Connector development using Mule SDKCustom Connector development using Mule SDK
Custom Connector development using Mule SDKNavin Kare
 
SAP BW to BW4HANA Migration
SAP BW to BW4HANA MigrationSAP BW to BW4HANA Migration
SAP BW to BW4HANA Migrationssuserff70ea1
 
Sap hana studio_overview
Sap hana studio_overviewSap hana studio_overview
Sap hana studio_overviewArun Singhania
 
iOS Application Lifecycle
iOS Application LifecycleiOS Application Lifecycle
iOS Application LifecycleSiva Prasad K V
 
컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항
컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항
컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항Opennaru, inc.
 
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...DataWorks Summit
 
LLAP: long-lived execution in Hive
LLAP: long-lived execution in HiveLLAP: long-lived execution in Hive
LLAP: long-lived execution in HiveDataWorks Summit
 

Tendances (20)

Azure Data Factory Data Flows Training v005
Azure Data Factory Data Flows Training v005Azure Data Factory Data Flows Training v005
Azure Data Factory Data Flows Training v005
 
Data modeling star schema
Data modeling star schemaData modeling star schema
Data modeling star schema
 
OData service from ABAP CDS
OData service from ABAP CDSOData service from ABAP CDS
OData service from ABAP CDS
 
SAP BW/4HANA - Ein Überblick
SAP BW/4HANA - Ein ÜberblickSAP BW/4HANA - Ein Überblick
SAP BW/4HANA - Ein Überblick
 
Types of connections in Power BI
Types of connections in Power BITypes of connections in Power BI
Types of connections in Power BI
 
Cloud Composer workshop at Airflow Summit 2023.pdf
Cloud Composer workshop at Airflow Summit 2023.pdfCloud Composer workshop at Airflow Summit 2023.pdf
Cloud Composer workshop at Airflow Summit 2023.pdf
 
Sapui5 & Fiori
Sapui5 & FioriSapui5 & Fiori
Sapui5 & Fiori
 
Abinitio.ppt
Abinitio.pptAbinitio.ppt
Abinitio.ppt
 
Microsoft Azure Databricks
Microsoft Azure DatabricksMicrosoft Azure Databricks
Microsoft Azure Databricks
 
Dynamic Allocation in Spark
Dynamic Allocation in SparkDynamic Allocation in Spark
Dynamic Allocation in Spark
 
Extended ECM for SAP Solutions
Extended ECM for SAP SolutionsExtended ECM for SAP Solutions
Extended ECM for SAP Solutions
 
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer ToolsA Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep Dive
 
Custom Connector development using Mule SDK
Custom Connector development using Mule SDKCustom Connector development using Mule SDK
Custom Connector development using Mule SDK
 
SAP BW to BW4HANA Migration
SAP BW to BW4HANA MigrationSAP BW to BW4HANA Migration
SAP BW to BW4HANA Migration
 
Sap hana studio_overview
Sap hana studio_overviewSap hana studio_overview
Sap hana studio_overview
 
iOS Application Lifecycle
iOS Application LifecycleiOS Application Lifecycle
iOS Application Lifecycle
 
컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항
컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항
컨테이너 (PaaS) 환경으로의 애플리케이션 전환 방법과 고려사항
 
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
 
LLAP: long-lived execution in Hive
LLAP: long-lived execution in HiveLLAP: long-lived execution in Hive
LLAP: long-lived execution in Hive
 

Similaire à Cloud Computing - PaaS

SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreibenSQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreibenJan Hentschel
 
Ruby on Rails in a metro session
Ruby on Rails in a metro sessionRuby on Rails in a metro session
Ruby on Rails in a metro sessionVirttoo org
 
Portale 2.0 mit Liferay
Portale 2.0 mit LiferayPortale 2.0 mit Liferay
Portale 2.0 mit Liferayinovex GmbH
 
MongoDB on Linux VM in Windows Azure
MongoDB on Linux VM in Windows AzureMongoDB on Linux VM in Windows Azure
MongoDB on Linux VM in Windows AzureJan Hentschel
 
Bernhard Wick - appserver.io - code.talks 2015
 Bernhard Wick - appserver.io - code.talks 2015 Bernhard Wick - appserver.io - code.talks 2015
Bernhard Wick - appserver.io - code.talks 2015AboutYouGmbH
 
Jug nbg containerplattform dcos
Jug nbg containerplattform dcosJug nbg containerplattform dcos
Jug nbg containerplattform dcosRalf Ernst
 
Oracle Private & Public Database-as-a-Service
Oracle Private & Public Database-as-a-ServiceOracle Private & Public Database-as-a-Service
Oracle Private & Public Database-as-a-Serviceoraclebudb
 
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?adesso AG
 
Wie Azure Jakarta EE Nutzt
Wie Azure Jakarta EE NutztWie Azure Jakarta EE Nutzt
Wie Azure Jakarta EE NutztEdward Burns
 
Boost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerBoost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerSteven Grzbielok
 
Server Revolutions- Der Spring Source DM Server
Server Revolutions- Der Spring Source DM ServerServer Revolutions- Der Spring Source DM Server
Server Revolutions- Der Spring Source DM ServerSandro Sonntag
 
iPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im VertriebiPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im Vertriebexcelsis
 
Windows Azure SQL Databases
Windows Azure SQL DatabasesWindows Azure SQL Databases
Windows Azure SQL DatabasesJan Hentschel
 
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Ileana Somesan
 
ColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep DiveColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep DiveBokowsky + Laymann GmbH
 
Basta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der CloudBasta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der CloudMarc Müller
 
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdfDACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdfDNUG e.V.
 

Similaire à Cloud Computing - PaaS (20)

SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreibenSQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
 
Ruby on Rails in a metro session
Ruby on Rails in a metro sessionRuby on Rails in a metro session
Ruby on Rails in a metro session
 
Portale 2.0 mit Liferay
Portale 2.0 mit LiferayPortale 2.0 mit Liferay
Portale 2.0 mit Liferay
 
MongoDB on Linux VM in Windows Azure
MongoDB on Linux VM in Windows AzureMongoDB on Linux VM in Windows Azure
MongoDB on Linux VM in Windows Azure
 
Bernhard Wick - appserver.io - code.talks 2015
 Bernhard Wick - appserver.io - code.talks 2015 Bernhard Wick - appserver.io - code.talks 2015
Bernhard Wick - appserver.io - code.talks 2015
 
Jug nbg containerplattform dcos
Jug nbg containerplattform dcosJug nbg containerplattform dcos
Jug nbg containerplattform dcos
 
Oracle Private & Public Database-as-a-Service
Oracle Private & Public Database-as-a-ServiceOracle Private & Public Database-as-a-Service
Oracle Private & Public Database-as-a-Service
 
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
 
imatics FormEngine
imatics FormEngineimatics FormEngine
imatics FormEngine
 
BI mit Apache Hadoop (CDH)
BI mit Apache Hadoop (CDH)BI mit Apache Hadoop (CDH)
BI mit Apache Hadoop (CDH)
 
Wie Azure Jakarta EE Nutzt
Wie Azure Jakarta EE NutztWie Azure Jakarta EE Nutzt
Wie Azure Jakarta EE Nutzt
 
Boost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerBoost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with Docker
 
Server Revolutions- Der Spring Source DM Server
Server Revolutions- Der Spring Source DM ServerServer Revolutions- Der Spring Source DM Server
Server Revolutions- Der Spring Source DM Server
 
iPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im VertriebiPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im Vertrieb
 
Windows Azure SQL Databases
Windows Azure SQL DatabasesWindows Azure SQL Databases
Windows Azure SQL Databases
 
Workshop Vue js
Workshop Vue jsWorkshop Vue js
Workshop Vue js
 
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
 
ColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep DiveColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep Dive
 
Basta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der CloudBasta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der Cloud
 
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdfDACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
 

Cloud Computing - PaaS

  • 2. Cloud Platforms / PaaS Thomas Bachmann info@thobach.de
  • 3. Gliederung • Motivation • Definition • Bedeutung • Plattformgedanke und -bestandteile • Marktüberblick • Fazit • Disclaimer: Die Aussagen in dieser Präsentation beziehen sich nur auf die Programmiersprache Java 1
  • 4. Motivation Bild-Quelle: http://dilbert.com/strips/comic/2010-01-18/ • Administrationsaufwand senken • Flexibilität erhöhen • Skalierbarkeit verbessern • Entwicklungsaufwand reduzieren • Verfügbarkeit erhöhen • schnellerer Markteintritt • Gesamtkosten senken • Fokus auf • Fixkosten senken Geschäftsanwendungen 2
  • 5. Definition HuaaS • in der Mitte des Cloud Stacks SaaS • Unterteilung in - Anwendungen Programmier- und - Anwendungsdienste Ausführungsumgebung PaaS • Bereitstellung eines - Programmierumgebung Anwendungscontainers für - Ausführungsumgebung eine oder mehrere Programmiersprachen IaaS • Unterscheidung von - Infrastrukturdienste Application PaaS und (Netzwerk / Speicher / Rechnen) Integration and Governance - Ressourcen PaaS (virtuell / physikalisch) Hardware 3
  • 6. Abgrenzung zu SaaS und IaaS Bild-Quelle: http://www.microsoft.com/austria/enterprise/article.aspx?Id=IaaS+PaaS+und+SaaS • kein direkter Zugriff auf das Betriebs- und Dateisystem • Application Server, Load Balancer und andere Middleware ist schon installiert und über APIs nutzbar 4
  • 7. Bedeutung • genutzt von Leading Edge Users & ISVs • in japanischen Unternehmen schon mehr Verbreitung • momentan noch nicht für komplexe Anwendungen Bild-Quelle: http://www.gartner.com/it/page.jsp?id=1447613 5
  • 8. Plattformgedanke und -bestandteile Programmiermodell • vergleichbar mit Enterprise Anwendungen (Cluster aus Application Servern mit Load Balancer) • Asynchronität • Zustandslosigkeit Bild-Quelle: http://www.ibm.com/developerworks/websphere/library/techarticles/ 0606_petersonr/0606_petersonr.html Entwicklungsprozess • Anbieterauswahl (Vendor Lock-In) • mehrere Versionen parallel benutzbar (Test, Stage, Live) • SDKs und IDE Plugins der Anbieter • Neuentwicklung oder Migration 6 Bild-Quelle: http://www.klinksoft.com/webdev.htm
  • 9. Plattformgedanke und -bestandteile Laufzeitumgebung • basierend auf existierenden Laufzeitumgebungen • kann jederzeit vom PaaS Anbieter heruntergefahren werden • teilweise eingeschränkt (Sandbox) • regelt Zugriff auf DB • z.B. Java Servlet Container Bild-Quelle: http://download.oracle.com/docs/cd/E19933-01/819-2641/6n4trr8j8/index.html Persistenz • kein direkter Zugriff Festplatte • Datenhaltung in DB, Caches RDS oder BLOB Stores • Zugriff via anbieterabhängiger NoSQL API oder Laufzeitumgebung BLOB Bild-Quelle: http://www.softicons.com/free-icons/system-icons/ colobrush-icons-by-eponas-deeway/database-icon 7
  • 10. Plattformgedanke und -bestandteile Nebenläufigkeit und Kommunikation • Threads nicht überall erlaubt • Asynchronität über anbieterabhängige APIs • Nutzung von Messaging Infrastruktur Bild-Quelle: http://www.thefullwiki.org/Thread_pool_pattern Zugriffsschicht • Zugriff über das Internet via HTTP • Nutzung der Protokolleigenschaften von HTTP (Cache, Zustandslosigkeit) Bild-Quelle: http://www.tcpipguide.com/free/t_HTTPOperationalModelandClientServerCommunication.htm 8
  • 11. Plattformgedanke und -bestandteile Multi-Tenancy Bild-Quelle: http://www.ibm.com/developerworks/webservices/library/ws-multitenantpart2/index.html • Mandantenfähigkeit auf verschiedenen Ebenen • PaaS Anbieter unterstützen Multi-Tenancy z.T. durch Namespaces für DB und Tasks 9
  • 12. Marktüberblick Bild-Quellen: AWS Logo: http://www.pironet-ndh.com/business-cloud/?attachment_id=5045, GAE Logo: http://www.behindmind.com/de/programs/4674_portable-google- app-engine-sdk-for-python.html, Salesforce.com Logo: http://pro.clubic.com/entreprises/salesforce/actualite-423192-salesforce-bons-resultats-affiche-presque-100-000- clients.html?TB_iframe=true&height=650&width=850, Windows Azure Logo: http://www.microsoft.com/germany/presseservice/news/pressemappe.mspx?id=532350 10
  • 13. Amazon Web Services: Elastic Beanstalk • baut auf AWS IaaS Diensten auf • direkter Zugriff auf EC2 Instanzen möglich • unterstützt nur JEE Anwendungen Bild-Quelle: http://itsitspace.blogspot.com/2011/01/elastic-beanstalk-amazons-revolutionary.html 11
  • 14. Google: App Engine • Laufzeitumgebung sandboxed • unterstützt JEE und Python Anwendungen Bild-Quelle: http://thegrovegroup.wordpress.com/2009/04/27/the-google-apps-engine/ 12
  • 15. Salesforce.com: VMforce • VMware Stack • läuft im salesforce Rechenzentrum • starke Anbindung an force.com Dienste und Datenbank • unterstützt Java Anwendungen • schwer portierbar Bild-Quelle: http://blog.springsource.com/2010/04/27/vmforce-spring-cloud/ 13
  • 16. Microsoft: Windows Azure Bild-Quelle: http://www.microsoft.com/china/ard/en/innoforum/innoforum_14.mspx • große Auswahl an Programmiersprachen • 3 Rollen (Web Role, Worker Role, VM Role) • auch als Appliance nutzbar 14
  • 17. Fazit, Fragen & Diskussion Bild-Quelle: http://dilbert.com/strips/comic/2010-01-18/ • Administrationsaufwand senken • Flexibilität erhöhen • Skalierbarkeit verbessern • Entwicklungsaufwand reduzieren • Verfügbarkeit erhöhen • schnellerer Markteintritt • Gesamtkosten senken • Fokus auf • Fixkosten senken Geschäftsanwendungen 15

Notes de l'éditeur

  1. Frage an die Runde: Hat schon mal eine JEE Anwendung geschrieben? - für ein Cluster aus App Servern? - die in der Cloud läuft? Ist JEE jedem ein Begriff?
  2. Abgrenzung erst auf nächster Folie
  3. Migration von on premise Lösungen in die Cloud schrittweise - nur in VM in der Cloud laufen lassen (schlechte Skalierbarkeit) - nur DB in die Cloud auslagern - nur Anwendung ... - alles auf einmal migrieren (DB Verbindung auf Cloud APIs abstimmen, evtl. Laufzeitmgebungseinschränkungen beachten)
  4. bei GAE und AWS ist es für Java der Servlet Container
  5. nur anbieter und produkte nennen
  6. GAE Sandbox: - keine Threads - begrenzte Anzahl an HTTP Requests pro Zeiteinheit - keine nativen Java Netzwerkverbindungen, alles über APIs
  7. Compute, Storage, AppFabric, Virtual Network, CDN und Marketplace
  8. - Vendor Lock-In durch anbieterspezifische APIs - Portierbarkeit zwischen Anbietern teilweise schwer - erhöhte Flexibilität kostet auch mehr - Fixkosten senken nur wenn ich eigene Infrastruktur abschaffe bzw. nicht weiter ausbaue, geht nicht bei on premise cloud - Skalierbarkeit nur bei Anpassung der Anwendung, wenn nicht schon async und zustandslos - Hochverfügbarkeit bisher schlecht (SLAs) nur 3 9en - Diskussion über Standards, z.b. mal gehen Threads, mal nicht bzw. nur über andere API