SlideShare ist ein Scribd-Unternehmen logo
1 von 65
#RUBYFUZA
CONFERENCE
  FEB 2011
Who am I?

• Cofounder/CTO of RSAWEB & other companies in
  RAMPGroup
• Chief Architect / Product owner of RSAWEBCloud.com
• Twitter: @markslingsby
• mark@rsaweb.co.za
Content

• Intro to Cloud/Iaas/Paas
• Infrastructure Evolution
• RSAWEBCloud.com (a Ruby project)
• Scaling
•
The Goal

           IT as a Service
      Just like the Telephone or Electricity




                       •   Inexpensive, pay as you go
                       •   Usage and consumption based
                       •   Always up and Available
                       •   Reliable
                       •   Choice of providers
The Evolution of Applications



                                Cloud
                        Web

             PC/Client-Server

      Mainframe




 4
Different types of Cloud Computing
                     3 Main Types:
                       SaaS = Application/Information – Sometimes referred
                         to as Software-as-a-Service, a wide ranging services
                         delivered via varied business models normally
                         available as public offering.


                       PaaS = Development – Sometimes referred
                         to as Platform-as-a-Service, application development
                         platforms enable application authoring and runtime
                         environment.


                       IaaS = Infrastructure – Sometimes referred
                          to as elastic compute clouds or Infrastructure-as-a-
                          Service, virtual hardware made available for varied
                          uses.




 2 Main Deployment    External – Accessible              Internal – Behind
                      over the internet for              corporate firewall for use
      Environments    general consumption                by limited, pre-
                                                         determined audience
Turning commonality
    into a utility
as a Service examples

  Application/
  Information
  (SaaS)




  Development
  (PaaS)




 Infrastructure
 (IaaS)
What is IaaS?

• Utility computing service and billing model.
• Automation of administrative tasks.
• Dynamic scaling.
• Desktop virtualization.
• Policy-based services.
• Internet connectivity.
Evolution of Iaas?
   Client owned hardware

The Dark Ages:       Client managed maintenance
                     Weeks to set up
     Colocation      Weeks to order and configure
                     Redundancy expensive to setup
   Leased hardware

   The Present:
                       Managed maintenance
                       Days to set up
Dedicated Servers      Days to order and configure
                       Redundancy expensive to setup
   Pooled hardware resources

 The Future:    
                
                    Hardware on demand
                    Instant set up
Cloud Servers      Minutes to order and configure
                   Inherent redundancy
RSAWEBCloud.com
                               Dedicate           Virtual                Cloud
Design Goal                    Simple, Low cost   Low cost               Flexiblity, Scalability
         FrontEnd
Dedicated Resources
                               d
                               Baremetal, YES     Virtualised, Maybe     Virtualised, YES
            (Rails)
High Availability              No                 No (possible but $$)   Yes

Fault Tolerant                 No                 No                     Yes *

Disk Storage                   On machine         On machine             SAN / Block Storage

Scalability                    None               Medium                 High

Advantages                     Full access to     Flexibility            Flexibility
                               hardware
Disadvantages                  Not flexible        Customers perception   Provider must be
                                                                         good
Access                         Root               Root                   Root

Provision time                 Days to weeks      Hours                  Seconds

API Access (Create VM, Stop,   None               None                   YES
Start)
Add more disk space            None               Limited                Yes

Shared disk space between      Limited            Limited                Yes
servers
The advantages of using Cloud Hosting or IaaS

• Performance
• Scalability and flexibility
• High availability & Redundancy
• Integrated management Control Panel
• Pay as you use model
Challenges to using aaS

• Governance
• Security
• Privacy
• Control
Why Cloud makes sense
Scalable Capacity
RSAWEBCloud.com

   FrontEnd
    (Rails)
RSAWEBCloud.com

   FrontEnd
    (Rails)
RSAWEBCloud.com
RSAWEBCloud.com

    FrontEnd      MyRSAWEB
     (Rails)      (billing etc)
RSAWEBCloud.com

       FrontEnd       MyRSAWEB
        (Rails)       (billing etc)



   Cloud   Cloud         Node 1
  Manager Manager        Node 2
                         Node 3
                           .....
    Storage Storage
     SAN     SAN        Node X
