Platform Extension

Cache Layer

Redis, ElastiCache, and Memcached caching integration for improved performance. Includes query caching, session storage, and distributed locking.

Free

Overview

The Cache Layer qBit adds distributed caching capabilities to qqq applications. Reduce database load and improve response times with Redis, AWS ElastiCache, or Memcached integration.

Features

  • Redis Integration - Native Redis support with connection pooling and cluster support
  • ElastiCache Support - AWS ElastiCache integration with auto-discovery and failover handling
  • Query Result Caching - Transparent caching of expensive database queries with TTL-based invalidation
  • Session Storage - Store user sessions in Redis for horizontal scaling
  • Distributed Locking - Redis-based distributed locks for coordinating across instances
  • Cache Warming - Pre-populate caches on startup or on a schedule
  • Automatic Invalidation - Cache invalidation on data changes with pattern-based clearing
  • Multi-Level Caching - L1 in-memory cache with L2 Redis backing
  • Performance Metrics - Cache hit/miss ratios, latency percentiles, and memory usage

Use Cases

  • High-traffic applications needing faster read performance
  • Applications with expensive computed fields
  • Horizontally scaled deployments needing shared session state
  • Systems requiring reduced database load
  • APIs needing consistent low-latency responses

Installation

bash
qqq install qbit-cache-layer --license YOUR_LICENSE_KEY

Configuration

Configure Redis caching for your tables:

java
new QTableMetaData()
   .withName("products")
   .withCacheConfig(new CacheConfig()
      .withBackend(CacheBackend.REDIS)
      .withTtlSeconds(3600)
      .withInvalidateOnWrite(true));

Configure ElastiCache with auto-discovery:

java
new CacheBackendMetaData()
   .withType(CacheBackendType.ELASTICACHE)
   .withConfigurationEndpoint("mycache.abc123.cfg.usw2.cache.amazonaws.com:11211")
   .withAutoDiscovery(true);

Requirements

  • qqq Framework 1.0+
  • Java 21+
  • Redis 6+ or Memcached 1.6+ or AWS ElastiCache
  • QRunIO account with valid license key

Ready to build faster?