SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Downloaden Sie, um offline zu lesen
Lets SAAS-ify that Desktop
       Application
                     Chirag Jog
                        Clogeny




                                  1
About me
o Chirag Jog
  o Computer Science Passout, PICT
  o Currently CTO at Clogeny Technologies.
  o Working on some cutting-edge Products in Cloud
    Computing.
  o chirag.jog@gmail.com




                                                     2
Agenda
o Traditional Web Setup
o Difference between IaaS, PaaS and SaaS
o Different ways to SaaS’ify
o Advantages of PaaS
o Real life Scenario
o Advantages of IaaS
o Using IaaS to SaaS’ify
o Using Amazon Web Services as an example for deployment
o Improving Business Logic
o Conclusion
                                                           3
Traditional Web 1.0 setup




Source : http://onsaas.net/wp-content/uploads/2008/06/iaas-paas-
saas.png
                                                                   4
Infrastructure as a Service (IaaS)




                                     5
Platform as a Service (PaaS)




                               6
Software as a Service (SaaS)




                               7
Different ways to ‘SaaS’ify


     SaaS                 SaaS               SaaS




      Shared          Platform As A       Infrastructure
  Infrastructure         Service           As A Service




Hosting companies   Azure, AppEngine,   Amazon’s EC2,
and solutions.      Force.com           Rackspace, Gogrid

                                                            8
Different ways to ‘SaaS’ify


     SaaS                 SaaS             SaaS




      Shared          Platform As A     Infrastructure
  Infrastructure         Service         As A Service




Hosting companies   AppEngine,        Amazon’s AWS,
and solutions.      Force.com         Rackspace

                                                         9
Advantages of PaaS
o Developers can focus on development and innovation
  without worrying about the infrastructure.
o The PaaS provider manages upgrades, patches, and
  other routine system maintenance.
o PaaS upgrades will not break the applications running
  on it.
o Inherent Automatic scalability based on workloads.
o Obvious Advantages of Cloud i.e scalability, reliability
  etc


                                                        10
Real Life!!
o Application already developed in pre-Cloud days.
o Developed for Desktop Environments .
o Depend on specific languages/libraries that PaaS
  solutions do not provide.
o Optimized stack/component missing.
o Using PaaS would require re-writing major chunks of
  code.




                                                        11
Real Life!!
o Problems with re-write:
  o Existing Code has been stabilized and optimized
    over months and years.
  o Specific library support might been missing.
     o Investigate replacements
  o Extensive testing needs to be done.
  o Time to Market takes a drastic hit.




                                                      12
Real Example of Application
o Code written entirely in C/C++ Language.
o Using math libraries for doing complex calculations.
o Results generated in terms of Graphs and Charts.
o Business need:
  o Desire to have wider customer reach.
  o Want to hook up this application to a portal.
  o Want their application to be deployed ASAP with minimal
    changes.
  o Minimal time to market.


                                                         13
Different ways to ‘SaaS’ify


     SaaS                 SaaS             SaaS




      Shared          Platform As A     Infrastructure
  Infrastructure         Service         As A Service




Hosting companies   AppEngine,        Amazon’s AWS,
and solutions.      Force.com         Rackspace

                                                         14
Advantages of IaaS
o Well-tested environment available.
o Directly deploy the existing application onto the
  Cloud Server with no modifications.
o All required dependencies can be resolved easily by
  installing required libraries.
o Minimal modifications to convert the existing solution
  to Client-Server model.
o Easily provide a front-end from web portal or such.


                                                        15
Using IaaS to SaaS’ify the App
o Scenario : Stand-alone Desktop Application
o Steps involved are:




                                               16
Using IaaS to SaaS’ify the App
o Scenario : Stand-alone Desktop Application
o Steps involved are:
  o Convert stand-alone application to client - server
    model.




                                                     17