RSAWEBCloud.com

       FrontEnd       MyRSAWEB
        (Rails)       (billing etc)



   Cloud   Cloud         Node 1
  Manager Manager        Node 2
                         Node 3
                           .....
    Storage Storage
     SAN     SAN        Node X
Why RSAWEBCloud?
Why RSAWEBCloud?

Hows it different to AWS
Why RSAWEBCloud?

Hows it different to AWS
• Persistent storage (no loss of data or state)
Why RSAWEBCloud?

Hows it different to AWS
• Persistent storage (no loss of data or state)
• Public IP remains bound to machine of choice
Why RSAWEBCloud?

Hows it different to AWS
• Persistent storage (no loss of data or state)
• Public IP remains bound to machine of choice
• Can run SQL DB’s with HA (and it works!)
Why RSAWEBCloud?

Hows it different to AWS
• Persistent storage (no loss of data or state)
• Public IP remains bound to machine of choice
• Can run SQL DB’s with HA (and it works!)
• Infinitely easier to migrate existing apps
Challenges for developers
Challenges for developers

• Works great on my machine
Challenges for developers

• Works great on my machine
• Works great in testing
Challenges for developers

• Works great on my machine
• Works great in testing
• Why is it slow & unresponsive live?
Challenges for developers

• Works great on my machine
• Works great in testing
• Why is it slow & unresponsive live?
• Why is the server grinding to a halt?
Challenges for developers
Challenges for developers

• Dev’s get stuck with designing the
  infrastructure layer too
Challenges for developers

• Dev’s get stuck with designing the
  infrastructure layer too
• How do we solve this?
Challenges for developers
Challenges for developers

• Go through optimisations etc..
Challenges for developers

• Go through optimisations etc..
• but then what?
Challenges for developers

• Go through optimisations etc..
• but then what?
• Upgrade the server?
Challenges for developers

• Go through optimisations etc..
• but then what?
• Upgrade the server?
• Limits
Challenges for developers

• Go through optimisations etc..
• but then what?
• Upgrade the server?
• Limits
• Budget approvals
Scaling OUT
Scaling OUT

• Architecture structure is vital
• How do you scale s i d e w a y s?
Scaling OUT

              Shared IP / Carp
Scaling OUT

                 Shared IP / Carp

               Load          Load
              Balancer      Balancer
Scaling OUT

                    Shared IP / Carp

                Load            Load
               Balancer        Balancer


       Web Server     Web Server       Web Server   Web Serve
Scaling OUT

                    Shared IP / Carp

                Load            Load
               Balancer        Balancer


       Web Server     Web Server       Web Server   Web Serve


                                   NosQL DB
                                      NoSQL DB
                                         NoSQL DB
Scaling OUT

                    Shared IP / Carp

                Load            Load
               Balancer        Balancer


       Web Server     Web Server       Web Server   Web Serve


  MySQL DB                         NosQL DB
    MySQL DB                          NoSQL DB
                                         NoSQL DB
Scaling OUT

                     Shared IP / Carp

                Load             Load
               Balancer         Balancer


       Web Server      Web Server       Web Server    Web Serve


  MySQL DB                           NosQL DB
    MySQL DB                            NoSQL DB
                                           NoSQL DB

                    MySQL Slave(s)
Scaling OUT

                      Shared IP / Carp

                 Load             Load
 Memcache       Balancer         Balancer


        Web Server      Web Server       Web Server    Web Serve


  MySQL DB                            NosQL DB
    MySQL DB                             NoSQL DB
                                            NoSQL DB

                     MySQL Slave(s)
Scaling OUT - Critical must do’s
Scaling OUT - Critical must do’s

1. Think asynchronously
Scaling OUT - Critical must do’s

1. Think asynchronously
2. Think vertically
Scaling OUT - Critical must do’s

1. Think asynchronously
2. Think vertically
3. Keep data types separate
Scaling OUT - Critical must do’s

1. Think asynchronously
2. Think vertically
3. Keep data types separate
4. Separate hot & cold data
Scaling OUT - Critical must do’s

