migrate-go-redis
Migrating from go-redis to Valkey GLIDE (Go)
Use when migrating a Go application from go-redis/redis to the GLIDE client library.
Routing
- String, hash, list, set, sorted set, delete, exists, cluster -> API Mapping
- Pipeline, transaction, Batch API, TxPipelined -> Advanced Patterns
- PubSub, subscribe, publish, queue-based polling -> Advanced Patterns
Key Differences
| Area | go-redis | GLIDE |
|---|---|---|
| Return types | *StatusCmd, *StringCmd with .Result() |
models.Result[T] with .Value() and .IsNil() |
| Nil handling | redis.Nil sentinel error |
val.IsNil() method |
| Configuration | redis.Options{} struct |
config.NewClientConfiguration() builder chain |
| Multi-arg commands | Varargs: Del(ctx, "k1", "k2") |
Slice args: Del(ctx, []string{"k1", "k2"}) |
| Expiry | Duration arg: Set(ctx, "k", "v", 60*time.Second) |
SetWithOptions + options.SetOptions |
More from avifenesh/valkey-skills
valkey
Use when building apps with Valkey - caching, sessions, queues, locks, rate-limiting, leaderboards, counters, pub-sub, streams, scripting. Covers IFEQ/DELIFEQ, hash field TTL, COMMANDLOG. Not for server internals (valkey-dev) or ops (valkey-ops).
5valkey-dev
Use when contributing to the Valkey server - C internals, event loop, commands, data structures, cluster, replication, RDB/AOF, memory, threading, modules, Lua, RESP, tests. Not for app development (valkey) or ops (valkey-ops).
5valkey-ops
Use when deploying, configuring, monitoring, or troubleshooting self-hosted Valkey. Covers Sentinel, cluster, persistence, replication, security, Kubernetes, performance tuning. Not for app development (valkey) or server internals (valkey-dev).
5valkey-ecosystem
Use when evaluating the Valkey ecosystem - client libraries, modules (JSON, Bloom, Search), managed services (AWS, GCP, Aiven), monitoring tools, frameworks (Spring, Django, Rails), Docker/Kubernetes deployment, CI/CD patterns, migration from Redis, and developer tooling.
5glide-mq
Use when building message queues with glide-mq. Covers queue setup, producer/consumer patterns, job scheduling, workflows, batch processing, streaming, and suspend/resume. Not for migrating from BullMQ (migrate-bullmq) or Bee-Queue (migrate-bee).
4valkey-glide
Router for Valkey GLIDE per-language skills. Use when you need to find the right language-specific GLIDE skill or migration skill. Not for GLIDE library internals or contributing to GLIDE source code - use glide-dev instead.
4