Stairway to the Cloud

The (almost) complete guide for designing software systems in the cloud

Overview of the fundamental concepts, building blocks, technologies, design patterns of cloud-based software systems, including:

Posts - Page 2 of 2

Cloud Storage

  • 2 min read

Data storage refers to magnetic, optical or mechanical media that records and preserves digital information for ongoing or future operations. It is a fundamental component of computer systems and an essential enabler for executing computer programs. A computer’s CPU can’t actually compute anything or produce any output data without the user’s input. Users can enter the input data directly into a computer. It can work for small amounts of data, but it is not practical for larger volumes, including the actual program instructions.

Read More

Virtual Computing

  • 1 min read

In the past, physical servers functioned much like regular computers. The server was a physical machine on which the operating system was installed and the applications on top of it. These types of servers are often referred to as ‘bare metal servers’, as there’s nothing in between the actual physical (metal) machine and the operating system. Usually, these servers were dedicated to one specific purpose, such as running one designated system.

Read More

The Bare Metal Machine

  • 1 min read

As we start our journey to the Cloud, it would make sense to start with the lowest layer of computing, which is the computer hardware. Any software is useless without hardware. The cloud infrastructure is based on an enormous amount of physical computers, also known as servers or simply machines. Although you don’t own them and you can’t see them, they are somewhere out there on the ground (or maybe below the ground or even underwater), consuming a lot of energy and running your software. This is true even if you use so-called “serverless” services.

Read More