From Concurrency to Service#
Multitenancy#
Tenant
Independent user or organization that shares a computing system with others while maintaining logical isolation.
Aside from an increased efficiency, concurrency “deserializes” the multi-purpose nature of computer systems, allowing multiple independent programs to progress simultaneously rather than sequentially.
In doing so, concurrency offers users the capability “multi-tasking”, enabling a single system to execute various, potentially unrelated tasks at the same time. However, as computer architectures grow in complexity by often incorporating highly specialized circuits for specific operations (e.g., GPUs for parallel processing) it becomes increasingly rare for a single program to fully saturate all available system resources continuously.
This creates the risk of under-utilization. High-performance hardware represents a significant capital investment; if these specialized components are left idle because a single program cannot use them, the cost-efficiency of the system drops drastically.
Conversely, across the computing landscape, many users share nearly identical hardware requirements for their distinct workloads.
Given these two factors, the difficulty of saturating hardware with one task, and the ubiquity of similar hardware needs, one obvious mode of use for complex systems is Multitenancy.
Resource sharing#
Multitenancy enables a single underlying infrastructure to serve multiple distinct users (tenants) simultaneously. In modern infrastructures this is sometimes achieved through a Multi-instance architecture, where the concurrent capabilities of the hardware are used to spawn isolated environments (or instances) for each tenant. While the physical resources (CPU, RAM, Storage) are shared at the lowest level, each tenant interacts with their own private instance, unaware of the others.
By pooling the workloads of diverse users onto a single shared infrastructure, the system can leverage concurrency to fill the ‘idle gaps’ left by one user with the active tasks of another.
In this model, the intense but intermittent demands of multiple tenants are interleaved. When one tenant pauses (e.g., waiting for data), the system instantly switches context to process another tenant’s request. This ensures that the expensive, high-performance components, such as the CPU, cache, and specialized accelerators, are kept in near-constant use.
Consequently, multitenancy transforms the risk of hardware complexity into an economic advantage: the immense cost of a powerful, specialized computer is no longer a burden for a single user, but is amortized across many, making high-performance computing accessible and affordable for all.
Fundamentally, multitenancy transforms physical hardware into a shareable resource that can be provided as a service to others. Instead of every user requiring their own isolated machine, the system becomes a communal pool of computing power, partitioned logically rather than physically.
In an abstract sense, the rise of the Internet (originating with ARPANET in the late 1960s and standardized in the early 1980s) was the pivotal technology that unlocked this potential on a global scale. While early time-sharing systems allowed users to share a mainframe within a single building, the Internet acted as a conduit that allowed computing resources to be shared over vast distances. It decoupled the user of the computation from the location of the hardware, effectively turning processing power into a utility that could be delivered through a wire.
as a Service#
This technological capability inevitably led to an economic transformation: shareable resources are marketable.
When computing power is no longer tied to a specific box on a user’s desk, it becomes a commodity. For the provider, this shifts the goal from simply ‘running programs’ to maximizing utilization for profit. Every idle CPU cycle or unused gigabyte of memory represents lost revenue.
By providing these resources as a service, the owner can monetize the system’s excess capacity, earning fees from multiple tenants who buy exactly what they need, when they need it. In this model, efficiency is no longer just an engineering metric: it is the direct driver of revenue.
While the concept of renting computing power dates back to the 1960s with ‘Time-Sharing’ and evolved into ‘Application Service Providers’ (ASP) in the 1990s, the modern term ‘Software as a Service’ (SaaS) was officially coined in a February 2001 internal document by the Software & Information Industry Association (SIIA).
Since then, the ‘As a Service’ paradigm has become the dominant economic model for computing, shifting the industry’s focus from selling machines (ownership) to selling outcomes (service).
Sources:
https://en.wikipedia.org/wiki/Concurrency_(computer_science)
https://en.wikipedia.org/wiki/Multitenancy
https://en.wikipedia.org/wiki/Software_as_a_service
https://en.wikipedia.org/wiki/As_a_service