Session lifecycle, persistence và cluster trade-offs
HTTP session là mutable server state; availability, consistency, serialization và rollout compatibility phải được thiết kế rõ.
Sessions
Lifecycle và cookie
Session ID thường qua cookie; timeout/invalidate/rotation và secure/HttpOnly/SameSite/path/domain quyết định security. Không log raw ID. Session fixation protection phải rotate ID sau privilege change.
Storage choices
In-memory manager nhanh nhưng instance-bound; sticky routing giảm replication cost nhưng node loss mất session. Persistent/shared store thêm network, serialization, TTL và outage modes. Prefer stateless khi domain cho phép, không biến session thành general cache.
Tomcat clustering
DeltaManager replicate rộng; BackupManager giảm copies với topology trade-off. Membership, Tribes channels, valves và distributable application requirements cần test theo đúng version. Network partition/large attributes tạo latency và stale state.
Rolling deployment
Session object phải serialization-compatible qua versions hoặc rollout cần invalidate/migrate. Đo session count/size/age, replication queue/errors và failover latency; chaos node loss với real payload trước khi tuyên bố HA.