Skip to main content

45 docs tagged with "scalability"

View all tags

Active Object Pattern

Decouple concurrent execution by encapsulating each object as a standalone thread receiving method calls via message passing.

Caching Patterns

Write-through, write-behind, cache-aside, and TTL strategies for reducing database load

Compute Models

VMs, containers, and serverless platforms—trade-offs in isolation, performance, cold start, and operational complexity

CQRS and Read Models

Separate read and write models to optimize for different access patterns and enable flexible data transformation.

Document Stores

Flexible JSON/BSON schemas for nested data with horizontal scalability and query flexibility

Foundational Concepts

Ground yourself in core architecture, systems thinking, paradigms, and data basics to make sound design decisions.

High Cohesion, Low Coupling

Build systems where components relate strongly to their purpose while remaining loosely connected to other components.

Key-Value Stores

Ultra-fast simple get/set operations with sub-millisecond latency and distributed caching

Load Testing in Pipelines

Validate capacity assumptions with load testing before production; detect regressions automatically.

Orchestration

Scheduling, service discovery, load balancing, and stateful workload management

Performance & Scalability

Design systems that respond quickly and scale horizontally to handle increasing load while maintaining latency budgets.

Performance Budgets

Define and enforce performance targets that align with user experience and business goals.

Proactor Pattern

Simplify asynchronous I/O by letting the framework manage event notifications and completion handlers.

Reactor Pattern

Multiplex I/O events across many connections using a single-threaded event-driven architecture.

Separation of Concerns

Design systems where different areas address different aspects of functionality, improving modularity and maintainability.

Thread Pool Pattern

Reuse threads efficiently by maintaining a pool of pre-allocated workers to process tasks.