Using IaaS to SaaS’ify the App
o Scenario : Stand-alone Desktop Application
o Steps involved are:
  o Convert stand-alone application to client - server
    model.
  o Introduce Cloud Element.




                                                     18
Using IaaS to SaaS’ify the App
o Scenario : Stand-alone Desktop Application
o Steps involved are:
  o Convert stand-alone application to client - server
    model.
  o Introduce Cloud Element.
  o Add business logic via Cloud




                                                     19
Using IaaS to SaaS’ify the App
o Scenario : Stand-alone Desktop Application
o Steps involved are:
  o Convert stand-alone application to client – server
    model.
  o Introduce Cloud Element.
  o Add business logic via Cloud
  o Link Portal /outside world interface to this system.



                                                      20
Using IaaS to SaaS’ify the App
o Scenario : Stand-alone Desktop Application
o Steps involved are:
  o Convert stand-alone application to client – server
    model.
  o Introduce Cloud Element.
  o Add business logic via Cloud
  o Link Portal /outside world interface to this system.
  o Test!! Test!! Test!!

                                                      21
Client-Server Architecture




                             LAMP
                             Stack
                                22
Cloud Component


                                  Amazon EC2
                                    Cloud
  Web Server




    Amazon Web Services:

1. Elastic Computing (EC2)
2. Simple Queue Service (SQS)
3. Simple Storage Service. (S3)
4. Automatic Scaling. (AS)




                                               23
Using Amazon Web Services
o Elastic Compute (EC2)
o Simple Queue Service (SQS)
o Simple Storage Service (S3)
o Automatic Scaling (AS)




                                 24
Amazon Simple Queue Service(SQS)
o Distributed Queue System enabling web services
  applications to communicate.
o Queue acts as an unlimited buffer – No Producer-
  Consumer Problem.
o Multiple writers and readers
o Variable message size
o Unlimited queues and messages
o Access control
o Redundant infrastructure
                                                     25
Amazon Simple Queue Service(SQS)
              API
o CreateQueue – Creates a queue with specific
  QueueName.
o SendMessage – send message (PUSH)
o ReceiveMessage – receive message from queue (POP)
o DeleteQueue – Delete a queue (All messages in the
  queue lost)




                                                      26
Amazon Simple Storage Service(S3)

o Useful for file serving (multimedia, documents)
  reducing load on compute servers.
o Storage for the internet.
o Makes web-scale computing easier.
o Data is stored in buckets.
o Data is stored or retrieved using a key, value pair.
o Simple REST/SOAP Apis to retrieve and store data.
o Access Control.

                                                         27
Amazon Simple Storage Service(S3)
          basic APIs
o PUT Bucket – Creates a new bucket
  o Creates sampleBucket.s3.amazonaws.com
o GET Bucket – Lists information about bucket.
o PUT object – put object into the bucket
o GET object – retrieve object
o DELETE object – Deletes the object
o DELETE bucket – delete associated attributes or the
  buckets themselves

                                                        28
Web Server
                    Simple Cloud Design


                   Queue request     Store result Blob in
                   to Server using   S3
                   SQS




  Queue response                                       EC2 Server instance
  back to client                                       runs the
  using SQS                                            software/application



                                                                       29
Amazon Automatic Scaling(AS)

o Automatically add compute capacity when application
  usage rises and remove it when usage drops.
o Predefined triggers and thresholds.
o Triggers are based on parameters like bandwidth
  usage or CPU Utilization.
o Triggers are based on data collected from Amazon’s
  CloudWatch Monitoring Tool.
o Works across multiple Availability zones.


                                                       30
Amazon Automatic Scaling(AS) API

o as-create-launch-config– Create a group of EC2
  instances of which the application will run.
o as-create-auto-scaling-group - This call sets the
  parameters that governs when and how to scale up
  and down an Auto Scaling group.
o as-create-or-update-trigger – Create the triggers to
  indicate when to scale up or down.




                                                         31
