Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Cloud Native Middleware Microservices - 10 Lessons Learned

12.708 Aufrufe

Veröffentlicht am

10 Lessons Learned from Building Cloud Native Middleware Microservices. Conference Talk at O'Reilly Software Architecture April 2017 in New York, USA.

Abstract:
Microservices are the next step after SOA: Services implement a limited set of functions; services are developed, deployed, and scaled independently; continuous delivery automates deployments. This way you get shorter time to results and increased flexibility. Containers improve things even more, offering a very lightweight and flexible deployment option.

In the middleware world, you use concepts and tools such as an enterprise service bus (ESB), complex event processing (CEP), business process management (BPM), or API gateways. Many people still think about complex, heavyweight central brokers. However, microservices and containers are not only relevant for custom self-developed applications but are also a key requirement to make the middleware world more flexible, Agile, and automated.

Kai Wähner shares 10 lessons learned from building cloud-native microservices in the middleware world, including the concepts behind cloud native, choosing the right cloud platform, and when not to build microservices at all, and leads a live demo showing how to apply these lessons to real-world projects by leveraging Docker, CloudFoundry, and Kubernetes to realize cloud-native middleware microservices.

Videos / Live Demos:
TIBCO BusinessWorks Container Edition (BWCE) and Mashery with Docker, Kubernetes, CloudFoundry, Consul, Spring Cloud Config:
https://www.youtube.com/watch?v=VISNxgB74Bg

TIBCO BWCE and Netflix' Hystrix Circuit Breaker:
https://www.youtube.com/watch?v=VL7-T6IIuZk

