Cloud Explorations - Patterns and Practices

6,446 views

Published on

Presented at RMOUG 2016 in Denver on 02/11/2016

Building applications with high availability and scalability has always been a challenge to enterprises. In addition to that, you need infrastructure to support it and money to maintain it. The cloud offers a solution to all these challenges, but understanding and adopting of this emerging technology intimidates many.

In this session, we will discuss how cloud can help you to achieve highly available and scalable applications and different design patterns, the benefits of applying those patterns, and how each piece can fit into the bigger picture of the cloud application architecture.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,446
On SlideShare
0
From Embeds
0
Number of Embeds
5,484
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Cloud Explorations - Patterns and Practices

  1. 1. ASTCORPORATION RECOGNIZED.SPECIALIZED. PREFERRED. Cloud Explorations: Patterns and Practices Presenter: Zeeshan Baig 2/11/2016
  2. 2. 2  16 Years of Experience in IT  Solutions Architect at AST  Oracle ACE since 2011  Oracle Certified Professional  Cloud Enthusiast  Blog www.baigzeeshan.com  Twitter @IamZeeshanBaig  LinkedIn: https://www.linkedin.com/in/baigzeeshan Introduction 16
  3. 3. 3 Specialized. Recognized. Preferred. 3 Time Oracle Excellence Award Winner 2014 Chicago Tribune Top 100 Workplaces 2012, 2013, 2014 Inc. 5000 Fastest Growing Companies 2012 Best & Brightest Companies to Work For 2011 Inc. Top Small Company Workplaces OUR SERVICES ORACLE PARTNERSHIP ORACLE SPECIALIZED  Enterprise Resource Planning  Business Intelligence  EPM-Hyperion  Middleware  CRM  Managed Services  Education / Oracle University  Project Advisory Services  Oracle Platinum Partner  Pillar Partner • SOA • Business Intelligence • Hyperion  Oracle University Approved Education Center  Oracle University Reseller  Oracle Accelerator Implementer  Oracle Managed Cloud Services Implementer  Oracle Cloud Marketplace  Small Business Strategy Council  EBS Financial Management  EBS Human Capital Management  EBS Supply Chain Management  BI Applications  BI Foundation  Service Oriented Architecture  Public Sector  Utilities  Education & Research  Application Development Framework 11g  WebCenter Content 11g  Access Management Suite Plus 11g  Hyperion Planning 11  Database 11g  Hyperion Financial Management 11 NTAC:1HS-16
  4. 4. 4  Cloud Computing Overview  Key Concepts  Benefits of Cloud Computing  Architecture Foundation  Best Practices  Reference Architectures  Q & A Agenda
  5. 5. 5 What is Cloud Computing? Exploring Overview of Cloud Computing
  6. 6. 6 “Cloud computing allows application software to be operated using internet-enabled devices” What is Cloud Computing?
  7. 7. 7  SaaS (Software as a Service)  PaaS (Platform as a Service)  IaaS (Infrastructure as a Service) Cloud Service Models
  8. 8. 8 Concepts in Cloud Computing Exploring some core concepts of Cloud Computing
  9. 9. 9  Power to scale  Key Concept in Cloud Computing  Solves Traditional Problems • Scale-up (Vertical) • Scale-out (Horizontal)  Architect’s Job to Identify Components Elasticity
  10. 10. 10 Benefits of Cloud Computing? Exploring Benefits of Cloud Computing
  11. 11. 11  Low up-front Investment  In time Infrastructure  Efficient Resource utilization  Usage based Cost  Reduce time to market Business Benefits of Cloud
  12. 12. 12  Automation  Auto-scaling  Proactive scaling  Efficient development lifecycle  DR and Business Continuity Technical Benefits of Cloud Benefits
  13. 13. 13 Architecture Foundation What is the Foundation of Cloud Architecture?
  14. 14. 14 Traditional Architecture Database Business Logic Presentation
  15. 15. 15  Stateful Services  Puts all element of functionality into single Process  Single Deployable Entity Monolithic Architecture
  16. 16. 16  Microservices are small, autonomous services that work together  Puts each element of functionality into separate service  Mostly Stateless services Microservices Architecture
  17. 17. 17 Microservices Architecture Persistence Service 2Persistence Service 1 API Gateway Service 1 Service 2 Service 3 Service 4 Service 5
  18. 18. 18  Technology Independence  Failure doesn’t cascade  Component based Scalability  Ease of deployments  Optimized for Replaceability Benefits of Microservices Architecture
  19. 19. 19 • Microservices – Fine grained SOA – Many small services – Business logic is inside domain – Faster messaging mechanism • SOA – Promotes reusability – Fewer advance components – Business logic could be across domains – Depends on ESB and Middleware Microservices vs SOA
  20. 20. 20 Best Practices Exploring Best Practices for Architecting Cloud Computing
  21. 21. 21  Cloud provides abstract resources  Powerful when combined  Launch on demand more Instances On demand provisioning is Better Scalability + Performance Understand the Constraints
  22. 22. 22  Design for automated recovery  Don’t Fix, Start a new Instance  Consistent backup & recovery strategy  Resume on reboot use message queues  Avoid Stateful session, use data-store Design for Failure
  23. 23. 23  More loosely coupled components  Create asynchronous components  Isolate web, app and database servers  Design components as Service Interfaces Decouple your components
  24. 24. 24 Decouple your components
  25. 25. 25  Periodic Scaling (Daily, Weekly, Annually)  Proactive Event based Scaling • New Product launched? • Marketing Campaign?  Auto Scaling on Demand • Based on Traffic • Network I/O Implement Elasticity
  26. 26. 26  Make your Service Simple  Hide Internal Implementation Detail  Find Independent Components  Separate Operations and Data Avoid the Monoliths
  27. 27. 27  Create automated deployment  Clearly Define Instance role  Create small recipes for install & configs  Use Management tools like Chef, Puppet, Docker  Zero Human-induced deployments Automate the Infrastructure
  28. 28. 28  Acts as a “front door” to Services  Access data, business logic  Control Authorized Security  Monitor API Activity  Version management Use API Gateway
  29. 29. 29  Cloud makes parallelization effortless  Elasticity + Parallelization = WIN  Multi-Thread requests for fast response  Traditional Architecture • 1 Machine x 500 Jobs = 500 hours to Complete  With Cloud Architecture • 500 Instances x 500 Jobs = 1 hour to Process Think Parallel
  30. 30. 30  Keep dynamic data closer to computing resources  Keep static data closer to Users  Use Import / Export Services for large data transfer  Use CDN (Content Delivery Network) to cache static data such as images, videos, audio, PDFs Data Management
  31. 31. 31  Configure SSL  Create Virtual Private Cloud (Amazon VPC)  Secure your Instances and applications  Encrypt Files before upload (if required)  Protect Admin Credentials  Manage multiple users with IDM permissions Security Practices
  32. 32. 32 Reference Architectures Exploring Common Reference Architectures used in Cloud Computing
  33. 33. 33 Web Hosting
  34. 34. 34 Content Media Server
  35. 35. 35 Online Game
  36. 36. 36 E-Commerce – Front End
  37. 37. 37 E-Commerce – Checkout Service
  38. 38. 38 E-Commerce – Marketing Recommend.
  39. 39. 39  Cloud Service Models  Cloud Architecture Foundation  Best Practices  Reference Architecture Summary
  40. 40. 40  Amazon Web Services – Architect for the Cloud Best Practices paper  Building Microservices - Book by Sam Newman  https://cloud.oracle.com/home  https://aws.amazon.com/architecture Learn more at…
  41. 41. 41 Q & A Email: zbaig@astcorporation.com Twitter: @IamZeeshanBaig Blog: www.baigzeeshan.com LinkedIn: https://www.linkedin.com/in/baigzeeshan

×