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

Game of Streams 🐉

Game of Streams 🐉

Most mission-critical systems have distributed elements or are entirely distributed, resulting in a number of challenges: performance, scalability, reliability, resilience...the eight fallacies of distributed computing are alive and well!

Messaging platforms are often used to solve these problems and increase the "ilities", but they don't come without a few complexities of their own. Come to this session to learn not only how to use open source solutions like Spring Cloud Stream, RabbitMQ, & Apache Kafka to maximize your distributed systems' capabilities while minimizing complexity...but also how to *really* use them! There be dragons when dealing with messaging platforms; the presenter will show you several ways to tame and harness them for maximum fire, maximum altitude. All examples will be coded *live & in real-time*!

Mark Heckler

January 10, 2020
Tweet

More Decks by Mark Heckler

Other Decks in Programming

Transcript

  1. Game of Streams How to tame & get the most

    from your messaging platforms Mark Heckler Professional Problem Solver, Spring Developer & Advocate www.thehecklers.com [email protected] [email protected] @mkheck
  2. @mkheck www.thehecklers.com Who am I? • Author • Architect &

    Developer • Java Champion, Rockstar • Professional Problem Solver • Spring Developer & Advocate • Creador y curador de
  3. @mkheck www.thehecklers.com New book! But you can’t buy it yet…

    DISCLAIMER: artist’s rendition only, not the real cover
  4. @mkheck www.thehecklers.com Takeaways Why use messaging platforms/where do they fit

    in a distributed architecture? Examples of leading messaging platforms What is Spring Cloud Stream? Why use it?
  5. @mkheck www.thehecklers.com The Bezos mandate All teams will henceforth expose

    their data and functionality through service interfaces. Teams must communicate with each other through these interfaces. There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network. It doesn’t matter what technology is used: HTTP, CORBA, pub/sub, etc. All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions. Anyone who doesn’t do this will be fired.
  6. @mkheck www.thehecklers.com Takeaways Why use messaging platforms/where do they fit

    in a distributed architecture? Examples of leading messaging platforms What is Spring Cloud Stream? Why use it?
  7. @mkheck www.thehecklers.com Takeaways Why use messaging platforms/where do they fit

    in a distributed architecture? Examples of leading messaging platforms What is Spring Cloud Stream? Why use it?
  8. @mkheck www.thehecklers.com Takeaways Why use messaging platforms/where do they fit

    in a distributed architecture? Examples of leading messaging platforms What is Spring Cloud Stream? Why use it?
  9. @mkheck www.thehecklers.com And a few really useful bits & bobs

    (if time permits, if not, please star the repo!)