(also on http://www.kai-waehner.de)

Veröffentlicht in: Software
  • DOWNLOAD THE BOOK INTO AVAILABLE FORMAT (New Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download Full EPUB Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download Full doc Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download PDF EBOOK here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download EPUB Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download doc Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THE can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THE is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBOOK .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookBOOK, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, EBOOK, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THE Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THE the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THE Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Have you ever used the help of ⇒ www.HelpWriting.net ⇐? They can help you with any type of writing - from personal statement to research paper. Due to this service you'll save your time and get an essay without plagiarism.
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • You have to choose carefully. ⇒ www.WritePaper.info ⇐ offers a professional writing service. I highly recommend them. The papers are delivered on time and customers are their first priority. This is their website: ⇒ www.WritePaper.info ⇐
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • DOWNLOAD THE BOOK INTO AVAILABLE FORMAT (New Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://urlzs.com/UABbn } ......................................................................................................................... Download Full EPUB Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... Download Full doc Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... Download PDF EBOOK here { https://urlzs.com/UABbn } ......................................................................................................................... Download EPUB Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... Download doc Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THE can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THE is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBOOK .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookBOOK, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, EBOOK, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THE Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THE the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THE Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Ryan Shed Plans 12,000 Shed Plans and Designs For Easy Shed Building! ✤✤✤ https://t.cn/A62Ydb8v
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Cloud Native Middleware Microservices - 10 Lessons Learned

  1. 1. Kai Wähner Technology Evangelist kontakt@kai-waehner.de LinkedIn @KaiWaehner www.kai-waehner.de April 2017 (O’Reilly Software Architecture Conference, New York, USA) 10 Lessons Learned from Building Cloud Native Middleware Microservices
  2. 2. © Copyright 2000-2017 TIBCO Software Inc. Evolving Demands from the Business AGILITY & SPEED REDUCED CYCLE TIMES WEB SCALE LOWER COST FAIL FAST
  3. 3. © Copyright 2000-2017 TIBCO Software Inc. • A cloud-native architecture enables flexible and agile development • Only vendor- and platform-agnostic architectures are future-safe • Various technologies, open source frameworks and middleware complement each other Key Takeaways
  4. 4. © Copyright 2000-2017 TIBCO Software Inc. 1) A Legacy Monolith Application 2) The Move to Microservices 3) The Need for a Cloud Native Platform 4) Cloud Native Microservices 5) Live Demo with Docker, Kubernetes, Cloud Foundry Agenda
  5. 5. © Copyright 2000-2017 TIBCO Software Inc. 1) A Legacy Monolith Application 2) The Move to Microservices 3) The Need for a Cloud Native Platform 4) Cloud Native Microservices 5) Live Demo with Docker, Kubernetes, Cloud Foundry Agenda
  6. 6. © Copyright 2000-2017 TIBCO Software Inc. Big and Complex Monolith Monolith 1 „Big SOA Application“ (Middleware + Java) Monolith 2 Monolith 3 CRM ERM Host ... Virtual Machine(s) Cloud-Ready On Premise Public Cloud
  7. 7. © Copyright 2000-2017 TIBCO Software Inc. #1 Monoliths and on premise will not die. Not everything will or should go to cloud services!
  8. 8. © Copyright 2000-2017 TIBCO Software Inc. Various Technologies Glued Together Middleware
  9. 9. © Copyright 2000-2017 TIBCO Software Inc. Development Environment Zero Coding Code Everything or anything in between
  10. 10. © Copyright 2000-2017 TIBCO Software Inc. 1) A Legacy Monolith Application 2) The Move to Microservices 3) The Need for a Cloud Native Platform 4) Cloud Native Microservices 5) Live Demo with Docker, Kubernetes, Cloud Foundry Agenda
  11. 11. © Copyright 2000-2017 TIBCO Software Inc. 11 Microservices Example http://www.ibm.com/developerworks/cloud/library/cl-bluemix-microservices-in-action-part-1-trs/ à Shorter time to results and increased flexibility / scalability à Replace small pieces instead of a complete application
  12. 12. © Copyright 2000-2017 TIBCO Software Inc. Various Forms of (Micro)Services Integration Service Monolith application SOA Integration Service Service ServiceService Service SaaS Service BPM Service
  13. 13. © Copyright 2000-2017 TIBCO Software Inc. From a Monolith to Microservices Business Service A1 Java Cloud-Ready On Premise Public Cloud CRM ERM Host ... Business Service A2 Python Integration Service A3 Middleware Business Service B1 Java Business Service B3 Python Business Service B2 Go Integration Service B4 Middleware Virtual Machine(s)
  14. 14. © Copyright 2000-2017 TIBCO Software Inc. Microservice Orchestration and Integration https://www.infoq.com/presentations/paypal-api-evolution http://techblog.netflix.com/2016/08/engineering- trade-offs-and-netflix-api.html https://www.infoq.com/presentations/uber-darwin
  15. 15. © Copyright 2000-2017 TIBCO Software Inc. #2 The Need for Orchestration and Integration of (Micro)services is not going away!
  16. 16. © Copyright 2000-2017 TIBCO Software Inc. Distributed Microservice Architecture http://blogs.gartner.com/gary-olliffe/2015/01/30/microservices-guts-on-the-outside/ ”That complexity has moved and […] increased [to] the outer architecture.”
  17. 17. © Copyright 2000-2017 TIBCO Software Inc. New Challenges Emerging… http://highscalability.com/blog/2014/4/8/microservices-not-a-free-lunch.html ”[…] when considering Microservice like architectures, it's really important to not be attracted to the hype on this one as the challenges and costs are as real as the benefits." • Different Languages / Technologies • DevOps Skills Required • Distributed System Complexity • Distributed Configuration • Service Discovery • Resiliency • Client Side Load Balancing • Testability Challenges • Orchestration / Integration • Spaghetti Communication (again ?!) • Re-Delivery • Re-Route • Cache • ...
  18. 18. © Copyright 2000-2017 TIBCO Software Inc. New Design Patterns Emerging… Resilience Design Patterns • Circuit Breaker • Tolerant Reader • Intelligent Agent • … http://martinfowler.com/bliki/CircuitBreaker.html https://github.com/Netflix/Hystrix/wiki maxFailures = 5 resetTimeout = 1min callTimeout = 10s à maxFailures++ Example: Circuit Breaker to prevent cascading failures
  19. 19. © Copyright 2000-2017 TIBCO Software Inc. #3 Microservices are not free lunch. They do not fit into every scenario!
  20. 20. © Copyright 2000-2017 TIBCO Software Inc. Open API and API Management
  21. 21. © Copyright 2000-2017 TIBCO Software Inc. New Design Patterns Emerging… http://samnewman.io/patterns/architectural/bff https://www.thoughtworks.com/insights/blog/bff-soundcloud Example: Backends for Frontends (BfF) ?
  22. 22. A P I M A N A G E M E N T © Copyright 2000-2017 TIBCO Software Inc. From Microservices to Open APIs Business Service A1 Java Cloud-Ready On Premise Public Cloud CRM ERM Host ... Business Service A2 Python Integration Service A3 Middleware Business Service B1 Java Business Service B3 Python Business Service B2 Go Integration Service B4 Middleware API API Virtual Machine(s)
  23. 23. © Copyright 2000-2017 TIBCO Software Inc. #4 Design Microservices with open APIs in mind!
  24. 24. © Copyright 2000-2017 TIBCO Software Inc. 1) A Legacy Monolith Application 2) The Move to Microservices 3) The Need for a Cloud Native Platform 4) Cloud Native Microservices 5) Live Demo with Docker, Kubernetes, Cloud Foundry Agenda
  25. 25. © Copyright 2000-2017 TIBCO Software Inc. “Cloud washing is the purposeful and sometimes deceptive attempt by a vendor to rebrand an old product or service by associating the buzzword ‘cloud’ with it [and offering it via a public cloud infrastructure].” Cloud Washing vs. Cloud Native http://searchcloudstorage.techtarget.com/definition/cloud-washing !
  26. 26. © Copyright 2000-2017 TIBCO Software Inc. 12 (or 13, 14, …) Factor Apps for Cloud Native Microservices Codebase One codebase tracked in revision control, many deploys. Dependencies Explicitly declare and isolate dependencies. Config Store config in the environment. Backing Services Treat backing services as attached resources. Build, Release, Run Strictly separate build and run stages. Processes Execute the app as one or more stateless processes. Port Binding Export services via port binding. Concurrency Scale out via the process model. Disposability Maximize robustness with fast startup and graceful shutdown. Dev / Prod Parity Keep dev, staging, and prod as similar as possible. Logs Treat logs as event streams. Admin Processes Run admin/mgmt tasks as one-off processes. https://12factor.net/
  27. 27. © Copyright 2000-2017 TIBCO Software Inc. • Scalable services • Service Discovery • Load balancing and failover • Resiliency • DevOps and automation • Usage of public cloud platforms, but also private or hybrid • Self-service, pay-as-you-use, multi-tenancy • Vendor-agnostic deployment Cloud Native (à not just Microservices) à Focus on business problems
  28. 28. © Copyright 2000-2017 TIBCO Software Inc. #5 Cloud-Native means much more than a “cloud-washed” application deployed to a cloud provider!
  29. 29. © Copyright 2000-2017 TIBCO Software Inc. == The Momentum of Containers How to deploy independent Applications or (Micro)Services? Garden
  30. 30. © Copyright 2000-2017 TIBCO Software Inc. Why Containers? http://www.slideshare.net/andersjanmyr/docker-the-future-of-devops
  31. 31. A P I M A N A G E M E N T © Copyright 2000-2017 TIBCO Software Inc. From Microservices and Open APIs to Containers Business Service A1 Java CRM ERM Host ... Business Service A2 Python Integration Service A3 Middleware Business Service B1 Java Business Service B3 Python Business Service B2 Go Integration Service B4 Middleware API API Cloud-Ready On Premise Public Cloud Container(s) Container(s) Container(s) Virtual Machine(s)
  32. 32. © Copyright 2000-2017 TIBCO Software Inc. #6 Microservices and Containers are often used together, but also work very well without each other!
  33. 33. © Copyright 2000-2017 TIBCO Software Inc. Cloud-Native Architecture Containers are just the Foundation for a Cloud Native Architecture!
  34. 34. © Copyright 2000-2017 TIBCO Software Inc. Cloud Native Landscape (created by CNCF) https://github.com/cncf/landscape
  35. 35. Cloud Native Platform (Infrastructure-as-a-Service) Choose your IaaS Private or Hybrid Cloud Reduced costs of Infra Self-hosted & Controlled Env Servers Storage Network IaaS
  36. 36. Cloud Native Platform (Platform-as-a-Service) Choose your PaaS / Container Cloud-Native App Dev Self-service agile infrastructure Elasticity & Scalability OS & Containers Scalability Routing Logging / Monitoring PaaS
  37. 37. © Copyright 2000-2017 TIBCO Software Inc. Cloud Native Platform (IaaS + PaaS) Choose your IaaS Choose your PaaS / Container Private or Hybrid Cloud Cloud-Native App Dev Reduced costs of Infra Self-service agile infrastructure Self-hosted & Controlled Env Elasticity & Scalability Servers Storage Network OS & Containers Scalability Routing Logging / Monitoring PaaS IaaS
  38. 38. © Copyright 2000-2017 TIBCO Software Inc. Kubernetes (K8S) http://kubernetes.io/docs/getting-started-guides/#cloud
  39. 39. © Copyright 2000-2017 TIBCO Software Inc. Cloud Foundry http://www.slideshare.net/cdavisafc/cloud-foundry-technical-overview
  40. 40. © Copyright 2000-2017 TIBCO Software Inc. Apache Mesos – a “Cloud Operating System” http://www.slideshare.net/Docker/building-web-scale-apps-with-docker-and-mesos/30
  41. 41. © Copyright 2000-2017 TIBCO Software Inc. “The basic resource for CaaS is a container, rather than a virtual machine (VM) or a bare metal hardware host system.” Container-as-a-Service (CaaS) http://searchcloudcomputing.techtarget.com/definition/Containers-as-a-Service-CaaS
  42. 42. © Copyright 2000-2017 TIBCO Software Inc. Serverless Computing • Bring a function (not an entire application) up for one single request. • No cluster or server instance management. • Small microservice-style functions running for a few (milli)seconds or at latest a few minutes. • 100% utilization (!!!) “Sponsored by Red Hat / JBoss"
  43. 43. © Copyright 2000-2017 TIBCO Software Inc. #7 Be cloud platform agnostic. The (container) world changes fast!
  44. 44. © Copyright 2000-2017 TIBCO Software Inc. 1) A Legacy Monolith Application 2) The Move to Microservices 3) The Need for a Cloud Native Platform 4) Cloud Native Microservices 5) Live Demo with Docker, Kubernetes, Cloud Foundry Agenda
  45. 45. A P I M A N A G E M E N T © Copyright 2000-2017 TIBCO Software Inc. From Containers to a Cloud-Native Platform Business Service A1 Java CRM ERM Host ... Business Service A2 Python Integration Service A3 Middleware Business Service B1 Java Business Service B3 Python Business Service B2 Go Integration Service B4 Middleware API API Cloud-Native On Premise Public Cloud Container(s) Container(s) Container(s) Cloud Native Platform
  46. 46. © Copyright 2000-2017 TIBCO Software Inc. #8 Containers are a lower level technology. Only the infrastructure provider should care, but not the application developer!
  47. 47. © Copyright 2000-2017 TIBCO Software Inc. DevOps Elements – Culture and Technology! Process Tools Automation Culture Continuous Integration/ Continuous Development APIs MicroservicesFrequent releases Collaboration
  48. 48. © Copyright 2000-2017 TIBCO Software Inc. #9 Automation (CI / CD / DevOps) and the related cultural change are key for success. Especially for Cloud-Native Microservices!
  49. 49. © Copyright 2000-2017 TIBCO Software Inc. Microservices, Cloud, Container, PaaS, APIs, Coding, Visual Dev, … Show me some cloud native examples!
  50. 50. © Copyright 2000-2017 TIBCO Software Inc. • Open Source • Runs on OpenShift PaaS (which is based on Kubernetes) • Also available as iPaaS • JBoss Fuse (based on Apache Camel and JBoss A-MQ) • For Integration Specialists • Focus on writing source code JBoss Middleware Services https://www.openshift.com/container-platform/middleware-services.html
  51. 51. © Copyright 2000-2017 TIBCO Software Inc. JBoss Example: Apache Camel Integration Service Java DSL new RouteBuilder() { public void configure() { from(”jms:myQueue").loadBalance() .circuitBreaker(2, 1000L, MyCustomException.class) .to("mock:result"); }}; XML DSL <route> <from uri=“jms:myQueue"/> <loadBalance> <circuitBreaker threshold="2" halfOpenAfter="1000"> <exception>MyCustomException</exception> </circuitBreaker> <to uri="mock:result"/> </loadBalance> </route>
  52. 52. © Copyright 2000-2017 TIBCO Software Inc. WSO2 http://wso2.com/cloud/paas/ • Open Source • Runs on different cloud platforms • Also available as iPaaS • WSO2 Products (like ESB or CEP) containerized for cloud offerings • WSO2 Microservices Framework for Java • For Integration Specialists • Focus on writing source code and configuration
  53. 53. © Copyright 2000-2017 TIBCO Software Inc. TIBCO • Runs on various cloud platforms (TIBCO BusinessWorks Container Edition) • Native integration with 3rd party frameworks like Consul or Hystrix • Also available as iPaaS (TIBCO Cloud Integration) • Focus on visual coding and productivity • Powerful IDE (Visual Coding) + Web user interface • For Integration Specialists and Citizen Integrators
  54. 54. © Copyright 2000-2017 TIBCO Software Inc. #10 Cloud native middleware microservices leverage various technologies, open source frameworks and infrastructure components like containers or messaging!
  55. 55. © Copyright 2000-2017 TIBCO Software Inc. 1) A Legacy Monolith Application 2) The Move to Microservices 3) The Need for a Cloud Native Platform 4) Cloud Native Microservices 5) Live Demo with Docker, Kubernetes, Cloud Foundry Agenda
  56. 56. © Copyright 2000-2016 TIBCO Software Inc. Develop Deploy Commit Build Config Demo Setup
  57. 57. © Copyright 2000-2017 TIBCO Software Inc. Live Demo Video Recordings TIBCO BusinessWorks Container Edition (BWCE) and Mashery with Docker, Kubernetes, CloudFoundry, Consul, Spring Cloud Config: https://www.youtube.com/watch?v=VISNxgB74Bg TIBCO BWCE and Netflix' Hystrix Circuit Breaker: https://www.youtube.com/watch?v=VL7-T6IIuZk (also on www.kai-waehner.de)
  58. 58. © Copyright 2000-2017 TIBCO Software Inc. • A cloud-native architecture enables flexible and agile development • Only vendor- and platform-agnostic architectures are future-safe • Various technologies, open source frameworks and middleware complement each other Key Takeaways
  59. 59. Questions? Please contact me! Kai Wähner Technology Evangelist kontakt@kai-waehner.de @KaiWaehner www.kai-waehner.de LinkedIn

×