1. Think asynchronously
2. Think vertically
3. Keep data types separate
4. Separate hot & cold data
5. Memory ROCKS!
Scaling OUT - how???


                 - Difficulty of migration depends on
     Existing      existing complexity
                 - May need DB refactoring / migration
        Apps     - Sessions can be sorted in Memcache
                 - Loadbalancer & multiple webservers, app
                   needs to handle different IP’s
                 - Add slave SQL Db’s for read performance
                 - Add a monitoring server to start & deploy
                   new servers as needed
                 - Puppet / Chef
Scaling OUT - how???


                 - Files can be stored on centralised storage
         New     - Sessions can be sorted in Memcache
                 - Loadbalancer & multiple webservers
         Apps    - Add slave SQL Db’s for read performance
                 - Add a monitoring server to start & deploy
                   new servers
                 - Use NoSQL where appropriate
                 - Puppet / Chef
Scaling OUT - how???


                 - Monitor load - Nagios
                 - Do something about it
    Managing     - Autoprovision with Chef/Puppet
                 - Continue to monitor load
                 - Deploy & Recover on demand
Scaling OUT - how???




    Managing
Closing

Chat to us about:
• Cloud
• Scaling
• High volume sites/apps
• 1 month off:
• Or signup for 7 day trial
  www.rsawebcloud.com
  Twitter: @markslingsby

Weitere ähnliche Inhalte

Was ist angesagt?

SDEC2011 Using Couchbase for social game scaling and speed
SDEC2011 Using Couchbase for social game scaling and speedSDEC2011 Using Couchbase for social game scaling and speed
SDEC2011 Using Couchbase for social game scaling and speedKorea Sdec
 
NephoScale Elastic Networking
NephoScale Elastic NetworkingNephoScale Elastic Networking
NephoScale Elastic NetworkingNephoScale
 
The Netflix Open Source Platform
The Netflix Open Source PlatformThe Netflix Open Source Platform
The Netflix Open Source PlatformRuslan Meshenberg
 
Netflix web-adrian-qcon
Netflix web-adrian-qconNetflix web-adrian-qcon
Netflix web-adrian-qconYiwei Ma
 
Scalable Resilient Web Services In .Net
Scalable Resilient Web Services In .NetScalable Resilient Web Services In .Net
Scalable Resilient Web Services In .NetBala Subra
 
My sql 5.6_replwebinar_may12
My sql 5.6_replwebinar_may12My sql 5.6_replwebinar_may12
My sql 5.6_replwebinar_may12Mat Keep
 
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Adrian Cockcroft
 
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
 
Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...
Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...
Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...Andrew Miller
 
Scalable Database Options on AWS
Scalable Database Options on AWSScalable Database Options on AWS
Scalable Database Options on AWSAmazon Web Services
 
RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013
RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013
RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013CA API Management
 
CloudStack Architecture Future
CloudStack Architecture FutureCloudStack Architecture Future
CloudStack Architecture FutureKimihiko Kitase
 
Keeping Movies Running Amid Thunderstorms!
Keeping Movies Running Amid Thunderstorms!Keeping Movies Running Amid Thunderstorms!
Keeping Movies Running Amid Thunderstorms!Sid Anand
 
AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...
AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...
AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...Amazon Web Services
 
AWS RDS Presentation - DOAG Conference
AWS RDS Presentation - DOAG Conference AWS RDS Presentation - DOAG Conference
AWS RDS Presentation - DOAG Conference Amazon Web Services
 

Was ist angesagt? (20)

SDEC2011 Using Couchbase for social game scaling and speed
SDEC2011 Using Couchbase for social game scaling and speedSDEC2011 Using Couchbase for social game scaling and speed
SDEC2011 Using Couchbase for social game scaling and speed
 
NephoScale Elastic Networking
NephoScale Elastic NetworkingNephoScale Elastic Networking
NephoScale Elastic Networking
 
The Netflix Open Source Platform
The Netflix Open Source PlatformThe Netflix Open Source Platform
The Netflix Open Source Platform
 
Netflix web-adrian-qcon
Netflix web-adrian-qconNetflix web-adrian-qcon
Netflix web-adrian-qcon
 
Netflix in the cloud 2011
Netflix in the cloud 2011Netflix in the cloud 2011
Netflix in the cloud 2011
 
