An Example from Scratch

The most obvious distributed system

In the previous lesson, there was an open question for you to ponder: What is an example of a distributed system that is everywhere around you, and that you use every single day?

It’s the internet.

Well, think about it. When you open up your phone, tap on the browser, and then visit www.educative.io, what really happens?

Note: We won’t go into the very technical details just now, but let’s talk about what happens generally.

When you type in the address of Educative on your phone’s browser, the request goes to some server, then from there to some other server, and then probably to Educative’s server. Educative responds with its content, and your browser then renders the pages for you to see. All these things happen so seamlessly that it’s not very obvious that many machines are involved in the process. And the entire ecosystem of machines altogether is actually a form of a distributed system.

In short, the internet is a gigantic network of arguably an infinite number of nodes, and they form a gigantic distributed system.

But this isn’t the most concrete example. Let’s look at another one.

A simple yet concrete example

We’ll now learn about a more simple example of a distributed system, but we’ll do it incrementally.

First, let’s assume that on a shiny morning during your vacation in North London, you came up with a cool app idea for your new startup while brushing your teeth inside a hotel bathroom. You decide to do the following:

  • Take the next available flight home.
  • Convince your best friend to leave his very stable, well-paying job and join you for a new startup.
  • Start developing your app, which you name My Cool App.

My Cool App

As your idea is an app, you probably start with developing that app. The app will run on your users’ smartphones.

Get hands-on with 1200+ tech skills courses.