- • JWT verification (HS256) + X-User-Id HMAC injection to downstream
- • Redis sliding-window rate limiting per-IP (public) and per-uid (API)
- • Path-based routing to 7 backend services via Nacos lb://
- • CORS deduplication (DedupeResponseHeader filter)
- • trace_id injection on every request (X-Trace-Id header)
- • /internal/v1/** hard-blocked from public internet (HTTP 404)
- • Uniform
{ code, msg, data, traceId } error envelope
- • WebFlux / reactive — no blocking code, no DB, no Kafka
- • Produces: none
- • Consumes: none
- • gateway is a stateless proxy — all event logic lives downstream
- • Redis 7 — rate-limit counters (Spring RequestRateLimiter) + jti blacklist lookup
- • Nacos 2.3 — service discovery (lb:// resolution) + config (JWT secret, gateway props)
- • Downstream services: user, game, wallet, message, agent, admin (Nacos-discovered)
- • sign-service and chain-service are NOT routed via gateway (internal Feign only)