Citrix Xs Update For Dataplex Nov 09
Citrix   Xs Update For Dataplex   Nov 09Citrix   Xs Update For Dataplex   Nov 09
Citrix Xs Update For Dataplex Nov 09
 
Scalable Resilient Web Services In .Net
Scalable Resilient Web Services In .NetScalable Resilient Web Services In .Net
Scalable Resilient Web Services In .Net
 
My sql 5.6_replwebinar_may12
My sql 5.6_replwebinar_may12My sql 5.6_replwebinar_may12
My sql 5.6_replwebinar_may12
 
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
 
Netflix in the Cloud
Netflix in the CloudNetflix in the Cloud
Netflix in the Cloud
 
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
 
Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...
Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...
Varrow Q4 Lunch & Learn Presentation - Virtualizing Business Critical Applica...
 
Scalable Database Options on AWS
Scalable Database Options on AWSScalable Database Options on AWS
Scalable Database Options on AWS
 
Understanding Database Options
Understanding Database OptionsUnderstanding Database Options
Understanding Database Options
 
RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013
RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013
RESTing in the ALPS Mike Amundsen's Presentation from QCon London 2013
 
CloudStack Architecture Future
CloudStack Architecture FutureCloudStack Architecture Future
CloudStack Architecture Future
 
SAP on AWS
SAP on AWSSAP on AWS
SAP on AWS
 
Keeping Movies Running Amid Thunderstorms!
Keeping Movies Running Amid Thunderstorms!Keeping Movies Running Amid Thunderstorms!
Keeping Movies Running Amid Thunderstorms!
 
AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...
AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...
AWS Webcast - Amazon RDS - Running Low Admin High Performance Databases in th...
 
AWS RDS Presentation - DOAG Conference
AWS RDS Presentation - DOAG Conference AWS RDS Presentation - DOAG Conference
AWS RDS Presentation - DOAG Conference
 

Ähnlich wie Cloud Computing & Scaling Web Apps

Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentationManish Singh
 
Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentationAravindharamanan S
 
Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentationAravindharamanan S
 
Directions for CloudStack Networking
Directions for CloudStack  NetworkingDirections for CloudStack  Networking
Directions for CloudStack NetworkingChiradeep Vittal
 
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...IndicThreads
 
Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...
Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...
Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...Amazon Web Services
 
Top 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data GridTop 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data GridScaleOut Software
 
ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...
ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...
ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...Amazon Web Services
 
RightScale Webinar: Key Considerations For Cloud Migration and Portability
RightScale Webinar:  Key Considerations For Cloud Migration and PortabilityRightScale Webinar:  Key Considerations For Cloud Migration and Portability
RightScale Webinar: Key Considerations For Cloud Migration and PortabilityRightScale
 
The Future of SDN in CloudStack by Chiradeep Vittal
The Future of SDN in CloudStack by Chiradeep VittalThe Future of SDN in CloudStack by Chiradeep Vittal
The Future of SDN in CloudStack by Chiradeep Vittalbuildacloud
 
Amazon Web Services Building Blocks for Drupal Applications and Hosting
Amazon Web Services Building Blocks for Drupal Applications and HostingAmazon Web Services Building Blocks for Drupal Applications and Hosting
Amazon Web Services Building Blocks for Drupal Applications and HostingAcquia
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAmazon Web Services
 
Scaling data on public clouds
Scaling data on public cloudsScaling data on public clouds
Scaling data on public cloudsLiran Zelkha
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWSTom Laszewski
 
Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumAdrian Cockcroft
 
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part20812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2Raul Chong
 
AWS Summit 2013 | Auckland - Building Web Scale Applications with AWS
AWS Summit 2013 | Auckland - Building Web Scale Applications with AWSAWS Summit 2013 | Auckland - Building Web Scale Applications with AWS
AWS Summit 2013 | Auckland - Building Web Scale Applications with AWSAmazon Web Services
 

Ähnlich wie Cloud Computing & Scaling Web Apps (20)

Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentation
 
Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentation
 
Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentation
 
Directions for CloudStack Networking
Directions for CloudStack  NetworkingDirections for CloudStack  Networking
Directions for CloudStack Networking
 
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
 
Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...
Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...
Partner Solutions: Veritas Technologies - Unique Ways Veritas can Supercharge...
 
