Architect
Level: Architect | Prerequisites: Java Expert track | Docker: zchencow/innozverse-java:latest
OpenJDK Temurin 21.0.10 + Maven 3 · All labs Docker-verified
Overview
The Architect track covers advanced JVM internals, modern Java features (Loom, Panama, GraalVM), distributed systems patterns, and production platform engineering. Each lab builds toward the capstone: a fully integrated production platform.
Labs
01
ClassLoader hierarchy, delegation, bytecode, JIT
ClassLoader.defineClass, ASM, javap
02
AOT vs JIT, Truffle, SubstrateVM, polyglot
native-image, ScriptEngine, reflect-config.json
03
Virtual threads, carrier threads, ScopedValues
Thread.ofVirtual(), newVirtualThreadPerTaskExecutor
05
PECS, type erasure, TypeToken, sealed+generics
TypeToken, ? extends, ? super, sealed interface
06
Flow API, backpressure, Processor pipeline
Publisher, SubmissionPublisher, Processor
07
Foreign memory, native calls, MemoryLayout
MemorySegment, Arena, Linker, MethodDescriptor
08
EC P-256, ECDSA, PBKDF2, AES-GCM, KeyStore
KeyPairGenerator, Signature, Cipher, KeyStore
09
Service definition, streaming, interceptors
ManagedChannel, ServerBuilder, ServerInterceptor
10
Circuit breaker, saga, event sourcing, CQRS, outbox
CircuitBreaker, Retry, EventStore, SQLite
11
Producer/Consumer, EOS, offset management, Avro
KafkaProducer, KafkaConsumer, ConsumerRebalanceListener
12
Manual DI, property binding, conditions, lifecycle
Reflection, @Component, @Inject, @Value
13
OTel traces, Micrometer metrics, structured logs
SdkTracerProvider, Counter, Timer, MDC
Learning Path
Quick Start
Docker Image Contents
OpenJDK Temurin
21.0.10
Maven
3.x (/usr/share/java/maven-3/)
OS
Linux (x64)
Pre-cached Maven dependencies (fast startup):
io.grpc:grpc-*:1.58.0io.github.resilience4j:*:2.1.0io.opentelemetry:opentelemetry-sdk:1.32.0org.xerial:sqlite-jdbc:3.47.0.0org.apache.kafka:kafka-clients:3.6.1org.openjdk.jmh:jmh-core:1.37org.junit.jupiter:junit-jupiter:5.10.1io.micrometer:micrometer-core:1.12.0
Key Concepts by Topic
Concurrency
Virtual threads (Loom): JVM-scheduled, cheap, blocking I/O is fine
VarHandle: Precise memory ordering (plain/opaque/acquire-release/volatile)
StampedLock: Optimistic reads for read-heavy workloads
Reactive Streams: Backpressure via
request(n)— never overwhelm subscribers
JVM Internals
ClassLoader delegation: Bootstrap → Platform → Application → Custom
GraalVM AOT: Faster startup, lower memory, restricted reflection
Project Panama: Replace JNI with type-safe FFM API
JIT tiers: Interpreter → C1 (profiling) → C2 (optimized)
Distributed Systems
Circuit breaker: CLOSED → OPEN → HALF_OPEN state machine
Saga: Compensating transactions for distributed consistency
Event sourcing: Append-only facts, rebuild state by replaying
Outbox pattern: Atomic DB write + event in same transaction
Security
EC P-256:
secp256r1— NIST-standard elliptic curveECDSA: Non-deterministic signatures (use RFC 6979 for deterministic)
AES-GCM: Authenticated encryption — ciphertext includes auth tag
PBKDF2: 600,000 iterations (OWASP 2023) for password hashing
Observability
OTel tracing:
traceparentheader propagates trace-id across servicesMicrometer: Vendor-neutral metrics facade (Prometheus/Datadog/etc.)
MDC: Thread-local key/value injected into every log line
Verified Test Results
All labs verified against zchencow/innozverse-java:latest:
Last updated
