Closed vsespb closed 9 years ago
I'm not exactly sure about differences, but you right about data structures. RedisDB maps structures differently, particularly lists are returned as arrayrefs to avoid any ambiguity regarding result.
Pipelining is also different, you don't have to make any synchronous calls periodically to get results, each time you send a new command, package checks if there are replies to previous ones. Also, errors are passed to callbacks as RedisDB::Error
objects, not sure how it is done in R::F.
For some commands results are additionally post-processed, namely: info, client_list, cluster_info, cluster_nodes, role, shutdown.
And if you are interested in cluster support, note that RedisDB::Cluster
does not support pipelining, as it is rather tricky to implement for cluster.
Ok, thanks!
Let's imagine one want to migrate from R::F to RedisDB.
I see now commands which returns multiple results have differnt API: like mget returns ARRAYREF, while R::F returns a list.
Pipelining has different API.
What else could be a problem?