ODC Architecture Specialist study materials
ODC Architecture Specialist study resources

ODC Architecture Specialist: Performance, Scalability, and Lifecycle

ODC Architecture Specialist · Work through your exam, one topic at a time.

All guide sections

Performance, Scalability, and Lifecycle

Performance, Scalability, and Lifecycle tests whether your architecture meets response-time and throughput targets and can be operated safely through environments. Performance is a design property: query shape, call granularity, caching, and asynchronous work matter more than last-minute tuning. Scalability comes from stateless logic, bounded resource use, and avoiding chatty cross-module calls. Lifecycle covers promotion, versioning, monitoring, and rollback.

Core rules

  • Filter aggregates early and return only needed attributes. Add indexes for frequent filters and joins.
  • Paginate lists. Never load an unbounded result set into a screen or server action.
  • Move long-running work to asynchronous timers or background processing; keep user-facing calls short.
  • Cache reference data with an explicit invalidation rule; do not cache transactional state by default.
  • Keep server actions stateless. Avoid relying on in-memory state that breaks when instances scale out.
  • Promote through environments with configuration separated from code; monitor errors, latency, and integration failures after release.

Worked example

A dashboard aggregate joins orders, customers, and invoices and becomes slow as data grows. The fix is not a bigger cache. The design filters orders by date range, selects only required columns, paginates the result, and adds an index on order date and customer ID. Reference currency rates are cached because they change daily. Reasoning: the aggregate was scanning and returning too much; reducing row count and adding an index addresses the actual bottleneck, while caching masks it only temporarily.

Traps

  • Adding caching before measuring, then serving stale data with no invalidation path.
  • Ignoring database indexes and blaming the platform.
  • Running long integrations synchronously inside a screen action.
  • Skipping a staging environment and discovering configuration errors in production.