Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Architecting for the Cloud: Best Practices

10,110 views

Published on

Presented at IOUG Collaborate 2016 in Las Vegas
Date: 11/04/2016

For many years software architects have discovered and implemented several concepts and best practices to build highly scalable applications. In today's era of the cloud, these concepts are even more applicable and critical. The cloud solutions faces many challenges due to growing data, unpredictable traffic patterns and demand for faster response time. In this session we will discuss best practices to architect for the cloud, how it is different from traditional design and introduce some new concepts in cloud computing.

visit www.baigzeeshan.com for more technical topics

Published in: Technology

Architecting for the Cloud: Best Practices

  1. 1. Session ID: Prepared by: Architecting For the Cloud: Best Practices  Best Practices to Architect for the Cloud  New Concepts in Cloud Computing  How it is Different from Traditional Approach 1380 @ IamZeeshanBaig Date: April 11, 2016 Zeeshan Baig
  2. 2. • 16+ Years 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
  3. 3. • Cloud Computing Overview • Key Concepts • Benefits of Cloud Computing • Architecture Foundation • Best Practices • Oracle Cloud Offerings • Reference Architectures • Q & A Agenda
  4. 4. Our Brands Our Services Oracle Specialized  Enterprise Resource Planning  Business Intelligence  EPM-Hyperion  Middleware  CRM/CX  MDM-EDQ  Configure/Price/Quote  Managed Services  Education / Oracle University  Project Advisory Services  EBS Financial Management  EBS Human Capital Management  EBS Supply Chain Management  Database  BI Applications  BI Foundation Suite  Hyperion Planning & Financial Management  Essbase  Oracle Data Integration  Application Development Framework  Service Oriented Architecture  WebCenter Content  Access Management Suite Plus  Identity Governance Suite  WebLogic Server 2015, 2013, 2011, 2009 Oracle Excellence Award Winner 2015, 2014 Chicago Tribune Top 100 Workplaces Award Winner 2014, 2013, 2012 Inc. 5000 Fastest Growing Companies Award Winner 2014, 2012 Best & Brightest Companies to Work For Award Winner Specialized. Recognized. Preferred. 4 Booth 1301
  5. 5. What is Cloud Computing? Overview of Cloud Computing
  6. 6. As per Wikipedia: “Cloud computing allows application software to be operated using internet-enabled devices” What is Cloud Computing?
  7. 7. Cloud Service Models
  8. 8. Cloud Deployment Models
  9. 9. Concepts in Cloud Computing Core concepts in Cloud Computing
  10. 10. • Power to scale • Key Concept in Cloud Computing • Solves Traditional Problems • Scale-up (Vertical) • Scale-out (Horizontal) Elasticity
  11. 11. Benefits of Cloud Computing? Benefits of Cloud Computing
  12. 12. • Low up-front Investment • In time Infrastructure • Efficient Resource utilization • Usage based Cost • Reduce time to market Business Benefits of Cloud
  13. 13. • Automation • Auto-scaling • Proactive scaling • Efficient development lifecycle • DR and Business Continuity Technical Benefits of Cloud
  14. 14. Architecture Foundation What is the Foundation of Cloud Architecture?
  15. 15. Traditional Architecture Database Business Logic Presentation
  16. 16. Monolithic Architecture Monolithic Architecture Stateful Single Logical Executable Single Deployable Entity Scaled by Replication
  17. 17. Monolithic Architecture
  18. 18. Microservices Architecture Microservices Architecture Stateless Loose Coupled Focus on Business Capabilities Scaled by Component
  19. 19. Microservices Architecture Persistence Service 2Persistence Service 1 API Gateway Service 1 Service 2 Service 3 Service 4 Service 5 Presentation
  20. 20. Microservices Architecture
  21. 21. • Technology Independence • Easier Development • Failure doesn’t cascade • Component based Scalability • Optimized for Replaceability Benefits of Microservices Architecture
  22. 22. Microservices vs Monolithic Read more at http://martinfowler.com/articles/microservices.html Photo http://martinfowler.com/articles/microservices/images/sketch.png
  23. 23. Best Practices Exploring Best Practices for Architecting Cloud Computing
  24. 24. • Cloud provides abstract resources • They become Powerful when combined • Launch on demand Understand the Constraints
  25. 25. • Remove Single Point of Failure • Design for automated recovery • Graceful Failure, Use Services not Servers • Consistent backup & recovery strategy • Don’t Fix, start a new Instance • Avoid Stateful sessions Design for Failure
  26. 26. • More loosely coupled components • Create asynchronous components • Isolate web, app and database servers • Design components as Service Interfaces Decouple your components
  27. 27. Decouple your components Controller A Controller B Controller C Call a Method in B from A Call a Method in C from B Tightly coupled Approach Controller A Controller B Controller C Queue A Queue B Queue C Loosely coupled Approach
  28. 28. • 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
  29. 29. • Create Small means very Small Services • Find Independent Components • Separate Operations and Data • Define Owner of Each Service • Small Teams better Communication • Avoid Long Deployment Cycles Avoid the Monoliths
  30. 30. • Create automated deployment • Clearly Define Instance role • Create small recipes for install & configurations • Use Management tools like Chef, Puppet, Docker • Zero Human-induced deployments Automate the Infrastructure
  31. 31. • Acts as a “front door” to Services • Access data, business logic • Control Authorized Security • Monitor API Activity • Version management Use API Gateway
  32. 32. • Elasticity + Parallelization = WIN • Multi-Thread requests for fast response • Traditional Architecture • 1 Machine x 500 Jobs = 500 hours to Process • With Cloud Architecture 500 Instances x 500 Jobs = 1 hour to Process Think Parallel
  33. 33. • 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
  34. 34. • Configure SSL • Create Virtual Private Cloud (Amazon VPC) • Secure your Instances and applications • Encrypt Files before upload (if required) • Protect Admin Credentials • Use IDM permissions Security Practices
  35. 35. Oracle’s Offering What Services are available?
  36. 36. Oracle Applications - SaaS SaaS CE HCM ERP SCM EPM Analytics Industry Social
  37. 37. Oracle Platform - PaaS •Database / Backup / Big Data / NoSQL / Big Data Database •Java / Mobile / Messaging / App Container / API / Application Builder / DeveloperDevelopment •Documents / Process / Sites / Social Network Content •BI / Big Data Discovery / Data Visualization / IoT Business Analytics •Integration / SOA / GoldenGate / IoT Integration •Logs / Analytics / Application Performance Monitoring Management
  38. 38. Oracle Infrastructure - IaaS Oracle IaaS Services Compute Storage Cloud Machines Network
  39. 39. Reference Architectures Reference Architectures used in Cloud Computing
  40. 40. Traditional – Web App Architecture DB F I R E W A L L L B R I n t e r n e t Web Server 1 Web Server 2 F I R E W A L L App Server 1 App Server 2 F I R E W A L L
  41. 41. Cloud – Web App Architecture DNS User CDN Static Data Storage ELB ELB DBS DBS (Copy) Web Server 2 Web Server 1 Application Server 1 Application Server 2 Auto scaling Group Auto scaling Group Region A Region B Messaging Messaging
  42. 42. • Cloud Service Models • Cloud Architecture Foundation • Best Practices • Oracle Cloud Offerings • Reference Architecture Summary
  43. 43. Please complete the session evaluation We appreciate your feedback and insight You many complete the session evaluation via the mobile app
  44. 44. Q & A • Email: zbaig@astcorporation.com • Twitter: @IamZeeshanBaig • Blog: www.baigzeeshan.com • LinkedIn: https://www.linkedin.com/in/baigzeeshan • Visit AST Corporation Booth 1301

×