Tier 2 — Hikari + RestTemplate timeouts + Stripe SDK + Redis cache

Performancekamolos
Shipped
May 28, 2026 at 11:58 PM UTC
Author
Kamo
Commit
89cbd1e

- RestClientConfig: single shared RestTemplate bean with 5s connect / 30s read timeouts. MediaServiceClient / NotificationDispatchService / OfacSanctionsService / MlaCheckService inject this instead of constructing per-class clients with no timeout — previous behavior would deadlock a thread per slow downstream. - StripeConfig.@PostConstruct: setConnectTimeout(5000) + setReadTimeout(30000) + setMaxNetworkRetries(2). Also fails fast if the prod profile is loaded with a non-live (sk_test_*) key, refusing to start. - Hikari pool tuned in configmap: max-pool=20 / min-idle=5 / connect-timeout=5s / idle-timeout=10m / max-lifetime=30m / leak-detection=60s. - spring-boot-starter-cache + @EnableCaching on the application. - LoanProductService.get cached on Redis (TTL 5min); create/update/delete evict. Hot path for /api/los/products/{uid} reads, called from offer create + acceptance + statement generation.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing