Scalability / Performance / Optimization

Kind: category

Record: architecture-category:scalability-performance-optimization

Canonical: Ontology

The Scalability / Performance / Optimization category holds 28 architecture principles.

Listed in Principle categories, after Structural Patterns and before Streaming / Pipeline / Dataflow Processing.

Principle

Layer

Linked from

Scalability / Performance / Optimization

Every principle in this category is listed as a record. Each record carries its kind, its severity, the scopes it applies at and the layer it lives in, then the edge relations that join it to other records, the records that point back at it, the contracts that answer to it and the tensions it takes part in. The descriptors say how it is violated, detected, measured, repaired and enforced. Where the record carries one, an exemplar shows the shape before and after the principle is applied.

Relations diagram
The relations inside this category.
flowchart LR
    n_scalability["Scalability"]
    n_horizontal_scaling["Horizontal Scaling"]
    n_vertical_scaling["Vertical Scaling"]
    n_elasticity["Elasticity"]
    n_load_balancing["Load Balancing"]
    n_sharding["Sharding"]
    n_partitioning["Partitioning"]
    n_caching["Caching"]
    n_statelessness["Statelessness"]
    n_concurrency["Concurrency"]
    n_parallelism["Parallelism"]
    n_throughput["Throughput"]
    n_latency["Latency"]
    n_performance_engineering["Performance Engineering"]
    n_algorithmic_efficiency["Algorithmic Efficiency"]
    n_time_complexity["Time Complexity"]
    n_space_complexity["Space Complexity"]
    n_big_o_notation["Big O Notation"]
    n_optimization["Optimization"]
    n_profiling["Profiling"]
    n_benchmarking["Benchmarking"]
    n_bottleneck_analysis["Bottleneck Analysis"]
    n_resource_utilization["Resource Utilization"]
    n_rate_limiting["Rate Limiting"]
    n_memory_efficiency["Memory Efficiency"]
    n_cdn_edge_caching["CDN / Edge Caching"]
    n_read_replica["Read Replica"]
    n_queuing_theory["Queuing Theory"]
    n_scalability --> n_performance_engineering
    n_horizontal_scaling --> n_elasticity
    n_elasticity --> n_scalability
    n_load_balancing --> n_scalability
    n_sharding --> n_horizontal_scaling
    n_partitioning --> n_scalability
    n_partitioning --> n_parallelism
    n_caching --> n_scalability
    n_statelessness --> n_horizontal_scaling
    n_statelessness --> n_load_balancing
    n_concurrency --> n_throughput
    n_parallelism --> n_throughput
    n_throughput --> n_scalability
    n_throughput -.-> n_latency
    n_latency --> n_performance_engineering
    n_performance_engineering --> n_profiling
    n_performance_engineering --> n_benchmarking
    n_performance_engineering --> n_scalability
    n_algorithmic_efficiency --> n_scalability
    n_time_complexity --> n_algorithmic_efficiency
    n_time_complexity -.-> n_space_complexity
    n_space_complexity --> n_resource_utilization
    n_space_complexity -.-> n_time_complexity
    n_big_o_notation --> n_algorithmic_efficiency
    n_optimization --> n_profiling
    n_optimization --> n_performance_engineering
    n_profiling --> n_performance_engineering
    n_benchmarking --> n_performance_engineering
    n_bottleneck_analysis --> n_profiling
    n_bottleneck_analysis --> n_optimization
    n_resource_utilization --> n_performance_engineering
    n_memory_efficiency --> n_scalability
    n_cdn_edge_caching --> n_caching
    n_cdn_edge_caching --> n_latency
    n_read_replica --> n_horizontal_scaling
    n_read_replica --> n_load_balancing
    n_queuing_theory --> n_latency