Using Automatic Scaling (AS)




      Use Amazon’s
      Automatic Scaling
      (AS)


                               32
Improving Business Logic
o Auto – scalability to load balance .
o Multiple classes of users.
o Top Class user does not have to wait.
o Lower class users’ request is queued.
o Extension : Multiple queues to service multiple classes
  o Premium user – No queuing, direct service
  o Medium user – Queued, timely
  o Standard user – Queued, untimely


                                                       33
Improving Business Logic
                    Standard Users




                                Mid-range Users




  High-End Users




Support Multiple
Classes of Users.
                                                  34
Costs!
o Cheapest EC2 Linux Instance - $0.085/hour
o Amazon’s Auto scaling is free. Charges only for using
  Amazon’s CloudWatch.
o Amazon‘s SQS –
  o No charges for the first 100,000 Amazon SQS Requests.
  o $0.01 per 10,000 Amazon SQS Requests
o Amazon’s S3 –
  o Storage Used: $0.15 per GB-Month of storage.
  o Network Data Transferred: $0.20 per GB of data transferred.


                                                             35
Reducing Vendor Tie-in
o Reduce dependency on vendor specific
  services.
o Replace SQS with OpenMQ, Apache ActiveMQ
o Replace CloudWatch with Hyperic
o Implement your own Auto Scaling Logic.




                                             36
Conclusion
Effectively deploy your application without major
  modifications.
Run the application is original environment itself.
Add some more useful business logic to service different
  class of users.
Obvious Advantages of Cloud Computing applicable
  Pay only for what you use.
  Scale up/down based on load
  Design to make system more robust

                                                      37
Questions and Comments




                         38

Weitere ähnliche Inhalte

Was ist angesagt?

AWS Summit Milan - Applicazioni Enterprise con AWS
AWS Summit Milan - Applicazioni Enterprise con AWSAWS Summit Milan - Applicazioni Enterprise con AWS
AWS Summit Milan - Applicazioni Enterprise con AWS
Amazon Web Services
 

Was ist angesagt? (20)

Devops on serverless
Devops on serverlessDevops on serverless
Devops on serverless
 
Continuous Integration and Continuous Delivery for your serverless apps - Seb...
Continuous Integration and Continuous Delivery for your serverless apps - Seb...Continuous Integration and Continuous Delivery for your serverless apps - Seb...
Continuous Integration and Continuous Delivery for your serverless apps - Seb...
 
Getting-started-with-containers on AWS
Getting-started-with-containers on AWSGetting-started-with-containers on AWS
Getting-started-with-containers on AWS
 
Getting Started with Containers on AWS
Getting Started with Containers on AWSGetting Started with Containers on AWS
Getting Started with Containers on AWS
 
Masterclass Webinar - AWS CloudFormation
Masterclass Webinar - AWS CloudFormationMasterclass Webinar - AWS CloudFormation
Masterclass Webinar - AWS CloudFormation
 
AWSomeDay Roadshow 2017
AWSomeDay Roadshow 2017AWSomeDay Roadshow 2017
AWSomeDay Roadshow 2017
 
Basics AWS Presentation
Basics AWS PresentationBasics AWS Presentation
Basics AWS Presentation
 
Running kubernetes with amazon eks
Running kubernetes with amazon eksRunning kubernetes with amazon eks
Running kubernetes with amazon eks
 
Your First Week with Amazon EC2
Your First Week with Amazon EC2Your First Week with Amazon EC2
Your First Week with Amazon EC2
 
Virtual AWSome Day Training
Virtual AWSome Day TrainingVirtual AWSome Day Training
Virtual AWSome Day Training
 
CloudStack-Development-Story
CloudStack-Development-StoryCloudStack-Development-Story
CloudStack-Development-Story
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
 
Utilizando containers Docker na AWS
Utilizando containers Docker na AWSUtilizando containers Docker na AWS
Utilizando containers Docker na AWS
 
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
 
