SlideShare une entreprise Scribd logo
1  sur  42
Software Development
for the Public Cloud
Platforms: Azure vs.
App Engine vs. Amazon
Svetlin Nakov
Telerik Software Academy



                           http://academy.telerik.com
Agenda

 The Cloud from Developers‘ Perspective
 Windows Azure
 Google App Engine (GAE)
 Amazon Web Services (AWS)
 AppHarbor




                                           2
The Cloud from
  Developers'
  Perspective
4
    Cloud??? WTF?!?




                      Computer
                      Located
                      OUtside of
                      Data Center
What is Cloud?
Cloud ≈ multiple hardware machines combine
 computing power and resources
   Share them between multiple applications
   To save costs and use resources more
    efficiently
Public clouds
  Provide computing resources on demand
     Publicly in Internet
     Paid or free of charge (to some limit)
   Azure, Amazon AWS, Google App Engine,
    AppHarbor, Rackspace, Heroku, …
                                               5
Why Cloud Matters?
Microsoft Azure        Cisco Cloud Applications
IBM Cloud               and Services

Apple iCloud           Intel Hybrid Cloud

Oracle Public Cloud    Dell Cloud Computing
                        Solutions
SAP NetWeaver on
 Demand                Adobe Creative Cloud

Google App Engine      CA Cloud Solutions

Amazon Web Services    Symantec.cloud services

HP Cloud Services      Salesforce Force.com
                        Cloud Computing Platform
VMware Cloud Foundry
                       EMC Atmos Cloud
The Rackspace Cloud     Delivery Platform
                                                   6
Cloud Computing Models
Infrastructure as a Service (IaaS)
   Virtual machines in the cloud on demand
   Users install the OS and software they need
Platform as a Service (PaaS)
    Platform, services and APIs for developers
    E.g. .NET + ASP.NET + WCF + SQL Azure
    Java + JBoss + JSF + JPA + MongoDB
    JavaScript + Node.js + MongoDB + RabbitMQ
Software as a Service (SaaS)
  Hosted application on demand (e.g.
   WordPress or SugarCRM)                         7
Cloud for Developers
Moving to the cloud will require new skills
  New paradigms and APIs
    E.g. NoSQL databases and MapReduce
   New platforms and technologies
   New deployment model
The cloud still supports your existing skills
  Known technologies, e.g. ASP.NET and WCF
  Your favorite programming languages
    Like C#, Java and PHP
   Relational databases and SQL
                                                8
Cloud Architecture

he typical cloud architecture is multi-tier, SOA,
highly-scalable and highly-available
                  Load Balancer


      Computing   Computing   …     Computing
        Node        Node              Node


      Data-   Storage    Back-End     Other
      bases   Services   Services    Services




  At each tier different managed services,         9
Cloud Architecture (2)
Computing Nodes
  Host and run your applications
  Different languages and frameworks
     E.g. C# + ASP.NET MVC or PHP + Symfony
   Stateless by design
Databases and Storage
  Relational and NoSQL databases
  Blob storage, file storage, CDN
Other Services
  Queues, notifications, logging, email, …    10
Windows
 Azure
Windows Azure

Microsoft Windows Azure
  Fast-growing public cloud
  Provides rich PaaS platform
   Mainly for .NET developers
   Supports all major .NET technologies
     ASP.NET MVC, WCF, ADO.NET EF, WWF, …
   Provides also Java, PHP and Node.js APIs
  No free version, only 3 months trial
   Bulgarian citizens cannot register!
                                               12
Azure Architecture

               Azure Load Balancer


      Compute        Compute            Compute
     (Web role)    (Worker role)        (VM role)
      VM running                         Windows
                       Windows VM
         IIS7                              VM
                        C# / .NET
      ASP.NET /                           Custom
                       code / Java
     PHP / other                         software
                          code

      SQL
              Tables     Blobs       Queues   CDN
     Azure


          Other Azure / external services
                                                    13
Windows Azure Services
Windows Azure Compute
  Computing instances run Windows OS
   and applications (CPU + RAM + HDD)
  Web role
    Internet Information Services (IIS) machine
     for hosting Web applications
     and WCF services
  Worker role
    Long-running computations
  VM role
    Windows VM (non-persistent)
                                                   14
Windows Azure Services (2)

Azure data storage services
   Azure Table Storage
    Distributed highly-scalable cloud
     database (stores entities with properties)
   Azure Queue Storage
    Message queue service
   Azure Blobs / Drives
    Blob / file storage
    NTFS volumes
                                                  15
Windows Azure Services (3)

SQL Azure
  SQL Server in the cloud
  Highly-available and scalable relational DB
Azure Business Analytics
  Create reports with tables, charts, maps, etc.
Azure Caching
  Distributed, in-memory, application cache
Azure CDN
  Content delivery network
                                                    16
Azure Pricing
Computing Nodes
  Shared CPU, 768 MB RAM
     $0.02 / hour ($15 / month)
   1 Core, 1.75 GB RAM
     $0.12 / hour ($90 / month)

Storage
   $0.125 / GB + $0.01 / 10000 operations
SQL Azure Database
  100 MB – $0.0067 / hour ($5 / month)
  1 GB – $0.0133 / hour ($10 / month)       17
Windows Azure
  Live Demo
