Many services share a small set of keys that clients read constantly —
feature flags, pricing tables, session metadata. That is a
shared hot lookup Workload pattern where many clients repeatedly read a small, shared set of keys (config, feature flags, hot catalog rows). Express co-located with compute is a fit when GET latency dominates. pattern: latency
and consistency matter more than multi-AZ durability for those hot objects.
S3 Express One Zone Amazon S3 Express One Zone — single-AZ storage class optimized for consistent single-digit millisecond latency, used only with directory buckets. S3 Express One Zone puts object storage
in a single Availability Zone next to your compute. You use a
directory-bucket S3 bucket type that hosts the S3 Express One Zone storage class. Names follow bucket-base-name--zone-id--x-s3 and live in a single Availability Zone. and session-based
CreateSession s3express:CreateSession — session-based auth for zonal (object-level) operations on a directory bucket. The SDK or CLI obtains temporary credentials scoped to that bucket before GET/PUT/LIST. auth so zonal GETs stay
in the single-digit millisecond range when the client is co-located.
CIDR 10.87.0.0/16, public subnet in the AZ that maps to
apse2-az1 Availability Zone ID — a unique, account-stable identifier such as apse2-az1. Directory bucket names and Express location config use the AZ ID, not the account-local AZ name (for example ap-southeast-2a)., IGW, and both S3
gateway endpoints VPC gateway endpoint for private S3 access without a NAT gateway. This lab creates both com.amazonaws.ap-southeast-2.s3 and com.amazonaws.ap-southeast-2.s3express..
Create the buckets
Express directory bucket plus a Standard general-purpose bucket for the
bakeoff.
IAM, EC2, and harness
Instance profile with CreateSession, m7g.large in that AZ,
seed keys, then run the harness Docker container on the lab EC2 instance that continuously GETs the same keys from Express and Standard, exposes a dashboard on :8080, and reports p50/p90 latency ratios. on :8080.
Read the dash, then tear down
Compare p50/p90 ratios, then remove everything —
./scripts/demo.sh down and ./scripts/image.sh down.
Expectation
Notes
Lab length
Under an hour once tooling is ready (verified this account)