Workshop: Deploy a Deep Learning Framework on Amazon ECS
Workshop: Deploy a Deep Learning Framework on Amazon ECSWorkshop: Deploy a Deep Learning Framework on Amazon ECS
Workshop: Deploy a Deep Learning Framework on Amazon ECS
 
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
 
Container, Container, Container -유재석 (AWS 솔루션즈 아키텍트)
Container, Container, Container -유재석 (AWS 솔루션즈 아키텍트)Container, Container, Container -유재석 (AWS 솔루션즈 아키텍트)
Container, Container, Container -유재석 (AWS 솔루션즈 아키텍트)
 
[AWS Dev Day] 실습워크샵 | 모두를 위한 컴퓨터 비전 딥러닝 툴킷, GluonCV 따라하기
[AWS Dev Day] 실습워크샵 | 모두를 위한 컴퓨터 비전 딥러닝 툴킷, GluonCV 따라하기[AWS Dev Day] 실습워크샵 | 모두를 위한 컴퓨터 비전 딥러닝 툴킷, GluonCV 따라하기
[AWS Dev Day] 실습워크샵 | 모두를 위한 컴퓨터 비전 딥러닝 툴킷, GluonCV 따라하기
 
My First Big Data Application
My First Big Data ApplicationMy First Big Data Application
My First Big Data Application
 
AWS Summit Milan - Applicazioni Enterprise con AWS
AWS Summit Milan - Applicazioni Enterprise con AWSAWS Summit Milan - Applicazioni Enterprise con AWS
AWS Summit Milan - Applicazioni Enterprise con AWS
 

Andere mochten auch (6)

W J L A B S R E M I T V2
W J  L A B S  R E M I T V2W J  L A B S  R E M I T V2
W J L A B S R E M I T V2
 
Comcast Dedicated Ethernet 2010 Dave Neugent 904 374 7710
Comcast Dedicated Ethernet 2010   Dave Neugent  904 374 7710Comcast Dedicated Ethernet 2010   Dave Neugent  904 374 7710
Comcast Dedicated Ethernet 2010 Dave Neugent 904 374 7710
 
Current state of affairs cloud computing
Current state of affairs   cloud computingCurrent state of affairs   cloud computing
Current state of affairs cloud computing
 
W J L A B S R E M I T V2
W J  L A B S  R E M I T V2W J  L A B S  R E M I T V2
W J L A B S R E M I T V2
 
Navikaran
NavikaranNavikaran
Navikaran
 
Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how
 

Ähnlich wie Lets saasify that desktop application

Building an Enterprise Cloud with WSO2 Private PaaS
Building an Enterprise Cloud with WSO2 Private PaaSBuilding an Enterprise Cloud with WSO2 Private PaaS
Building an Enterprise Cloud with WSO2 Private PaaS
WSO2
 
Moving Your Enterprise to the Cloud
Moving Your Enterprise to the CloudMoving Your Enterprise to the Cloud
Moving Your Enterprise to the Cloud
Imesh Gunaratne
 
AWS Cloud School, Barcelona, Spain - intro and closing remarks
AWS Cloud School, Barcelona, Spain - intro and closing remarksAWS Cloud School, Barcelona, Spain - intro and closing remarks
AWS Cloud School, Barcelona, Spain - intro and closing remarks
klamarv
 

Ähnlich wie Lets saasify that desktop application (20)

saa3_wk5.pdf
saa3_wk5.pdfsaa3_wk5.pdf
saa3_wk5.pdf
 
WSO2Con EU 2016: Planning Your Cloud Strategy
WSO2Con EU 2016: Planning Your Cloud StrategyWSO2Con EU 2016: Planning Your Cloud Strategy
WSO2Con EU 2016: Planning Your Cloud Strategy
 
AWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:CapAWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:Cap
 
AWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:CapAWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:Cap
 