Google App
Engine (GAE)
Google App Engine
Google App Engine (GAE)
  Leading Java and Python PaaS public cloud
  Infrastructure similar to the one driving
   GMail and Google Docs operated by Google
  http://code.google.com/appengine/
App Engine has a completely free version
  Provides CPU / bandwidth / storage capable
   to serve 5 000 000 page views / month
  Instant registration
    Confirmation by SMS
                                                20
App Engine Architecture

     Load Balancer (Google Front-End Server)


     App Engine Instances          Backends

      Sandbox running JVM /     Sandbox running
        Python interpreter       JVM / Python

      Java code / Java Web
                                   Java code
     application / Python app


     Data     Cloud    Blob      Map     Tasks
     store     SQL     store    Reduce   queue


       Other App Engine / external services
       (Channel API, Memcache, Email, …)
                                                  21
App Engine Services
App Engine instances
  Computing units that host the applications
  Fully managed sandboxes (not VMs!)
    Provide CPU + RAM + storage +
     language runtime
  appengine.google.com

App Engine backends
  Like the App Engine instances
    But provides higher computing resources
  Used for background processing
                                                22
App Engine Services (2)
App Engine datastores
  Provide NoSQL schemaless object database
  Supports transacts and a query-engine (GQL)
  High-replication datastore (HRD)
  Master-slave datastore (faster, less-reliable)
Cloud SQL
  Managed MySQL in App Engine
Blobstore / Cloud Storage
  Store files / blobs
  Has with ACL and REST API                        23
App Engine Services (3)

MapReduce API
  Highly-scalable parallel computing API for
   heavy computing tasks (based on Hadoop)
Channel API
  Push notifications for JavaScript applications
Task Queues
  Services for execution of background work
Memcache
  Distributed in-memory data cache
                                                    24
App Engine Pricing
On-demand Frontend instances
  1 instance free
  $0.08 / hour ($60 / month)
High Replication Datastore (HRD)
  1 GB free
  $0.24 / GB / month ($0.00032 / GB / hour)
Each API has free quota and price per usage
  Blobstore API: 5 GB free; $0.13 / GB / month
  Datastore API: 50K free; $0.10 / 100k
   write operations                               25
Google App
Engine (GAE)
  Live Demo
Amazon
Web Services
Amazon Web Services
Amazon Web Services (AWS)
  The pioneer of the public clouds
  Provides cloud platform and services from
   2002
  Provides IaaS and PaaS on demand
Amazon Elastic Compute Cloud (Amazon EC2)
  Virtual machines on demand
    Runs Windows / Linux / other OS
  Several locations: US, EU, Japan, Brazil, …
  http://aws.amazon.com/ec2/                    28
AWS Architecture

             Elastic Load Balancing (ELB)


            EC2 Instances + Storage (EBS)

            Any OS and development platform
           C# / Java / PHP / Python / Ruby / …

     Any development framework (.NET / Java EE /
      Symfony / Zend / Django / Rails / Node.js)


             Dynamo
     RDB                 S3    EBS    SQS    SWF
               DB


          Other AWS / external services
      (ElastiCache, CloudFront CDN, SES, …)
                                                   29
AWS Services

Amazon Elastic Block Store (Amazon EBS)
  Virtual hard disk (HDD) volumes
  Used with the EC2 to keep the OS file system
  http://aws.amazon.com/ebs/
Amazon Simple Storage Service (Amazon S3)
  Host binary data (files, images, videos, etc.)
  Accessible through the Web
    With or without authentication
  http://aws.amazon.com/s3/
                                                    30
AWS Services (2)
Amazon DynamoDB / SimpleDB
  Managed NoSQL cloud database

  Highly scalable, fault-tolerant

  DynamoDB – newer & faster than SimpleDB

  http://aws.amazon.com/dynamodb/

 Amazon Relational Database Service (RDS)
  Managed MySQL and Oracle databases

  Scalability, automated backup, replication

  http://aws.amazon.com/rds/
                                                31
AWS Services (3)
Other AWS services
  Amazon SQS (message queue)
  Amazon CloudFront (content delivery
   network)
  Amazon ElastiCache (caching)
  Amazon Route 53 (cloud DNS)
  Amazon SES (email)
Pricing
  On-demand pricing (per hour / per GB)
  1-year free trial (credit card required)   32
Amazon AWS Pricing
On-Demand EC2 Instances
  1 Core, 1.7 GB RAM, Linux
    $0.08 / hour ($60 / month)
  1 Core, 1.7 GB RAM, Windows
    $0.115 / hour ($86 / month)

Storage (EBS)
   $0.10 / GB + $0.10 per 1 million requests
Oracle Database (1 Core, 1.7 GB RAM)
  DB instance: $0.155 / hour ($116 / month)
  DB storage: paid like EBS storage            33
AppHarbor
.NET Cloud Made Easy
AppHarbor
AppHarbor – cloud platform for .NET apps
  Supports a classical .NET development stack
   C#, .NET Framework, ASP.NET (Web Forms
    and MVC), WCF, WWF, ADO.NET Entity
    Framework, …
  Deployment through Git / SVN / TFS
   Automated build process
    (compilation + unit tests)
  Build-in load balancing
  Built on top of Amazon AWS
  Rich set of add-on services                   35