Top 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data GridTop 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data Grid
 
ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...
ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...
ENT305 Migrating Your Databases to AWS: Deep Dive on Amazon Relational Databa...
 
RightScale Webinar: Key Considerations For Cloud Migration and Portability
RightScale Webinar:  Key Considerations For Cloud Migration and PortabilityRightScale Webinar:  Key Considerations For Cloud Migration and Portability
RightScale Webinar: Key Considerations For Cloud Migration and Portability
 
The Future of SDN in CloudStack by Chiradeep Vittal
The Future of SDN in CloudStack by Chiradeep VittalThe Future of SDN in CloudStack by Chiradeep Vittal
The Future of SDN in CloudStack by Chiradeep Vittal
 
Amazon Web Services Building Blocks for Drupal Applications and Hosting
Amazon Web Services Building Blocks for Drupal Applications and HostingAmazon Web Services Building Blocks for Drupal Applications and Hosting
Amazon Web Services Building Blocks for Drupal Applications and Hosting
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloud
 
PaaS with Java
PaaS with JavaPaaS with Java
PaaS with Java
 
SQL Saturday San Diego
SQL Saturday San DiegoSQL Saturday San Diego
SQL Saturday San Diego
 
Scaling data on public clouds
Scaling data on public cloudsScaling data on public clouds
Scaling data on public clouds
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
 
Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV Forum
 
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part20812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
 
IBM - Introduction to Cloudant
IBM - Introduction to CloudantIBM - Introduction to Cloudant
IBM - Introduction to Cloudant
 
AWS Summit 2013 | Auckland - Building Web Scale Applications with AWS
AWS Summit 2013 | Auckland - Building Web Scale Applications with AWSAWS Summit 2013 | Auckland - Building Web Scale Applications with AWS
AWS Summit 2013 | Auckland - Building Web Scale Applications with AWS
 

Kürzlich hochgeladen

2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 

Kürzlich hochgeladen (20)

2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 

