# Redis Configuration for BullMQ in ToolJet PR Preview Environments # Optimized for Render.com Standard plan (1GB RAM) ################################## NETWORK ##################################### # Bind to localhost only for security (same container access only) bind 127.0.0.1 # Accept connections on default Redis port port 6379 # Enable protected mode (requires password or bind to localhost) protected-mode yes ################################# PERSISTENCE ################################## # Enable AOF (Append Only File) persistence - CRITICAL for BullMQ # Ensures job data survives Redis restarts appendonly yes # Sync strategy: everysec balances performance and durability # - always: Safest but slowest # - everysec: Good balance (recommended) # - no: Fastest but risky appendfsync everysec # Enable RDB snapshots as backup to AOF # Format: save # After 900 sec (15 min) if at least 1 key changed save 900 1 # After 300 sec (5 min) if at least 10 keys changed save 300 10 # After 60 sec if at least 10000 keys changed save 60 10000 ################################## MEMORY ###################################### # CRITICAL for BullMQ: Set max memory to 256MB (25% of 1GB container) # Leave room for PostgreSQL (256MB), ToolJet (400MB), and system (112MB) maxmemory 256mb # CRITICAL for BullMQ: NEVER evict keys - throw error instead # BullMQ requires all job data to remain in Redis # Without this, jobs will be lost when memory is full maxmemory-policy noeviction ################################### GENERAL #################################### # Set the number of databases (default is 16) databases 16 # Close connection after client is idle for N seconds (0 = disable) timeout 0 # TCP keepalive # Send TCP ACKs to clients every N seconds to detect dead connections tcp-keepalive 300 # TCP listen() backlog tcp-backlog 511 ################################### LOGGING #################################### # Logging level # Options: debug, verbose, notice, warning loglevel notice # Log to stdout (captured by Docker/Render) logfile "" ################################### CLIENTS #################################### # Max number of connected clients maxclients 10000 ################################## SLOW LOG #################################### # Log queries slower than N microseconds slowlog-log-slower-than 10000 # Max length of slow log slowlog-max-len 128 ################################ LATENCY MONITOR ############################### # Enable latency monitoring to track latency spikes latency-monitor-threshold 100 ################################## DIRECTORIES ################################# # Working directory for RDB and AOF files # This will be set via command-line or Docker volume dir /var/lib/redis