redisclient
Provides sync and async clients to communicate with redis servers using nim-redisparser
Executing commands
Sync
let con = open("localhost", 6379.Port)
echo $con.execCommand("PING", @[])
echo $con.execCommand("SET", @["auser", "avalue"])
echo $con.execCommand("GET", @["auser"])
echo $con.execCommand("SCAN", @["0"])
Async
let con = await openAsync("localhost", 6379.Port)
echo await con.execCommand("PING", @[])
echo await con.execCommand("SET", @["auser", "avalue"])
echo await con.execCommand("GET", @["auser"])
echo await con.execCommand("SCAN", @["0"])
echo await con.execCommand("SET", @["auser", "avalue"])
echo await con.execCommand("GET", @["auser"])
echo await con.execCommand("SCAN", @["0"])
await con.enqueueCommand("PING", @[])
await con.enqueueCommand("PING", @[])
await con.enqueueCommand("PING", @[])
echo await con.commitCommands()
Pipelining
You can use enqueueCommand
and commitCommands
to make use of redis pipelining
con.enqueueCommand("PING", @[])
con.enqueueCommand("PING", @[])
con.enqueueCommand("PING", @[])
echo $con.commitCommands()
Roadmap
- Pipelining
- Async APIs
- [] Friendlier API for builtin redis commands