Cloud Computing & Scaling Web Apps

  • 2. Who am I? • Cofounder/CTO of RSAWEB & other companies in RAMPGroup • Chief Architect / Product owner of RSAWEBCloud.com • Twitter: @markslingsby • mark@rsaweb.co.za
  • 3.
  • 4. Content • Intro to Cloud/Iaas/Paas • Infrastructure Evolution • RSAWEBCloud.com (a Ruby project) • Scaling •
  • 5. The Goal IT as a Service Just like the Telephone or Electricity • Inexpensive, pay as you go • Usage and consumption based • Always up and Available • Reliable • Choice of providers
  • 6. The Evolution of Applications Cloud Web PC/Client-Server Mainframe 4
  • 7. Different types of Cloud Computing 3 Main Types: SaaS = Application/Information – Sometimes referred to as Software-as-a-Service, a wide ranging services delivered via varied business models normally available as public offering. PaaS = Development – Sometimes referred to as Platform-as-a-Service, application development platforms enable application authoring and runtime environment. IaaS = Infrastructure – Sometimes referred to as elastic compute clouds or Infrastructure-as-a- Service, virtual hardware made available for varied uses. 2 Main Deployment External – Accessible Internal – Behind over the internet for corporate firewall for use Environments general consumption by limited, pre- determined audience
  • 8. Turning commonality into a utility
  • 9. as a Service examples Application/ Information (SaaS) Development (PaaS) Infrastructure (IaaS)
  • 10. What is IaaS? • Utility computing service and billing model. • Automation of administrative tasks. • Dynamic scaling. • Desktop virtualization. • Policy-based services. • Internet connectivity.
  • 12. Client owned hardware The Dark Ages:  Client managed maintenance  Weeks to set up Colocation  Weeks to order and configure  Redundancy expensive to setup
  • 13. Leased hardware The Present:  Managed maintenance  Days to set up Dedicated Servers  Days to order and configure  Redundancy expensive to setup
  • 14. Pooled hardware resources The Future:   Hardware on demand Instant set up Cloud Servers  Minutes to order and configure  Inherent redundancy
  • 15. RSAWEBCloud.com Dedicate Virtual Cloud Design Goal Simple, Low cost Low cost Flexiblity, Scalability FrontEnd Dedicated Resources d Baremetal, YES Virtualised, Maybe Virtualised, YES (Rails) High Availability No No (possible but $$) Yes Fault Tolerant No No Yes * Disk Storage On machine On machine SAN / Block Storage Scalability None Medium High Advantages Full access to Flexibility Flexibility hardware Disadvantages Not flexible Customers perception Provider must be good Access Root Root Root Provision time Days to weeks Hours Seconds API Access (Create VM, Stop, None None YES Start) Add more disk space None Limited Yes Shared disk space between Limited Limited Yes servers
  • 16. The advantages of using Cloud Hosting or IaaS • Performance • Scalability and flexibility • High availability & Redundancy • Integrated management Control Panel • Pay as you use model
  • 17. Challenges to using aaS • Governance • Security • Privacy • Control
  • 20. RSAWEBCloud.com FrontEnd (Rails)
  • 21. RSAWEBCloud.com FrontEnd (Rails)
  • 23. RSAWEBCloud.com FrontEnd MyRSAWEB (Rails) (billing etc)
  • 24. RSAWEBCloud.com FrontEnd MyRSAWEB (Rails) (billing etc) Cloud Cloud Node 1 Manager Manager Node 2 Node 3 ..... Storage Storage SAN SAN Node X
  • 25. RSAWEBCloud.com FrontEnd MyRSAWEB (Rails) (billing etc) Cloud Cloud Node 1 Manager Manager Node 2 Node 3 ..... Storage Storage SAN SAN Node X
  • 27. Why RSAWEBCloud? Hows it different to AWS
  • 28. Why RSAWEBCloud? Hows it different to AWS • Persistent storage (no loss of data or state)
  • 29. Why RSAWEBCloud? Hows it different to AWS • Persistent storage (no loss of data or state) • Public IP remains bound to machine of choice
  • 30. Why RSAWEBCloud? Hows it different to AWS • Persistent storage (no loss of data or state) • Public IP remains bound to machine of choice • Can run SQL DB’s with HA (and it works!)
  • 31. Why RSAWEBCloud? Hows it different to AWS • Persistent storage (no loss of data or state) • Public IP remains bound to machine of choice • Can run SQL DB’s with HA (and it works!) • Infinitely easier to migrate existing apps
  • 33. Challenges for developers • Works great on my machine
  • 34. Challenges for developers • Works great on my machine • Works great in testing
  • 35. Challenges for developers • Works great on my machine • Works great in testing • Why is it slow & unresponsive live?
  • 36. Challenges for developers • Works great on my machine • Works great in testing • Why is it slow & unresponsive live? • Why is the server grinding to a halt?
  • 38. Challenges for developers • Dev’s get stuck with designing the infrastructure layer too
  • 39. Challenges for developers • Dev’s get stuck with designing the infrastructure layer too • How do we solve this?
  • 41. Challenges for developers • Go through optimisations etc..
  • 42. Challenges for developers • Go through optimisations etc.. • but then what?
  • 43. Challenges for developers • Go through optimisations etc.. • but then what? • Upgrade the server?
  • 44. Challenges for developers • Go through optimisations etc.. • but then what? • Upgrade the server? • Limits
  • 45. Challenges for developers • Go through optimisations etc.. • but then what? • Upgrade the server? • Limits • Budget approvals
  • 47. Scaling OUT • Architecture structure is vital • How do you scale s i d e w a y s?
  • 48. Scaling OUT Shared IP / Carp
  • 49. Scaling OUT Shared IP / Carp Load Load Balancer Balancer
  • 50. Scaling OUT Shared IP / Carp Load Load Balancer Balancer Web Server Web Server Web Server Web Serve
  • 51. Scaling OUT Shared IP / Carp Load Load Balancer Balancer Web Server Web Server Web Server Web Serve NosQL DB NoSQL DB NoSQL DB
  • 52. Scaling OUT Shared IP / Carp Load Load Balancer Balancer Web Server Web Server Web Server Web Serve MySQL DB NosQL DB MySQL DB NoSQL DB NoSQL DB
  • 53. Scaling OUT Shared IP / Carp Load Load Balancer Balancer Web Server Web Server Web Server Web Serve MySQL DB NosQL DB MySQL DB NoSQL DB NoSQL DB MySQL Slave(s)
  • 54. Scaling OUT Shared IP / Carp Load Load Memcache Balancer Balancer Web Server Web Server Web Server Web Serve MySQL DB NosQL DB MySQL DB NoSQL DB NoSQL DB MySQL Slave(s)
  • 55. Scaling OUT - Critical must do’s
  • 56. Scaling OUT - Critical must do’s 1. Think asynchronously
  • 57. Scaling OUT - Critical must do’s 1. Think asynchronously 2. Think vertically
  • 58. Scaling OUT - Critical must do’s 1. Think asynchronously 2. Think vertically 3. Keep data types separate
  • 59. Scaling OUT - Critical must do’s 1. Think asynchronously 2. Think vertically 3. Keep data types separate 4. Separate hot & cold data
  • 60. Scaling OUT - Critical must do’s 1. Think asynchronously 2. Think vertically 3. Keep data types separate 4. Separate hot & cold data 5. Memory ROCKS!
  • 61. Scaling OUT - how??? - Difficulty of migration depends on Existing existing complexity - May need DB refactoring / migration Apps - Sessions can be sorted in Memcache - Loadbalancer & multiple webservers, app needs to handle different IP’s - Add slave SQL Db’s for read performance - Add a monitoring server to start & deploy new servers as needed - Puppet / Chef
  • 62. Scaling OUT - how??? - Files can be stored on centralised storage New - Sessions can be sorted in Memcache - Loadbalancer & multiple webservers Apps - Add slave SQL Db’s for read performance - Add a monitoring server to start & deploy new servers - Use NoSQL where appropriate - Puppet / Chef
  • 63. Scaling OUT - how??? - Monitor load - Nagios - Do something about it Managing - Autoprovision with Chef/Puppet - Continue to monitor load - Deploy & Recover on demand
  • 64. Scaling OUT - how??? Managing
  • 65. Closing Chat to us about: • Cloud • Scaling • High volume sites/apps • 1 month off: • Or signup for 7 day trial www.rsawebcloud.com Twitter: @markslingsby

