Upgrade to Pro — share decks privately, control downloads, hide ads and more …

HA and Elastic Scaling... It's Easy on Azure

geevcookie
September 29, 2017

HA and Elastic Scaling... It's Easy on Azure

Azure is a fast growing collection of integrated cloud services. With these powerful services, it is easy to achieve high availability and elastic scaling. During this talk, I will show you exactly just how easy it is. He will be sharing a few tips and tricks that he picked up during his journey as well as any stumbling blocks he hit on the way.

geevcookie

September 29, 2017
Tweet

More Decks by geevcookie

Other Decks in Programming

Transcript

  1. § Architect At Tangent Solutions § Organiser: § JoburgPHP §

    PHP South Africa (This Lovely Event) § Find Me At: § @geevCookie § geevcookie.com § tangentsolutions.co.za § Azure Lover!!! Hi There! I’m Zander Janse van Rensburg
  2. What Is Azure? § Microsoft Azure is a growing collection

    of integrated cloud services that developers and IT professionals use to build, deploy, and manage applications through their global network of datacenters.
  3. On Premises You scale, make resilient and manage Infrastructure (as

    a Service) Managed by vendor You scale, make resilient & manage Platform (as a Service) Scale, resilience and management by vendor You manage Software (as a Service) Applications Scale, resilience and management by vendor Why The Cloud?
  4. § By default, PHP stores sessions in files § This

    does not carry across multiple servers Common Scaling Problems #1 Session Storage
  5. § Cloud servers should be thought of as utility resources

    § They can be created and destroyed as required § Use a share-nothing design § Each node is independent and self-sufficient Common Scaling Problems #2 Thinking Servers Will Run Forever
  6. § Local storage should only be used as temporary storage

    § Use network storage for configuration or long-lived files Common Scaling Problems #3 Using Local Storage
  7. § Monolithic application handles requests as well as all background

    processing § Separate concerns by moving background processing to worker queue Common Scaling Problems #5 No Distributed Processing
  8. § Elasticity requires proper deployment plan § Runtime errors during

    deployment § All hosts require same version to prevent requests from behaving differently Common Scaling Problems #6 Deployment
  9. § Session Storage § Servers Are Utility Resources § Local

    Storage § Scaling DB § Distributed Processing § Deployment Common Scaling Problems Summary
  10. § Elasticity for free § Deployment for free § Easy

    to manually scale up or out § Scaling up = Vertical Scaling § Scaling out = Horizontal Scaling § Easy deployment Azure Components #1 Introducing App Services
  11. § App Service For Linux uses Docker containers § Code

    is deployed to “/home/sites/wwwroot” § Kudu mounts “/home/sites” into the container § Default containers for PHP 5.6 and 7.0 § https://github.com/Azure-App-Service/php § Tangent Solutions Containers § Laravel § Symfony Getting Your Application Ready #1.1 Using App Services
  12. § Session Storage § Servers Are Utility Resources § Local

    Storage § Scaling DB § Distributed Processing § Deployment Common Scaling Problems Checklist
  13. § DB as a service § Easy to scale §

    Managed: § Patching § Backups § Monitoring § Security Azure Components #2 Introducing Azure DB For MySQL
  14. § Session Storage § Servers Are Utility Resources § Local

    Storage § Scaling DB § Distributed Processing § Deployment Common Scaling Problems Checklist
  15. § Replaces Cron Jobs § + More § Examples: §

    Monitor Blob Storage for a new file and create required thumbnails § Run scheduled imports from external DB § Run scheduled complex computations such as pricing changes etc… § Send scheduled reports from application DB Azure Components #3.1 Using Azure Functions
  16. § Session Storage § Servers Are Utility Resources § Local

    Storage § Scaling DB § Distributed Processing § Deployment Common Scaling Problems Checklist
  17. § Massive Amounts of Premium Storage § Great Integration §

    Easy Redundancy Azure Components #4 Azure Blob Storage
  18. § Session Storage § Servers Are Utility Resources § Local

    Storage § Scaling DB § Distributed Processing § Deployment Common Scaling Problems Checklist
  19. § Session Storage § Servers Are Utility Resources § Local

    Storage § Scaling DB § Distributed Processing § Deployment Common Scaling Problems Checklist