AppHarbor Architecture

              Load Balancer (Nginx)


        Web worker             Background
         instances              workers
        Managed IIS          Managed Windows
        environment            environment
     C# / ASP.NET MVC /
                                 C# code
      Web Forms / WCF


      Managed SQL         MongoDB,    IronMQ,
     Server / MySQL       CouchDB     RabitMQ


        Other AppHarbor Add-On Services
                                                36
AppHarbor: Add-Ons

Airbrake (error logging)
Blitz (performance monitoring)
CloudAMQP (RabbitMQ)
Cloudant (CouchDB)
CloudMailin (incoming email)
Dedicated SQL Server
JustOneDB (NoSLQ database)
Logentries (log management)
Mailgun (email send / receive)
                                 37
AppHarbor: Add-Ons (2)

Memcacher (in-memory caching)
MongoHQ (managed MongoDB)
MongoLab (managed MongoDB)
MySQL (shared MySQL DB)
RavenHQ (NoSQL database)
Redis To Go (key-value store)
SendGrid (email delivery)
StillAlive (app monitoring)
Shared SQL Server (managed instance)
                                       38
AppHarbor Pricing
AppHarbor free plan
  1 Web worker instance per application
  Unlimited applications
  20 MB SQL Server + 20 MB MySQL
Paid plans
  $49 month per instance (Web worker or
   Background worker)
  10 GB Shared SQL Server DB – $10 / month
  10 GB Shared MySQL DB – $10 / month
  Custom domain – $10 / month
                                              39
AppHarbor
 Live Demo
More Resources
Free Cloud Development Course
   Each Wednesday, Telerik Software Academy



                        Python




  clouddevcourse.telerik.com
                                               41
Software Development
 for the Public Cloud
 Platforms: Azure vs.
App Engine vs. Amazon



Questions?

                  http://academy.telerik.com

Contenu connexe

Tendances

Storage Area Network (San)
Storage Area Network (San)Storage Area Network (San)
Storage Area Network (San)sankcomp
 
Third party cloud services cloud computing
Third party cloud services cloud computingThird party cloud services cloud computing
Third party cloud services cloud computingSohailAliMalik
 
SQL/NoSQL How to choose ?
SQL/NoSQL How to choose ?SQL/NoSQL How to choose ?
SQL/NoSQL How to choose ?Venu Anuganti
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)Prashant Gupta
 
Networking in cloud computing
Networking in cloud computingNetworking in cloud computing
Networking in cloud computingBarani Tharan
 
Database management system chapter15
Database management system chapter15Database management system chapter15
Database management system chapter15Md. Mahedi Mahfuj
 
Data-Intensive Technologies for Cloud Computing
Data-Intensive Technologies for CloudComputingData-Intensive Technologies for CloudComputing
Data-Intensive Technologies for Cloud Computinghuda2018
 
Cloud platforms - Cloud Computing
Cloud platforms - Cloud ComputingCloud platforms - Cloud Computing
Cloud platforms - Cloud ComputingAditi Rai
 
Presenting Cloud Computing
Presenting Cloud ComputingPresenting Cloud Computing
Presenting Cloud ComputingNaveen Karn
 

Tendances (20)

Storage Area Network (San)
Storage Area Network (San)Storage Area Network (San)
Storage Area Network (San)
 
Third party cloud services cloud computing
Third party cloud services cloud computingThird party cloud services cloud computing
Third party cloud services cloud computing
 
SQL/NoSQL How to choose ?
SQL/NoSQL How to choose ?SQL/NoSQL How to choose ?
SQL/NoSQL How to choose ?
 
Application virtualization
Application virtualizationApplication virtualization
Application virtualization
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
 
Networking in cloud computing
Networking in cloud computingNetworking in cloud computing
Networking in cloud computing
 
Mahout
MahoutMahout
Mahout
 
Hadoop
Hadoop Hadoop
Hadoop
 
Distributed Computing
Distributed ComputingDistributed Computing
Distributed Computing
 
Database management system chapter15
Database management system chapter15Database management system chapter15
Database management system chapter15
 
Hadoop basics
Hadoop basicsHadoop basics
Hadoop basics
 
Hadoop YARN
Hadoop YARNHadoop YARN
Hadoop YARN
 
Data-Intensive Technologies for Cloud Computing
Data-Intensive Technologies for CloudComputingData-Intensive Technologies for CloudComputing
Data-Intensive Technologies for Cloud Computing
 
Hadoop technology
Hadoop technologyHadoop technology
Hadoop technology
 
Cloud platforms - Cloud Computing
Cloud platforms - Cloud ComputingCloud platforms - Cloud Computing
Cloud platforms - Cloud Computing
 
Presenting Cloud Computing
Presenting Cloud ComputingPresenting Cloud Computing
Presenting Cloud Computing
 
Map Reduce
Map ReduceMap Reduce
Map Reduce
 
cloud computing Multi cloud
cloud computing Multi cloudcloud computing Multi cloud
cloud computing Multi cloud
 
What is Serverless Computing?
What is Serverless Computing?What is Serverless Computing?
What is Serverless Computing?
 
Raid technology
Raid technologyRaid technology
Raid technology
 

En vedette

Combustion in diesel engine
Combustion in diesel engineCombustion in diesel engine
Combustion in diesel engineAmanpreet Singh
 
Apache Kylin: OLAP Engine on Hadoop - Tech Deep Dive
Apache Kylin: OLAP Engine on Hadoop - Tech Deep DiveApache Kylin: OLAP Engine on Hadoop - Tech Deep Dive
Apache Kylin: OLAP Engine on Hadoop - Tech Deep DiveXu Jiang
 
