SlideShare a Scribd company logo
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
IaaS




http://www.keithpij.com/Home/tabid/36/ctl/Terms/Default.aspx
                                                               5
PaaS




       6
SaaS




       7
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

                                                         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 No up-front investment in hardware and software means lower
  risk.
o Developers only need a PC and an Internet connection to start
  building applications.
o The PaaS provider manages upgrades, patches, and other
  routine system maintenance.
o PaaS upgrades will not break the applications running on it.
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 libraries that PaaS solutions do not provide.
o Using PaaS would require re-writing major chunks of code.
o Problems with re-write:
   o Existing Code has been stabilized over months and years.
   o Extensive testing needs to be done.
   o Time to Market takes a drastic hit.
   o Specific library support might been missing.


                                                                11
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 Desire to have wider customer reach.
o Want to hook up this application to a portal.




                                                     12
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

                                                         13
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.


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

                                                      15
Client-Server Architecture




                             LAMP
                             Stack
                                16
Cloud Component


                                  Amazon EC2
                                    Cloud
   Web Server



   Amazon Web Services:

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




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




                                 18
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
                                                     19
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 (PULL)
o DeleteQueue – Delete a queue (All messages in the
  queue lost)




                                                      20
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.

                                                         21
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

                                                        22
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



                                                                       23
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




                                                       24
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.


                                                       25
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.




                                                         26
Improving Business Logic




Support Multiple
Classes of Users.
                            Use Amazon’s
                            Automatic Scaling
                            (AS)


                                                27
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.



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




                                           29
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

                                                      30
Questions and Comments




                         31

More Related Content

What's hot (13)

PDF
[AWS Dev Day] 인공지능 / 기계 학습 | AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
Amazon Web Services Korea
 
PDF
Overview of Amazon Web Services
Harish Ganesan
 
PDF
Cloud PaaS with Java
Eberhard Wolff
 
PPTX
AWS User Group 5/12 meetup - ECS
Shimon Tolts
 
PDF
AWSome Day - Rio de Janeiro - Brasil
Amazon Web Services LATAM
 
PPTX
AWS CloudFormation template with single & redundant system
Naoya Hashimoto
 
PPT
Cloud Computing With AWS
Munish Gupta
 
PPTX
AWS DevDay Berlin - Automating building blocks choices you will face with con...
Cobus Bernard
 
PDF
5 things you don't know about Amazon Web Services
Simone Brunozzi
 
PPTX
Basics AWS Presentation
Shyam Kumar
 
PPT
Oracle OpenWorld 2010大会发布的新公告及关键信息
slidethanks
 
PDF
VMware and AWS Together - VMware Cloud on AWS
Kristana Kane
 
PDF
20200212 AWS Black Belt Online Seminar AWS Systems Manager
Amazon Web Services Japan
 
[AWS Dev Day] 인공지능 / 기계 학습 | AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
Amazon Web Services Korea
 
Overview of Amazon Web Services
Harish Ganesan
 
Cloud PaaS with Java
Eberhard Wolff
 
AWS User Group 5/12 meetup - ECS
Shimon Tolts
 
AWSome Day - Rio de Janeiro - Brasil
Amazon Web Services LATAM
 
AWS CloudFormation template with single & redundant system
Naoya Hashimoto
 
Cloud Computing With AWS
Munish Gupta
 
AWS DevDay Berlin - Automating building blocks choices you will face with con...
Cobus Bernard
 
5 things you don't know about Amazon Web Services
Simone Brunozzi
 
Basics AWS Presentation
Shyam Kumar
 
Oracle OpenWorld 2010大会发布的新公告及关键信息
slidethanks
 
VMware and AWS Together - VMware Cloud on AWS
Kristana Kane
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
Amazon Web Services Japan
 

Viewers also liked (6)

PDF
MedicinMan September 2012
Anup Soans
 
PPT
E learning forum oct 2013 - Introduction & News Update
JISC RSC Eastern
 
PPTX
Jisc RSC Eastern Technical Managers forum June 2013 'BYOD Tech Managers forum'
JISC RSC Eastern
 
PPT
Rsc eastern 2010
JISC RSC Eastern
 
PPT
Jisc RSC Eastern Learning Resources Managers forum 14/03/14 - Mobile users an...
JISC RSC Eastern
 
PPT
Indic threads pune12-polyglot & functional programming on jvm
IndicThreads
 
MedicinMan September 2012
Anup Soans
 
E learning forum oct 2013 - Introduction & News Update
JISC RSC Eastern
 
Jisc RSC Eastern Technical Managers forum June 2013 'BYOD Tech Managers forum'
JISC RSC Eastern
 
Rsc eastern 2010
JISC RSC Eastern
 
Jisc RSC Eastern Learning Resources Managers forum 14/03/14 - Mobile users an...
JISC RSC Eastern
 
Indic threads pune12-polyglot & functional programming on jvm
IndicThreads
 
Ad

Similar to Lets SAASify that Desktop Application (20)

PDF
AWS re:Invent 2016 Day 2 Keynote re:Cap
Adrian Hornsby
 
