knowledge-base

« Back To Overview

Architecture Style: Pipeline

Pipeline Architecture Style Image

Alternative names: Pipes and filters

Description

Known as the underlying principle behind Unix terminal shell languages, those who dabble in functional programming will also see parallel’s. MapReduce is also a popular concept following this style. An entire process is built up from pipes and filters to deliver a certain functionality.

The power of composition is key in this architectural style.

See Example

Pipes & Filters

When To Use

When NOT To Use

By default don’t use it, unless the “reasons to use” are clearly met.

Considerations

This is still a monolithic style, so it comes with all the flaws of monolithic architectures.

Characteristics

Characteristic Rating
Partitioning Type Technical
Number of quanta 1
Deployability ⭐⭐
Elasticity
Evolutionary ⭐⭐⭐
Fault Tolerance
Modularity ⭐⭐⭐
Overall cost ⭐⭐⭐⭐⭐
Performance ⭐⭐
Reliability ⭐⭐⭐
Scalability
Simplicity ⭐⭐⭐⭐⭐
Testability ⭐⭐⭐

Resources