Search Engine Optimization (SEO)
Search Engine Optimization (SEO)Search Engine Optimization (SEO)
Search Engine Optimization (SEO)Dennis Deacon
 
Periodic Table of SEO Success Factors & Guide to SEO by SearchEngineLand
Periodic Table of SEO Success Factors & Guide to SEO by SearchEngineLandPeriodic Table of SEO Success Factors & Guide to SEO by SearchEngineLand
Periodic Table of SEO Success Factors & Guide to SEO by SearchEngineLandSearch Engine Land
 
Internal Combustion Engines - Construction and Working (All you need to know,...
Internal Combustion Engines - Construction and Working (All you need to know,...Internal Combustion Engines - Construction and Working (All you need to know,...
Internal Combustion Engines - Construction and Working (All you need to know,...Mihir Pai
 
Tk03 Google App Engine Fr
Tk03 Google App Engine FrTk03 Google App Engine Fr
Tk03 Google App Engine FrValtech
 
ppt on 2 stroke and 4 stroke petrol engine
ppt on 2 stroke and 4 stroke petrol engineppt on 2 stroke and 4 stroke petrol engine
ppt on 2 stroke and 4 stroke petrol engineharshid panchal
 
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...JRibbeck
 
I.C.ENGINE PPT
I.C.ENGINE PPTI.C.ENGINE PPT
I.C.ENGINE PPT8695
 
CAP 4: SEO - Optimizacion de Contenido
CAP 4: SEO - Optimizacion de ContenidoCAP 4: SEO - Optimizacion de Contenido
CAP 4: SEO - Optimizacion de ContenidoGary Briceño
 
App engine
App engineApp engine
App engineThirdWay
 
CAP 3: SEO - Keywords Research
CAP 3: SEO - Keywords ResearchCAP 3: SEO - Keywords Research
CAP 3: SEO - Keywords ResearchGary Briceño
 
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]Websec México, S.C.
 
Presentacion introduccion ibm file net p8 v10
Presentacion introduccion ibm file net p8 v10Presentacion introduccion ibm file net p8 v10
Presentacion introduccion ibm file net p8 v10Javier Laguens Garcia
 
Nuxeo WebEngine : Etude de cas
Nuxeo WebEngine : Etude de casNuxeo WebEngine : Etude de cas
Nuxeo WebEngine : Etude de casDamien Metzler
 
An introduction to Google's App Engine
An introduction to Google's App EngineAn introduction to Google's App Engine
An introduction to Google's App EngineStefan Sperber
 

En vedette (20)

Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Combustion in diesel engine
Combustion in diesel engineCombustion in diesel engine
Combustion in diesel engine
 
Apache Kylin: OLAP Engine on Hadoop - Tech Deep Dive
Apache Kylin: OLAP Engine on Hadoop - Tech Deep DiveApache Kylin: OLAP Engine on Hadoop - Tech Deep Dive
Apache Kylin: OLAP Engine on Hadoop - Tech Deep Dive
 
RoomCloud Booking Engine
RoomCloud Booking EngineRoomCloud Booking Engine
RoomCloud Booking Engine
 
Search Engine Optimization (SEO)
Search Engine Optimization (SEO)Search Engine Optimization (SEO)
Search Engine Optimization (SEO)
 
Periodic Table of SEO Success Factors & Guide to SEO by SearchEngineLand
Periodic Table of SEO Success Factors & Guide to SEO by SearchEngineLandPeriodic Table of SEO Success Factors & Guide to SEO by SearchEngineLand
Periodic Table of SEO Success Factors & Guide to SEO by SearchEngineLand
 
Ic engine
Ic engineIc engine
Ic engine
 
Internal Combustion Engines - Construction and Working (All you need to know,...
Internal Combustion Engines - Construction and Working (All you need to know,...Internal Combustion Engines - Construction and Working (All you need to know,...
Internal Combustion Engines - Construction and Working (All you need to know,...
 
Tk03 Google App Engine Fr
Tk03 Google App Engine FrTk03 Google App Engine Fr
Tk03 Google App Engine Fr
 
ppt on 2 stroke and 4 stroke petrol engine
ppt on 2 stroke and 4 stroke petrol engineppt on 2 stroke and 4 stroke petrol engine
ppt on 2 stroke and 4 stroke petrol engine
 
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...
 
I.C.ENGINE PPT
I.C.ENGINE PPTI.C.ENGINE PPT
I.C.ENGINE PPT
 
CAP 4: SEO - Optimizacion de Contenido
CAP 4: SEO - Optimizacion de ContenidoCAP 4: SEO - Optimizacion de Contenido
CAP 4: SEO - Optimizacion de Contenido
 
App engine
App engineApp engine
App engine
 
CAP 3: SEO - Keywords Research
CAP 3: SEO - Keywords ResearchCAP 3: SEO - Keywords Research
CAP 3: SEO - Keywords Research
 
El SEOy la geolocalización
El SEOy la geolocalizaciónEl SEOy la geolocalización
El SEOy la geolocalización
 
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
 
Presentacion introduccion ibm file net p8 v10
Presentacion introduccion ibm file net p8 v10Presentacion introduccion ibm file net p8 v10
Presentacion introduccion ibm file net p8 v10
 
Nuxeo WebEngine : Etude de cas
Nuxeo WebEngine : Etude de casNuxeo WebEngine : Etude de cas
Nuxeo WebEngine : Etude de cas
 
An introduction to Google's App Engine
An introduction to Google's App EngineAn introduction to Google's App Engine
An introduction to Google's App Engine
 

Similaire à Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor

Public Cloud Platforms for .NET Developers
Public Cloud Platforms for .NET DevelopersPublic Cloud Platforms for .NET Developers
Public Cloud Platforms for .NET DevelopersSvetlin Nakov
 
Azure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App PlatformAzure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App Platformgiventocode
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressGeorge Kanellopoulos
 
Developing Social Games in the Cloud
Developing Social Games in the CloudDeveloping Social Games in the Cloud
Developing Social Games in the CloudJurriaan Persyn
 
Comparison and mapping between various cloud services 2019
Comparison and mapping between various cloud services 2019Comparison and mapping between various cloud services 2019
Comparison and mapping between various cloud services 2019jones4u
 
Microsoft Azure: Opção de Nuvem para Todo o Desenvolvedor
Microsoft Azure: Opção de Nuvem para Todo o DesenvolvedorMicrosoft Azure: Opção de Nuvem para Todo o Desenvolvedor
Microsoft Azure: Opção de Nuvem para Todo o DesenvolvedorOsvaldo Daibert
 
Introduction to Windows Azure Platform
Introduction to Windows Azure PlatformIntroduction to Windows Azure Platform
Introduction to Windows Azure PlatformSergejus Barinovas
 
A Step By Step Guide To Put DB2 On Amazon Cloud
A Step By Step Guide To Put DB2 On Amazon CloudA Step By Step Guide To Put DB2 On Amazon Cloud
A Step By Step Guide To Put DB2 On Amazon CloudDeepak Rao
 
Architecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesArchitecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesAmazon Web Services
 
AWS Cloud Computing workshop 30-31st May Bangalore
AWS Cloud Computing workshop 30-31st May BangaloreAWS Cloud Computing workshop 30-31st May Bangalore
AWS Cloud Computing workshop 30-31st May BangaloreSudhir Nair
 
AWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May BangaloreAWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May BangaloreBOOSTurSKILLS
 
AWS Cloud Computing workshop 30 31st May Bangalore
AWS Cloud Computing workshop 30 31st May BangaloreAWS Cloud Computing workshop 30 31st May Bangalore
AWS Cloud Computing workshop 30 31st May BangaloreSudhir Nair
 
AWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May BangaloreAWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May BangaloreSudhir Nair
 
Keynote Microsoft Azure Summit
Keynote Microsoft Azure SummitKeynote Microsoft Azure Summit
Keynote Microsoft Azure SummitDanilo Bordini
 
Drupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure WebsitesDrupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure WebsitesCory Fowler
 

Similaire à Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor (20)

Public Cloud Platforms for .NET Developers
Public Cloud Platforms for .NET DevelopersPublic Cloud Platforms for .NET Developers
Public Cloud Platforms for .NET Developers
 
Azure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App PlatformAzure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App Platform
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
 
Developing Social Games in the Cloud
Developing Social Games in the CloudDeveloping Social Games in the Cloud
Developing Social Games in the Cloud
 
Comparison and mapping between various cloud services 2019
Comparison and mapping between various cloud services 2019Comparison and mapping between various cloud services 2019
Comparison and mapping between various cloud services 2019
 
Microsoft Azure: Opção de Nuvem para Todo o Desenvolvedor
Microsoft Azure: Opção de Nuvem para Todo o DesenvolvedorMicrosoft Azure: Opção de Nuvem para Todo o Desenvolvedor
Microsoft Azure: Opção de Nuvem para Todo o Desenvolvedor
 
Amazon Web Services (AWS) Case study
Amazon Web Services (AWS) Case studyAmazon Web Services (AWS) Case study
Amazon Web Services (AWS) Case study
 
Introduction to Windows Azure Platform
Introduction to Windows Azure PlatformIntroduction to Windows Azure Platform
Introduction to Windows Azure Platform
 
Migrating Apps To Azure
Migrating Apps To AzureMigrating Apps To Azure
Migrating Apps To Azure
 
Sky High With Azure
Sky High With AzureSky High With Azure
Sky High With Azure
 
A Step By Step Guide To Put DB2 On Amazon Cloud
A Step By Step Guide To Put DB2 On Amazon CloudA Step By Step Guide To Put DB2 On Amazon Cloud
A Step By Step Guide To Put DB2 On Amazon Cloud
 
Architecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesArchitecting for the Cloud: Best Practices
Architecting for the Cloud: Best Practices
 
AWS Cloud Computing workshop 30-31st May Bangalore
AWS Cloud Computing workshop 30-31st May BangaloreAWS Cloud Computing workshop 30-31st May Bangalore
AWS Cloud Computing workshop 30-31st May Bangalore
 
AWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May BangaloreAWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May Bangalore
 
AWS Cloud Computing workshop 30 31st May Bangalore
AWS Cloud Computing workshop 30 31st May BangaloreAWS Cloud Computing workshop 30 31st May Bangalore
AWS Cloud Computing workshop 30 31st May Bangalore
 
AWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May BangaloreAWS Cloud Computing workshop 30-31 May Bangalore
AWS Cloud Computing workshop 30-31 May Bangalore
 
Keynote Microsoft Azure Summit
Keynote Microsoft Azure SummitKeynote Microsoft Azure Summit
Keynote Microsoft Azure Summit
 
Drupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure WebsitesDrupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure Websites
 

Plus de Svetlin Nakov

BG-IT-Edu: отворено учебно съдържание за ИТ учители
BG-IT-Edu: отворено учебно съдържание за ИТ учителиBG-IT-Edu: отворено учебно съдържание за ИТ учители
BG-IT-Edu: отворено учебно съдържание за ИТ учителиSvetlin Nakov
 
Programming World in 2024
Programming World in 2024Programming World in 2024
Programming World in 2024Svetlin Nakov
 
AI Tools for Business and Startups
AI Tools for Business and StartupsAI Tools for Business and Startups
AI Tools for Business and StartupsSvetlin Nakov
 
AI Tools for Scientists - Nakov (Oct 2023)
AI Tools for Scientists - Nakov (Oct 2023)AI Tools for Scientists - Nakov (Oct 2023)
AI Tools for Scientists - Nakov (Oct 2023)Svetlin Nakov
 
AI Tools for Entrepreneurs
AI Tools for EntrepreneursAI Tools for Entrepreneurs
AI Tools for EntrepreneursSvetlin Nakov
 
Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023
Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023
Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023Svetlin Nakov
 
AI Tools for Business and Personal Life
AI Tools for Business and Personal LifeAI Tools for Business and Personal Life
AI Tools for Business and Personal LifeSvetlin Nakov
 
Дипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин НаковДипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин НаковSvetlin Nakov
 
Дипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООПДипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООПSvetlin Nakov
 
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТСвободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТSvetlin Nakov
 
AI and the Professions of the Future
AI and the Professions of the FutureAI and the Professions of the Future
AI and the Professions of the FutureSvetlin Nakov
 
Programming Languages Trends for 2023
Programming Languages Trends for 2023Programming Languages Trends for 2023
Programming Languages Trends for 2023Svetlin Nakov
 
IT Professions and How to Become a Developer
IT Professions and How to Become a DeveloperIT Professions and How to Become a Developer
IT Professions and How to Become a DeveloperSvetlin Nakov
 
GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)Svetlin Nakov
 
IT Professions and Their Future
IT Professions and Their FutureIT Professions and Their Future
IT Professions and Their FutureSvetlin Nakov
 
How to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a JobHow to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a JobSvetlin Nakov
 
Призвание и цели: моята рецепта
Призвание и цели: моята рецептаПризвание и цели: моята рецепта
Призвание и цели: моята рецептаSvetlin Nakov
 
What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?Svetlin Nakov
 
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)Svetlin Nakov
 
Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)Svetlin Nakov
 

Plus de Svetlin Nakov (20)

BG-IT-Edu: отворено учебно съдържание за ИТ учители
BG-IT-Edu: отворено учебно съдържание за ИТ учителиBG-IT-Edu: отворено учебно съдържание за ИТ учители
BG-IT-Edu: отворено учебно съдържание за ИТ учители
 
Programming World in 2024
Programming World in 2024Programming World in 2024
Programming World in 2024
 
AI Tools for Business and Startups
AI Tools for Business and StartupsAI Tools for Business and Startups
AI Tools for Business and Startups
 
AI Tools for Scientists - Nakov (Oct 2023)
AI Tools for Scientists - Nakov (Oct 2023)AI Tools for Scientists - Nakov (Oct 2023)
AI Tools for Scientists - Nakov (Oct 2023)
 
AI Tools for Entrepreneurs
AI Tools for EntrepreneursAI Tools for Entrepreneurs
AI Tools for Entrepreneurs
 
Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023
Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023
Bulgarian Tech Industry - Nakov at Dev.BG All in One Conference 2023
 
AI Tools for Business and Personal Life
AI Tools for Business and Personal LifeAI Tools for Business and Personal Life
AI Tools for Business and Personal Life
 
Дипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин НаковДипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин Наков
 
Дипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООПДипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООП
 
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТСвободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
 
AI and the Professions of the Future
AI and the Professions of the FutureAI and the Professions of the Future
AI and the Professions of the Future
 
Programming Languages Trends for 2023
Programming Languages Trends for 2023Programming Languages Trends for 2023
Programming Languages Trends for 2023
 
IT Professions and How to Become a Developer
IT Professions and How to Become a DeveloperIT Professions and How to Become a Developer
IT Professions and How to Become a Developer
 
GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)
 
IT Professions and Their Future
IT Professions and Their FutureIT Professions and Their Future
IT Professions and Their Future
 
How to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a JobHow to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a Job
 
Призвание и цели: моята рецепта
Призвание и цели: моята рецептаПризвание и цели: моята рецепта
Призвание и цели: моята рецепта
 
What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?
 
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
 
Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)
 

Dernier

Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...Pooja Nehwal
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 

Dernier (20)

Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 

Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor

  • 1. Software Development for the Public Cloud Platforms: Azure vs. App Engine vs. Amazon Svetlin Nakov Telerik Software Academy http://academy.telerik.com
  • 2. Agenda  The Cloud from Developers‘ Perspective  Windows Azure  Google App Engine (GAE)  Amazon Web Services (AWS)  AppHarbor 2
  • 3. The Cloud from Developers' Perspective
  • 4. 4 Cloud??? WTF?!? Computer Located OUtside of Data Center
  • 5. What is Cloud? Cloud ≈ multiple hardware machines combine computing power and resources  Share them between multiple applications  To save costs and use resources more efficiently Public clouds  Provide computing resources on demand  Publicly in Internet  Paid or free of charge (to some limit)  Azure, Amazon AWS, Google App Engine, AppHarbor, Rackspace, Heroku, … 5
  • 6. Why Cloud Matters? Microsoft Azure Cisco Cloud Applications IBM Cloud and Services Apple iCloud Intel Hybrid Cloud Oracle Public Cloud Dell Cloud Computing Solutions SAP NetWeaver on Demand Adobe Creative Cloud Google App Engine CA Cloud Solutions Amazon Web Services Symantec.cloud services HP Cloud Services Salesforce Force.com Cloud Computing Platform VMware Cloud Foundry EMC Atmos Cloud The Rackspace Cloud Delivery Platform 6
  • 7. Cloud Computing Models Infrastructure as a Service (IaaS)  Virtual machines in the cloud on demand  Users install the OS and software they need Platform as a Service (PaaS)  Platform, services and APIs for developers  E.g. .NET + ASP.NET + WCF + SQL Azure  Java + JBoss + JSF + JPA + MongoDB  JavaScript + Node.js + MongoDB + RabbitMQ Software as a Service (SaaS)  Hosted application on demand (e.g. WordPress or SugarCRM) 7
  • 8. Cloud for Developers Moving to the cloud will require new skills  New paradigms and APIs  E.g. NoSQL databases and MapReduce  New platforms and technologies  New deployment model The cloud still supports your existing skills  Known technologies, e.g. ASP.NET and WCF  Your favorite programming languages  Like C#, Java and PHP  Relational databases and SQL 8
  • 9. Cloud Architecture he typical cloud architecture is multi-tier, SOA, highly-scalable and highly-available Load Balancer Computing Computing … Computing Node Node Node Data- Storage Back-End Other bases Services Services Services  At each tier different managed services, 9
  • 10. Cloud Architecture (2) Computing Nodes  Host and run your applications  Different languages and frameworks  E.g. C# + ASP.NET MVC or PHP + Symfony  Stateless by design Databases and Storage  Relational and NoSQL databases  Blob storage, file storage, CDN Other Services  Queues, notifications, logging, email, … 10
  • 12. Windows Azure Microsoft Windows Azure  Fast-growing public cloud  Provides rich PaaS platform  Mainly for .NET developers  Supports all major .NET technologies  ASP.NET MVC, WCF, ADO.NET EF, WWF, …  Provides also Java, PHP and Node.js APIs  No free version, only 3 months trial  Bulgarian citizens cannot register! 12
  • 13. Azure Architecture Azure Load Balancer Compute Compute Compute (Web role) (Worker role) (VM role) VM running Windows Windows VM IIS7 VM C# / .NET ASP.NET / Custom code / Java PHP / other software code SQL Tables Blobs Queues CDN Azure Other Azure / external services 13
  • 14. Windows Azure Services Windows Azure Compute  Computing instances run Windows OS and applications (CPU + RAM + HDD)  Web role  Internet Information Services (IIS) machine for hosting Web applications and WCF services  Worker role  Long-running computations  VM role  Windows VM (non-persistent) 14
  • 15. Windows Azure Services (2) Azure data storage services  Azure Table Storage  Distributed highly-scalable cloud database (stores entities with properties)  Azure Queue Storage  Message queue service  Azure Blobs / Drives  Blob / file storage  NTFS volumes 15
  • 16. Windows Azure Services (3) SQL Azure  SQL Server in the cloud  Highly-available and scalable relational DB Azure Business Analytics  Create reports with tables, charts, maps, etc. Azure Caching  Distributed, in-memory, application cache Azure CDN  Content delivery network 16
  • 17. Azure Pricing Computing Nodes  Shared CPU, 768 MB RAM  $0.02 / hour ($15 / month)  1 Core, 1.75 GB RAM  $0.12 / hour ($90 / month) Storage  $0.125 / GB + $0.01 / 10000 operations SQL Azure Database  100 MB – $0.0067 / hour ($5 / month)  1 GB – $0.0133 / hour ($10 / month) 17
  • 18. Windows Azure Live Demo
  • 20. Google App Engine Google App Engine (GAE)  Leading Java and Python PaaS public cloud  Infrastructure similar to the one driving GMail and Google Docs operated by Google  http://code.google.com/appengine/ App Engine has a completely free version  Provides CPU / bandwidth / storage capable to serve 5 000 000 page views / month  Instant registration  Confirmation by SMS 20
  • 21. App Engine Architecture Load Balancer (Google Front-End Server) App Engine Instances Backends Sandbox running JVM / Sandbox running Python interpreter JVM / Python Java code / Java Web Java code application / Python app Data Cloud Blob Map Tasks store SQL store Reduce queue Other App Engine / external services (Channel API, Memcache, Email, …) 21
  • 22. App Engine Services App Engine instances  Computing units that host the applications  Fully managed sandboxes (not VMs!)  Provide CPU + RAM + storage + language runtime  appengine.google.com App Engine backends  Like the App Engine instances  But provides higher computing resources  Used for background processing 22
  • 23. App Engine Services (2) App Engine datastores  Provide NoSQL schemaless object database  Supports transacts and a query-engine (GQL)  High-replication datastore (HRD)  Master-slave datastore (faster, less-reliable) Cloud SQL  Managed MySQL in App Engine Blobstore / Cloud Storage  Store files / blobs  Has with ACL and REST API 23
  • 24. App Engine Services (3) MapReduce API  Highly-scalable parallel computing API for heavy computing tasks (based on Hadoop) Channel API  Push notifications for JavaScript applications Task Queues  Services for execution of background work Memcache  Distributed in-memory data cache 24
  • 25. App Engine Pricing On-demand Frontend instances  1 instance free  $0.08 / hour ($60 / month) High Replication Datastore (HRD)  1 GB free  $0.24 / GB / month ($0.00032 / GB / hour) Each API has free quota and price per usage  Blobstore API: 5 GB free; $0.13 / GB / month  Datastore API: 50K free; $0.10 / 100k write operations 25
  • 28. Amazon Web Services Amazon Web Services (AWS)  The pioneer of the public clouds  Provides cloud platform and services from 2002  Provides IaaS and PaaS on demand Amazon Elastic Compute Cloud (Amazon EC2)  Virtual machines on demand  Runs Windows / Linux / other OS  Several locations: US, EU, Japan, Brazil, …  http://aws.amazon.com/ec2/ 28
  • 29. AWS Architecture Elastic Load Balancing (ELB) EC2 Instances + Storage (EBS) Any OS and development platform C# / Java / PHP / Python / Ruby / … Any development framework (.NET / Java EE / Symfony / Zend / Django / Rails / Node.js) Dynamo RDB S3 EBS SQS SWF DB Other AWS / external services (ElastiCache, CloudFront CDN, SES, …) 29
  • 30. AWS Services Amazon Elastic Block Store (Amazon EBS)  Virtual hard disk (HDD) volumes  Used with the EC2 to keep the OS file system  http://aws.amazon.com/ebs/ Amazon Simple Storage Service (Amazon S3)  Host binary data (files, images, videos, etc.)  Accessible through the Web  With or without authentication  http://aws.amazon.com/s3/ 30
  • 31. AWS Services (2) Amazon DynamoDB / SimpleDB  Managed NoSQL cloud database  Highly scalable, fault-tolerant  DynamoDB – newer & faster than SimpleDB  http://aws.amazon.com/dynamodb/ Amazon Relational Database Service (RDS)  Managed MySQL and Oracle databases  Scalability, automated backup, replication  http://aws.amazon.com/rds/ 31
  • 32. AWS Services (3) Other AWS services  Amazon SQS (message queue)  Amazon CloudFront (content delivery network)  Amazon ElastiCache (caching)  Amazon Route 53 (cloud DNS)  Amazon SES (email) Pricing  On-demand pricing (per hour / per GB)  1-year free trial (credit card required) 32
  • 33. Amazon AWS Pricing On-Demand EC2 Instances  1 Core, 1.7 GB RAM, Linux  $0.08 / hour ($60 / month)  1 Core, 1.7 GB RAM, Windows  $0.115 / hour ($86 / month) Storage (EBS)  $0.10 / GB + $0.10 per 1 million requests Oracle Database (1 Core, 1.7 GB RAM)  DB instance: $0.155 / hour ($116 / month)  DB storage: paid like EBS storage 33
  • 35. AppHarbor AppHarbor – cloud platform for .NET apps  Supports a classical .NET development stack  C#, .NET Framework, ASP.NET (Web Forms and MVC), WCF, WWF, ADO.NET Entity Framework, …  Deployment through Git / SVN / TFS  Automated build process (compilation + unit tests)  Build-in load balancing  Built on top of Amazon AWS  Rich set of add-on services 35
  • 36. AppHarbor Architecture Load Balancer (Nginx) Web worker Background instances workers Managed IIS Managed Windows environment environment C# / ASP.NET MVC / C# code Web Forms / WCF Managed SQL MongoDB, IronMQ, Server / MySQL CouchDB RabitMQ Other AppHarbor Add-On Services 36
  • 37. AppHarbor: Add-Ons Airbrake (error logging) Blitz (performance monitoring) CloudAMQP (RabbitMQ) Cloudant (CouchDB) CloudMailin (incoming email) Dedicated SQL Server JustOneDB (NoSLQ database) Logentries (log management) Mailgun (email send / receive) 37
  • 38. AppHarbor: Add-Ons (2) Memcacher (in-memory caching) MongoHQ (managed MongoDB) MongoLab (managed MongoDB) MySQL (shared MySQL DB) RavenHQ (NoSQL database) Redis To Go (key-value store) SendGrid (email delivery) StillAlive (app monitoring) Shared SQL Server (managed instance) 38
  • 39. AppHarbor Pricing AppHarbor free plan  1 Web worker instance per application  Unlimited applications  20 MB SQL Server + 20 MB MySQL Paid plans  $49 month per instance (Web worker or Background worker)  10 GB Shared SQL Server DB – $10 / month  10 GB Shared MySQL DB – $10 / month  Custom domain – $10 / month 39
  • 41. More Resources Free Cloud Development Course  Each Wednesday, Telerik Software Academy Python  clouddevcourse.telerik.com 41
  • 42. Software Development for the Public Cloud Platforms: Azure vs. App Engine vs. Amazon Questions? http://academy.telerik.com