PDF
AWS re:Invent 2016 Day 2 Keynote re:Cap
Ian Massingham
 
PDF
saa3_wk5.pdf
Michgo1
 
PDF
Java Web Programming Using Cloud Platform: Module 10
IMC Institute
 
PPTX
Scheduled Retweets Using AWS Lambda
Srushith Repakula
 
PPTX
Auto Retweets Using AWS Lambda
CodeOps Technologies LLP
 
PDF
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
IndicThreads
 
PDF
Moving Your Enterprise to the Cloud
Imesh Gunaratne
 
PDF
AWS Interview Questions and Answers_2023.pdf
nishajeni1
 
PDF
AWS Interview Questions and Answers.pdf
nishajeni1
 
PDF
Building an Enterprise Cloud with WSO2 Private PaaS
WSO2
 
PDF
A clear strategy for moving your enterprise to the cloud
WSO2
 
PDF
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
nishajeni1
 
PPTX
Cloud computing: highlights
Luís Bastião Silva
 
PPTX
Reply Labcamp Rome - AWS Zombie - Serverless and Microservices
Andrea Mercanti
 
PDF
Aws interview questions and answers
kavinilavuG
 
PDF
Fundamentals of Cloud Computing & AWS
Bhuvaneswari Subramani
 
PDF
Aws 101 A walk-through the aws cloud (2013)
Martin Yan
 
PPTX
Lecture 6 (Cloud Service Provider)-1.pptx
sarthaksenapati2
 
PDF
AWS Cloud School, Barcelona, Spain - intro and closing remarks
klamarv
 
AWS re:Invent 2016 Day 2 Keynote re:Cap
Adrian Hornsby
 
AWS re:Invent 2016 Day 2 Keynote re:Cap
Ian Massingham
 
saa3_wk5.pdf
Michgo1
 
Java Web Programming Using Cloud Platform: Module 10
IMC Institute
 
Scheduled Retweets Using AWS Lambda
Srushith Repakula
 
Auto Retweets Using AWS Lambda
CodeOps Technologies LLP
 
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
IndicThreads
 
Moving Your Enterprise to the Cloud
Imesh Gunaratne
 
AWS Interview Questions and Answers_2023.pdf
nishajeni1
 
AWS Interview Questions and Answers.pdf
nishajeni1
 
Building an Enterprise Cloud with WSO2 Private PaaS
WSO2
 
A clear strategy for moving your enterprise to the cloud
WSO2
 
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
nishajeni1
 
Cloud computing: highlights
Luís Bastião Silva
 
Reply Labcamp Rome - AWS Zombie - Serverless and Microservices
Andrea Mercanti
 
Aws interview questions and answers
kavinilavuG
 
Fundamentals of Cloud Computing & AWS
Bhuvaneswari Subramani
 
Aws 101 A walk-through the aws cloud (2013)
Martin Yan
 
Lecture 6 (Cloud Service Provider)-1.pptx
sarthaksenapati2
 
AWS Cloud School, Barcelona, Spain - intro and closing remarks
klamarv
 
Ad

More from IndicThreads (20)

PPTX
Http2 is here! And why the web needs it
IndicThreads
 
ODP
Understanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
IndicThreads
 
PPT
Go Programming Language - Learning The Go Lang way
IndicThreads
 
PPT
Building Resilient Microservices
IndicThreads
 
PPT
App using golang indicthreads
IndicThreads
 
PDF
Building on quicksand microservices indicthreads
IndicThreads
 
PDF
How to Think in RxJava Before Reacting
IndicThreads
 
PPT
Iot secure connected devices indicthreads
IndicThreads
 
PDF
Real world IoT for enterprises
IndicThreads
 
PPT
IoT testing and quality assurance indicthreads
IndicThreads
 
PPT
Functional Programming Past Present Future
IndicThreads
 
PDF
Harnessing the Power of Java 8 Streams
IndicThreads
 
PDF
Building & scaling a live streaming mobile platform - Gr8 road to fame
IndicThreads
 
PPTX
Internet of things architecture perspective - IndicThreads Conference
IndicThreads
 
PDF
Cars and Computers: Building a Java Carputer
IndicThreads
 
PPTX
Scrap Your MapReduce - Apache Spark
IndicThreads
 
PPT
Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
IndicThreads
 
PPTX
Speed up your build pipeline for faster feedback
IndicThreads
 
PPT
Unraveling OpenStack Clouds
IndicThreads
 
PPTX
Digital Transformation of the Enterprise. What IT leaders need to know!
IndicThreads
 
Http2 is here! And why the web needs it
IndicThreads
 
Understanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
IndicThreads
 
Go Programming Language - Learning The Go Lang way
IndicThreads
 
Building Resilient Microservices
IndicThreads
 
App using golang indicthreads
IndicThreads
 
Building on quicksand microservices indicthreads
IndicThreads
 
How to Think in RxJava Before Reacting
IndicThreads
 
Iot secure connected devices indicthreads
IndicThreads
 
Real world IoT for enterprises
IndicThreads
 