Java Web Programming Using Cloud Platform: Module 10
Java Web Programming Using Cloud Platform: Module 10Java Web Programming Using Cloud Platform: Module 10
Java Web Programming Using Cloud Platform: Module 10
 
Reply Labcamp Rome - AWS Zombie - Serverless and Microservices
Reply Labcamp Rome - AWS Zombie - Serverless and MicroservicesReply Labcamp Rome - AWS Zombie - Serverless and Microservices
Reply Labcamp Rome - AWS Zombie - Serverless and Microservices
 
Cloud Architecture - Multi Cloud, Edge, On-Premise
Cloud Architecture - Multi Cloud, Edge, On-PremiseCloud Architecture - Multi Cloud, Edge, On-Premise
Cloud Architecture - Multi Cloud, Edge, On-Premise
 
AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)
 
Building an Enterprise Cloud with WSO2 Private PaaS
Building an Enterprise Cloud with WSO2 Private PaaSBuilding an Enterprise Cloud with WSO2 Private PaaS
Building an Enterprise Cloud with WSO2 Private PaaS
 
Building Cross-Cloud Platform Cognitive Microservices Using Serverless Archit...
Building Cross-Cloud Platform Cognitive Microservices Using Serverless Archit...Building Cross-Cloud Platform Cognitive Microservices Using Serverless Archit...
Building Cross-Cloud Platform Cognitive Microservices Using Serverless Archit...
 
Planning Your Cloud Strategy
Planning Your Cloud StrategyPlanning Your Cloud Strategy
Planning Your Cloud Strategy
 
Sap on aws_implementation_guide
Sap on aws_implementation_guideSap on aws_implementation_guide
Sap on aws_implementation_guide
 
Moving Your Enterprise to the Cloud
Moving Your Enterprise to the CloudMoving Your Enterprise to the Cloud
Moving Your Enterprise to the Cloud
 
Running Business Critical Workloads on AWS – Nam Je Cho
Running Business Critical Workloads on AWS – Nam Je ChoRunning Business Critical Workloads on AWS – Nam Je Cho
Running Business Critical Workloads on AWS – Nam Je Cho
 
AWS re:Invent 2016: How to Launch a 100K-User Corporate Back Office with Micr...
AWS re:Invent 2016: How to Launch a 100K-User Corporate Back Office with Micr...AWS re:Invent 2016: How to Launch a 100K-User Corporate Back Office with Micr...
AWS re:Invent 2016: How to Launch a 100K-User Corporate Back Office with Micr...
 
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as CodeAWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
 
PARTNER PRESENTATION: Transform into a Cloud First Business with Capgemini’s ...
PARTNER PRESENTATION: Transform into a Cloud First Business with Capgemini’s ...PARTNER PRESENTATION: Transform into a Cloud First Business with Capgemini’s ...
PARTNER PRESENTATION: Transform into a Cloud First Business with Capgemini’s ...
 
AWS Cloud School, Barcelona, Spain - intro and closing remarks
AWS Cloud School, Barcelona, Spain - intro and closing remarksAWS Cloud School, Barcelona, Spain - intro and closing remarks
AWS Cloud School, Barcelona, Spain - intro and closing remarks
 
AWS DevOps: Introduction to DevOps on AWS
  AWS DevOps: Introduction to DevOps on AWS  AWS DevOps: Introduction to DevOps on AWS
AWS DevOps: Introduction to DevOps on AWS
 
[AWS Container Service] Getting Started with Cloud Map, App Mesh and Firecracker
[AWS Container Service] Getting Started with Cloud Map, App Mesh and Firecracker[AWS Container Service] Getting Started with Cloud Map, App Mesh and Firecracker
[AWS Container Service] Getting Started with Cloud Map, App Mesh and Firecracker
 

