redis中的hmset快速生成空散列
我已经为我的node
应用程序写了一个loadtester。 我的节点应用程序使用redis
作为后端来共享我的应用程序的不同群集(亚马逊实例)之间的信息。
当我约100请求/秒下面的代码生成null
redisClient.hmset("visitor:" + userID.toString() + ":" + channel.toString(), { "channel": channel.toString(), "clusterID": Config.clusterID, "name": randomName.toString() });
当我然后尝试看看什么内容与hgetall
:
"visitor:" + userID.toString() + ":" + channel.toString()
内容为null
。
任何想法如何可能发生? 请注意,只有在达到每秒100次或更多的请求后才会发生。
对于我的t1.micro
服务器,我使用ElastiCache
t1.micro
实例
你在等待hmset的callback吗?
它应该是
var key = "visitor:" + userID.toString() + ":" + channel.toString(); redisClient.hmset(key, { "channel": channel.toString(), "clusterID": Config.clusterID, "name": randomName.toString() }, function(err) { redisClient.hgetall(key, function(err, data) { console.log(data); }); });