- Low-latency entitlement evaluations
- Local caching of entitlements and current usage
- Subscription to real-time updates for entitlement and usage changes
Node.js applications do not require the Sidecar. The Node.js SDK provides full feature parity with the Sidecar, including low-latency entitlement checks, caching, and real-time updates.
Benefits for your application host
Currently, the Sidecar only caches entitlements and current usage. Customer and subscription objects are not cached at this time. Key benefits of using the Sidecar:- Reduced CPU and memory usage in the host application compared to embedding the SDK directly
- Language-neutral API defined with Protocol Buffers and exposed over gRPC
- Flexible caching: in-memory cache by default, or Redis-based persistent cache
- Can be scaled together with the main application or as an independent, shared service
Fail-safe resilience goals
The main design goal of the Sidecar is to remain operational during network issues while still returning valid read responses. Under normal conditions, reads resolve instantly from the local Redis cache. When the upstream Stigg API becomes unreachable, cached responses are returned directly from Redis. When Redis itself is down, Sidecar attempts a live upstream API call if it is still reachable. If that also fails, it falls back to configurable static default values as a final safety layer. Write paths likeReportUsage and ReportEvents do not return fallback values — errors are returned explicitly and should be handled by your own observability and logging layer using try/catch and structured logging.