Hinweis der Redaktion

  1. \n
  2. \n
  3. KEY SOUNDBITE: “Just like the landline phone or the power socket on \nthe wall, Cloud Computing is using the same model for IT—inexpensive, pay as \nyou go, operates on a base infrastructure and just works.”\n
  4. \n
  5. KEY SOUNDBITE: “Just like the landline phone or the power socket on \nthe wall, Cloud Computing is using the same model for IT—inexpensive, pay as \nyou go, operates on a base infrastructure and just works.”\n
  6. Historically, industry shifts are driven by new needs and new economics\nWe are in this shift right now …a new era in IT that finally addresses complexity rather than adding it. \n
  7. Key Talking Points: We see 3 different basic types of cloud computing today. \n\nApplication or Information are the best known, highly visible as consumer web sites and in general are focused on the delivery of information.\n\nPros: Usually very inexpensive to use. In case of commercial centered solutions many are driven by ad revenues.\n\nCons: Not customizable. Limited ability to integrate with internal systems and limited application coverage for business purposes.\n\nKey Talking Points: Second type of cloud computing is least well known and is focused on delivering software development environments and runtimes as a service. A consumer of such a service would write an application using the using the service and then make use of the supplied runtime environment for that application. \n\nPros: Facilitates rapid development\n\nCons:Not compatible with existing applications thus creating need to rewrite applications before they can make use of such service\n\nFinally, the 3rd type of cloud computing is focused on providing the most generalizable solution and that is basic infrastructure as a service. These solutions provide to the consumer storage, networking and computing capacity as a service, sometimes in very high granularities of billing such as hourly.\n\nA vast majority of these solutions are based on virtualization.\n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. But the decision for enterprises on how far to leverage computing platforms in the cloud will be much more complicated. The economics will increasingly make more sense to run business applications on these new platforms now that major competition has emerged in the PaaS marketplace that will put major downward pressure on already strikingly low costs to operate. But the issues around governance, security, privacy, and control will be hard to overcome. Make no mistake however, these platforms offer not only major cost savings but non-trivial productivity boosts as they competitively strive to be the cheapest and lowest barrier place online to run your business applications and engage your employees, customers, and partners.\n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n