IoT testing and quality assurance indicthreads
IndicThreads
 
Functional Programming Past Present Future
IndicThreads
 
Harnessing the Power of Java 8 Streams
IndicThreads
 
Building & scaling a live streaming mobile platform - Gr8 road to fame
IndicThreads
 
Internet of things architecture perspective - IndicThreads Conference
IndicThreads
 
Cars and Computers: Building a Java Carputer
IndicThreads
 
Scrap Your MapReduce - Apache Spark
IndicThreads
 
Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
IndicThreads
 
Speed up your build pipeline for faster feedback
IndicThreads
 
Unraveling OpenStack Clouds
IndicThreads
 
Digital Transformation of the Enterprise. What IT leaders need to know!
IndicThreads
 

Recently uploaded (20)

PPTX
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
PDF
“Computer Vision at Sea: Automated Fish Tracking for Sustainable Fishing,” a ...
Edge AI and Vision Alliance
 
PDF
Home Cleaning App Development Services.pdf
V3cube
 
PDF
[GDGoC FPTU] Spring 2025 Summary Slidess
minhtrietgect
 
PDF
Bharatiya Antariksh Hackathon 2025 Idea Submission PPT.pdf
ghjghvhjgc
 
PPTX
Essential Content-centric Plugins for your Website
Laura Byrne
 
PDF
Modern Decentralized Application Architectures.pdf
Kalema Edgar
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PDF
Next Generation AI: Anticipatory Intelligence, Forecasting Inflection Points ...
dleka294658677
 
PDF
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
PDF
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
NASA A Researcher’s Guide to International Space Station : Earth Observations
Dr. PANKAJ DHUSSA
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
PDF
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
PDF
Survival Models: Proper Scoring Rule and Stochastic Optimization with Competi...
Paris Women in Machine Learning and Data Science
 
PPTX
Manual Testing for Accessibility Enhancement
Julia Undeutsch
 
PDF
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
“Computer Vision at Sea: Automated Fish Tracking for Sustainable Fishing,” a ...
Edge AI and Vision Alliance
 
Home Cleaning App Development Services.pdf
V3cube
 
[GDGoC FPTU] Spring 2025 Summary Slidess
minhtrietgect
 
Bharatiya Antariksh Hackathon 2025 Idea Submission PPT.pdf
ghjghvhjgc
 
Essential Content-centric Plugins for your Website
Laura Byrne
 
Modern Decentralized Application Architectures.pdf
Kalema Edgar
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
Next Generation AI: Anticipatory Intelligence, Forecasting Inflection Points ...
dleka294658677
 
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
NASA A Researcher’s Guide to International Space Station : Earth Observations
Dr. PANKAJ DHUSSA
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
Survival Models: Proper Scoring Rule and Stochastic Optimization with Competi...
Paris Women in Machine Learning and Data Science
 
Manual Testing for Accessibility Enhancement
Julia Undeutsch
 
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 

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 [email protected] 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
  • 6. PaaS 6
  • 7. SaaS 7
  • 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 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 No up-front investment in hardware and software means lower risk. o Developers only need a PC and an Internet connection to start building applications. o The PaaS provider manages upgrades, patches, and other routine system maintenance. o PaaS upgrades will not break the applications running on it. 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 libraries that PaaS solutions do not provide. o Using PaaS would require re-writing major chunks of code. o Problems with re-write: o Existing Code has been stabilized over months and years. o Extensive testing needs to be done. o Time to Market takes a drastic hit. o Specific library support might been missing. 11
  • 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 Desire to have wider customer reach. o Want to hook up this application to a portal. 12
  • 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 13
  • 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. 14
  • 15. Using IaaS to SaaS’ify the App o Scenario : Stand-alone Desktop Application o Steps involved are: o Convert stand-alone application to server- application model. o Introduce Cloud Element. o Add business logic via Cloud o Link Portal /outside world interface to this system. o Test!! 15
  • 16. Client-Server Architecture LAMP Stack 16
  • 17. Cloud Component Amazon EC2 Cloud Web Server Amazon Web Services: 1. Elastic Computing. 2. Simple Queue Service (SQS) 3. Simple Storage Service. (S3) 4. Automatic Scaling. (AS) 17
  • 18. Using Amazon Web Services o Elastic Compute (EC2) o Simple Queue Service (SQS) o Simple Storage Service (S3) o Automatic Scaling (AS) 18
  • 19. 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 19
  • 20. 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 (PULL) o DeleteQueue – Delete a queue (All messages in the queue lost) 20
  • 21. 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. 21
  • 22. 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 22
  • 23. 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 23
  • 24. 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 24
  • 25. 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. 25
  • 26. 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. 26
  • 27. Improving Business Logic Support Multiple Classes of Users. Use Amazon’s Automatic Scaling (AS) 27
  • 28. 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. 28
  • 29. Reducing Vendor Tie-in o Reduce dependency on vendor specific services. o Replace SQS with Apache ActiveMQ o Replace CloudWatch with Hyperic o Implement your own Auto Scaling Logic. 29
  • 30. 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 30