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

Building distributed systems is accessible. I p...

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

Building distributed systems is accessible. I promise.

Understanding and building distributed systems can be a daunting task, but like most other software development patterns, distributed systems mimic concepts in the real world that you’re already familiar with. Jamie Winsor walks you through building a mental model to help you understand the basics of building distributed systems based on concrete, real-world systems, equipping you with the ability to digest the academic papers that form the basis of distributed systems as we know it.

Not every software development technique is a perfect fit for every problem, and distributed programming is no different. Jamie outlines the pros and cons of building distributed programs to demonstrate when you may or may not want to use this technique. As you explore these trade-offs, you’ll learn how understanding distributed systems helps you find solutions to some of your unanswered problems as well as new solutions to problems you may have previously seen as solved. Jamie discusses his own experience in how rethinking a problem with an eye for distributed systems turned some of his career’s work on its head and gave him a new passion for an old and tiresome problem.

Avatar for Jamie Winsor

Jamie Winsor

June 22, 2017

Other Decks in Technology

Transcript

  1. A collection of distinct processes which are spatially separated, and

    which communicate with one another by exchanging messages. — Leslie Lamport
  2. Lamport Clock Sender time = time + 1; send(msg, time);

    Receiver (message, time_stmap) = recv(); time = max(time_stamp, time) + 1;
  3. Papers • Time, Clocks, and The Ordering of Events in

    a Distributed System • A Universal Modular ACTOR Formalism for Artificial Intelligence • A Robust and Scalable Peer-to-Peer Gossiping Protocol • SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol • Elections in A Distributed Computing System