Goal
Use Valkey for caches, queues, sessions and rate limits with your usual Redis client.Prerequisites
- A StackShift account
- Any Redis client library
Workflow
1
Create a database and choose Valkey. Version 9.0 is the only version offered.
2
Connect with the
rediss:// connection string from the database page. Redis client libraries work unchanged.3
Bind it to your app so
REDIS_URL is set for you, then test a real job, cache write or session, not only PING.What Valkey is
Valkey is a Redis-compatible key-value engine. It speaks the Redis protocol and supports the core Redis commands, so you userediss:// URLs, REDIS_URL and your current client libraries. Both valkey-cli and redis-cli connect.
Redis or Valkey
- Choose Valkey for caching, queues (BullMQ, Sidekiq, Celery, Laravel queues), sessions and rate limits.
- Choose Redis when you need JSON documents, search, vector search, time series or Bloom filters. Those commands (
JSON.*,FT.*,TS.*,BF.*) are not available on Valkey. - In the API, CLI and Terraform the engine is
valkey.redismeans Redis 8. - Valkey is BSD-licensed; Redis 8 runs under the AGPLv3 licence.
Standby
An optional standby with automatic failover is rolling out for Redis and Valkey databases on StackShift servers. If your database page doesn’t offer a standby, it isn’t switched on for your account yet. Standbys are not available for databases on your own servers. Turn it on from the database page or withPUT /api/v1/databases/{id}/standby and {"mode": "async"}; send {"mode": "off"} to turn it off. sync is not offered for Redis or Valkey. GET /api/v1/databases/{id}/standby shows its state (enabling, active, degraded, failing_over, disabling, disabled or failed), which server is serving (master: home or standby), how many failovers happened and when the last one was. The database needs a recent backup that passed its restore check first.
- The standby runs on another server. If the main server fails, the standby takes over in about 20 to 35 seconds.
- Your connection string and
REDIS_URLnever change; clients reconnect on their own. - When the failed server comes back, it rejoins as the standby. Switching back to the main server pauses writes for 1 to 3 seconds.
- If only the standby is lost, your database keeps accepting writes.
- Copying to the standby is asynchronous, so a failover can lose about the last second of writes after a crash, or up to about 5 seconds if the main server is cut off from the network.
- Each failover shows up in your operations events.
- The standby is billed hourly as a second database of the same size.
- While a standby is on, stopping the database is refused. Deleting the database turns the standby off first.
Limits
- Valkey has no connection pooler; clients keep their own connections.
- Valkey is not eligible for SQL Import / Export.
Expected result
Your app reads and writes keys through its usual Redis client.
Common failures
Related guides
Redis
Redis 8.10 with JSON, search, vector search, time series and Bloom filters built in.
Create a database
Create a hosted or connected-node database with private, direct public, or StackShift tunnel access.
Database connections and tunneling
Use private, direct public, or StackShift tunnel endpoints with TLS and explicit client IP policy.
Back up and restore a database
Use durable recovery storage correctly and understand why backups are independent from portable SQL transfers.