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.

Cloud Foundry: The Best Place to Run Microservices

1,383 views

Published on

A magical tour through the Industrial Revolution, Complex Adaptive Systems, and Turtles All the Way Down, with shout outs to Cloud Foundry, BOSH, and Spring Boot.

Published in: Software
  • Be the first to comment

Cloud Foundry: The Best Place to Run Microservices

  1. 1. MICROSERVICES CLOUD FOUNDRY: THE BEST PLACE TO RUN Matt Stine (@mstine)
  2. 2. MATT STINESenior Product Manager - Pivotal Software, Inc. AUTHOR OF: http://bit.ly/cloud-native-book
  3. 3. WHY CF IS THE BEST PLACE TO RUN MICROSERVICES
  4. 4. WHY ^ CF IS THE BEST PLACE TO RUN MICROSERVICES? do you want to
  5. 5. PROMISES OF MICROSERVICES
  6. 6. SPEED
  7. 7. SPEED WINS IN THE MARKETPLACE. Adrian Cockcroft
  8. 8. SAFETY
  9. 9. THE SYSTEM STAYS RESPONSIVE IN THE FACE OF FAILURE. The Reactive Manifesto
  10. 10. SECURITY
  11. 11. https://medium.com/built-to-adapt/the-three-r-s-of-enterprise-security-rotate-repave-and-repair-f64f6d6ba29d#.9tnxlt6qh
  12. 12. SCALE
  13. 13. THE SYSTEM STAYS RESPONSIVE UNDER VARYING WORKLOAD. The Reactive Manifesto
  14. 14. WHY ^ CF IS THE BEST PLACE TO RUN MICROSERVICES? do you want to EVEN ARE
  15. 15. MICROSERVICES!!!!! THERE SEEMS TO BE SOME HYPE…
  16. 16. LOOSELY COUPLED SERVICE ORIENTED ARCHITECTURE WITH BOUNDED CONTEXTS. Adrian Cockcroft
  17. 17. SMALL, AND FOCUSED ON DOING ONE THING WELL. Sam Newman
  18. 18. SMART ENDPOINTS AND DUMB PIPES. Martin Fowler
  19. 19. INDEPENDENT, CONCURRENT OBJECTS BEHIND WELL-DEFINED, CONSISTENT INTERFACES. The Pragmatic Programmer (2000)
  20. 20. HOW IS THAT FUNDAMENTALLY DIFFERENT FROM WHAT WE’RE ALREADY DOING?
  21. 21. “What is Software Design?” Jack W. Reeves C++ Journal, Fall 1992
  22. 22. REAL SOFTWARE RUNS ON COMPUTERS. IT IS A SEQUENCE OF ONES AND ZEROS THAT IS STORED ON SOME MAGNETIC MEDIA. IT IS NOT A PROGRAM LISTING… Jack W. Reeves
  23. 23. A PROGRAM LISTING IS A DOCUMENT THAT REPRESENTS A SOFTWARE DESIGN. Jack W. Reeves
  24. 24. COMPILERS AND LINKERS ACTUALLY BUILD SOFTWARE DESIGNS. Jack W. Reeves
  25. 25. REAL SOFTWARE IS INCREDIBLY CHEAP TO BUILD, AND GETTING CHEAPER ALL THE TIME AS COMPUTERS GET FASTER. Jack W. Reeves
  26. 26. IN WHAT WAY DOES SOFTWARE DELIVERY LOOK LIKE MANUFACTURING?? $./gradlew assemble
  27. 27. INTERCHANGEABLE PARTS ELI WHITNEY
  28. 28. ASSEMBLY LINE HENRY FORD
  29. 29. ELECTRIFICATION THOMAS EDISON
  30. 30. MASS PRODUCTION
  31. 31. INTERCHANGEABLE PARTS ASSEMBLY LINES ELECTRIFICATION MICROSERVICES ??? ???
  32. 32. MICROSERVICES ARE NOT ENOUGH
  33. 33. WE NEED CLOUD NATIVE
  34. 34. INTERCHANGEABLE PARTS ASSEMBLY LINES ELECTRIFICATION MICROSERVICES CLOUDS PIPELINES/PLATFORMS
  35. 35. INTERCHANGEABLE PARTS ASSEMBLY LINES ELECTRIFICATION MICROSERVICES PIPELINES/PLATFORMS CLOUDS CULTURE DEVOPS/CONTINUOUS DELIVERY
  36. 36. PIPELINES
  37. 37. FAST PIPELINES
  38. 38. FAST CHOREOGRAPHED PIPELINES
  39. 39. A PIT STOP IS CHOREOGRAPHED CHAOS. Mike Lepp, Joe Gibbs Racing
  40. 40. 7 PEOPLE 73 UNIQUE MANUEVERS 12 SECONDS Circa 2009 - current performance is as low as 8 seconds!
  41. 41. http://concourse.ci/
  42. 42. MULTIPLE ACTORS PERFORMING ORTHOGONAL TASKS WITH PRECISION TO DELIVER COMPETITIVE ADVANTAGE My Analysis of a NASCAR Pit Stop
  43. 43. MANUFACTURING HAS AN END
  44. 44. RACES HAVE AN END
  45. 45. DOES SOFTWARE HAVE AN END?
  46. 46. © Copyright 2015 Pivotal. All rights reserved. 48
  47. 47. SIMPLE RULES COMPLEX BEHAVIOR EXPLICIT CONTRACTS COMMODITY COMPONENTS
  48. 48. SIMPLE RULES COMPLEX BEHAVIOR EXPLICIT CONTRACTS COMMODITY COMPONENTS
  49. 49. SIMPLE RULES COMPLEX BEHAVIOR EXPLICIT CONTRACTS COMMODITY COMPONENTS Grab Dirt w/ Pheromone Build Bridge Attach to Ant on Edge 1000’s of Ants Hardwired into Brain Colonies, Bridges, Rafts
  50. 50. CELLULAR ORGANIC SYSTEMS
  51. 51. THE COLLECTIVE SUBCONSCIOUS OF THE SOFTWARE INDUSTRY INSTINCTIVELY KNOWS THAT IMPROVEMENTS IN PROGRAMMING TECHNIQUES AND REAL WORLD PROGRAMMING LANGUAGES IN PARTICULAR ARE OVERWHELMINGLY MORE IMPORTANT THAN ANYTHING ELSE IN THE SOFTWARE BUSINESS. Jack W. Reeves
  52. 52. THE REAL INNOVATION THAT IS CLOUD NATIVE IS TRANSFORMING DELIVERY FROM DUMPING BITS ON A FLOPPY TO REPLACING CELLS IN A "LIVING" ORGANISM. Matt Stine
  53. 53. SO, WHY AGAIN IS CF IS THE BEST PLACE TO RUN MICROSERVICES?
  54. 54. TRADITIONAL APP SERVERS MONOLITHIC APP MONOLITHIC APP MONOLITHIC APP MONOLITHIC APPLICATION SERVER
  55. 55. OSGI (SOA IN A JVM) MONOLITHIC OSGI RUNTIME µS µS µS µS
  56. 56. ESB (DISTRIBUTED SOA) SOA SERVICE SOA SERVICE SOA SERVICE MONOLITHIC APPLICATION SERVER SOA SERVICE SOA SERVICE SOA SERVICE MONOLITHIC APPLICATION SERVER MONOLITHIC ENTERPRISE SERVICE BUS
  57. 57. MICROSERVICES ÂAPI ÂAPI ! ! ! µS µS µS µS µS
  58. 58. MICROSERVICES THE CLOUD FOUNDRY RUNTIME
  59. 59. MICROSERVICES BOSH
  60. 60. IT’S TURTLES MICROSERVICES ALL THE WAY DOWN
  61. 61. PAY IT UPWARD •Environment Provisioning •On-Demand/Automatic Scaling •Failover/Resilience •Routing/Load Balancing •Data Service Operations •Monitoring
  62. 62. ➜ ➜ INTERCHANGEABLE PARTS STEMCELLS GARDEN ROOT FS ??? JOBS (VMs) DROPLETS (Containers) MICROSERVICES ➜ BOSH DEPLOY CF BUILDPACKS YOUR CODE
  63. 63. SPRING BOOT http://start.spring.io
  64. 64. ➜ ➜ INTERCHANGEABLE PARTS STEMCELLS GARDEN ROOT FS SPRING BOOT JOBS (VMs) DROPLETS (Containers) MICROSERVICES ➜ BOSH DEPLOY CF BUILDPACKS YOUR CODE
  65. 65. CLOUD FOUNDRY ❤ SPRING BOOT
  66. 66. CLOUD FOUNDRY ❤ MICROSERVICES
  67. 67. Get your FREE eBook! http://bit.ly/cloud-native-book MATT STINESenior Product Manager - Pivotal Software, Inc.
 @mstine
 matt.stine@gmail.com
 http://mattstine.com MICROSERVICES CLOUD FOUNDRY: THE BEST PLACE TO RUN

×