#1787·dicedb

DiceDB Proxy

Author: arpitbbhayaniCreated Mar 9, 2026Updated Jun 7, 2026

A horizontally scalable REST API proxy for DiceDB.

API

  • Expose DiceDB commands over a REST API
  • Follow the Upstash Redis REST API design as a reference
  • Return consistent error response format across all endpoints

Authentication

  • Support authentication via HTTP headers
  • Support token rotation without downtime

Reactivity

Cluster Support

  • Must work with DiceDB in cluster mode

Scalability

  • Must be horizontally scalable, similar to Envoy
  • Maintain connection pools to DiceDB upstream nodes
  • Support configurable timeouts for upstream connections and client requests
  • Handle graceful shutdown, draining in-flight requests cleanly

Security

  • TLS support for inbound client connections and outbound DiceDB connections

Rate Limiting

  • Per-token and per-IP rate limiting

Observability

  • Structured logging with request tracing
  • Prometheus-compatible metrics endpoint exposing latency, throughput, and error rates
  • Health check endpoint for load balancers and orchestrators

Configuration

  • All configuration via environment variables and/or a config file
  • No hard-coded values

Deployment

  • Docker image with a minimal base
  • Kubernetes manifests or Helm chart

Internal Design

  • Use Valkey C SDK as the base client
  • Extend the SDK to support the OBSERVE command for reactivity

Language

  • C for easier extensibility in the future