Lets saasify that desktop application

  • 1. Lets SAAS-ify that Desktop Application Chirag Jog Clogeny 1
  • 2. About me o Chirag Jog o Computer Science Passout, PICT o Currently CTO at Clogeny Technologies. o Working on some cutting-edge Products in Cloud Computing. o chirag.jog@gmail.com 2
  • 3. Agenda o Traditional Web Setup o Difference between IaaS, PaaS and SaaS o Different ways to SaaS’ify o Advantages of PaaS o Real life Scenario o Advantages of IaaS o Using IaaS to SaaS’ify o Using Amazon Web Services as an example for deployment o Improving Business Logic o Conclusion 3
  • 4. Traditional Web 1.0 setup Source : http://onsaas.net/wp-content/uploads/2008/06/iaas-paas- saas.png 4
  • 5. Infrastructure as a Service (IaaS) 5
  • 6. Platform as a Service (PaaS) 6
  • 7. Software as a Service (SaaS) 7
  • 8. Different ways to ‘SaaS’ify SaaS SaaS SaaS Shared Platform As A Infrastructure Infrastructure Service As A Service Hosting companies Azure, AppEngine, Amazon’s EC2, and solutions. Force.com Rackspace, Gogrid 8
  • 9. Different ways to ‘SaaS’ify SaaS SaaS SaaS Shared Platform As A Infrastructure Infrastructure Service As A Service Hosting companies AppEngine, Amazon’s AWS, and solutions. Force.com Rackspace 9
  • 10. Advantages of PaaS o Developers can focus on development and innovation without worrying about the infrastructure. o The PaaS provider manages upgrades, patches, and other routine system maintenance. o PaaS upgrades will not break the applications running on it. o Inherent Automatic scalability based on workloads. o Obvious Advantages of Cloud i.e scalability, reliability etc 10
  • 11. Real Life!! o Application already developed in pre-Cloud days. o Developed for Desktop Environments . o Depend on specific languages/libraries that PaaS solutions do not provide. o Optimized stack/component missing. o Using PaaS would require re-writing major chunks of code. 11
  • 12. Real Life!! o Problems with re-write: o Existing Code has been stabilized and optimized over months and years. o Specific library support might been missing. o Investigate replacements o Extensive testing needs to be done. o Time to Market takes a drastic hit. 12
  • 13. Real Example of Application o Code written entirely in C/C++ Language. o Using math libraries for doing complex calculations. o Results generated in terms of Graphs and Charts. o Business need: o Desire to have wider customer reach. o Want to hook up this application to a portal. o Want their application to be deployed ASAP with minimal changes. o Minimal time to market. 13
  • 14. Different ways to ‘SaaS’ify SaaS SaaS SaaS Shared Platform As A Infrastructure Infrastructure Service As A Service Hosting companies AppEngine, Amazon’s AWS, and solutions. Force.com Rackspace 14
  • 15. Advantages of IaaS o Well-tested environment available. o Directly deploy the existing application onto the Cloud Server with no modifications. o All required dependencies can be resolved easily by installing required libraries. o Minimal modifications to convert the existing solution to Client-Server model. o Easily provide a front-end from web portal or such. 15
  • 16. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: 16
  • 17. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: o Convert stand-alone application to client - server model. 17
  • 18. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: o Convert stand-alone application to client - server model. o Introduce Cloud Element. 18
  • 19. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: o Convert stand-alone application to client - server model. o Introduce Cloud Element. o Add business logic via Cloud 19
  • 20. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: o Convert stand-alone application to client – server model. o Introduce Cloud Element. o Add business logic via Cloud o Link Portal /outside world interface to this system. 20
  • 21. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: o Convert stand-alone application to client – server model. o Introduce Cloud Element. o Add business logic via Cloud o Link Portal /outside world interface to this system. o Test!! Test!! Test!! 21
  • 22. Client-Server Architecture LAMP Stack 22
  • 23. Cloud Component Amazon EC2 Cloud Web Server Amazon Web Services: 1. Elastic Computing (EC2) 2. Simple Queue Service (SQS) 3. Simple Storage Service. (S3) 4. Automatic Scaling. (AS) 23
  • 24. Using Amazon Web Services o Elastic Compute (EC2) o Simple Queue Service (SQS) o Simple Storage Service (S3) o Automatic Scaling (AS) 24
  • 25. Amazon Simple Queue Service(SQS) o Distributed Queue System enabling web services applications to communicate. o Queue acts as an unlimited buffer – No Producer- Consumer Problem. o Multiple writers and readers o Variable message size o Unlimited queues and messages o Access control o Redundant infrastructure 25
  • 26. Amazon Simple Queue Service(SQS) API o CreateQueue – Creates a queue with specific QueueName. o SendMessage – send message (PUSH) o ReceiveMessage – receive message from queue (POP) o DeleteQueue – Delete a queue (All messages in the queue lost) 26
  • 27. Amazon Simple Storage Service(S3) o Useful for file serving (multimedia, documents) reducing load on compute servers. o Storage for the internet. o Makes web-scale computing easier. o Data is stored in buckets. o Data is stored or retrieved using a key, value pair. o Simple REST/SOAP Apis to retrieve and store data. o Access Control. 27
  • 28. Amazon Simple Storage Service(S3) basic APIs o PUT Bucket – Creates a new bucket o Creates sampleBucket.s3.amazonaws.com o GET Bucket – Lists information about bucket. o PUT object – put object into the bucket o GET object – retrieve object o DELETE object – Deletes the object o DELETE bucket – delete associated attributes or the buckets themselves 28
  • 29. Web Server Simple Cloud Design Queue request Store result Blob in to Server using S3 SQS Queue response EC2 Server instance back to client runs the using SQS software/application 29
  • 30. Amazon Automatic Scaling(AS) o Automatically add compute capacity when application usage rises and remove it when usage drops. o Predefined triggers and thresholds. o Triggers are based on parameters like bandwidth usage or CPU Utilization. o Triggers are based on data collected from Amazon’s CloudWatch Monitoring Tool. o Works across multiple Availability zones. 30
  • 31. Amazon Automatic Scaling(AS) API o as-create-launch-config– Create a group of EC2 instances of which the application will run. o as-create-auto-scaling-group - This call sets the parameters that governs when and how to scale up and down an Auto Scaling group. o as-create-or-update-trigger – Create the triggers to indicate when to scale up or down. 31
  • 32. Using Automatic Scaling (AS) Use Amazon’s Automatic Scaling (AS) 32
  • 33. Improving Business Logic o Auto – scalability to load balance . o Multiple classes of users. o Top Class user does not have to wait. o Lower class users’ request is queued. o Extension : Multiple queues to service multiple classes o Premium user – No queuing, direct service o Medium user – Queued, timely o Standard user – Queued, untimely 33
  • 34. Improving Business Logic Standard Users Mid-range Users High-End Users Support Multiple Classes of Users. 34
  • 35. Costs! o Cheapest EC2 Linux Instance - $0.085/hour o Amazon’s Auto scaling is free. Charges only for using Amazon’s CloudWatch. o Amazon‘s SQS – o No charges for the first 100,000 Amazon SQS Requests. o $0.01 per 10,000 Amazon SQS Requests o Amazon’s S3 – o Storage Used: $0.15 per GB-Month of storage. o Network Data Transferred: $0.20 per GB of data transferred. 35
  • 36. Reducing Vendor Tie-in o Reduce dependency on vendor specific services. o Replace SQS with OpenMQ, Apache ActiveMQ o Replace CloudWatch with Hyperic o Implement your own Auto Scaling Logic. 36
  • 37. Conclusion Effectively deploy your application without major modifications. Run the application is original environment itself. Add some more useful business logic to service different class of users. Obvious Advantages of Cloud Computing applicable Pay only for what you use. Scale up/down based on load Design to make system more robust 37