用Redis活跃度加码随机取头像秀风采(redis随机取头像)
在推广圈子里,被设置成比较活跃的用户经常被选中,成为圈子的中心人物,用自己的用户头像让更多的用户来发现,这样做不仅能够吸引更多的用户,提升社区的活跃度,而且也能够起到展示用户风采的作用。
有这个需求,我们就要大量使用Redis来实现,但是现在有一个挑战就是,要实现随机取出不同的头像来展示,因此我们需要用Redis的srandmember命令来实现,解决方案如下:
1. 首先将用户的头像id存入Redis的Set类型中,每次运行时,通过srandmember随机取出一条头像id;
2. 然后通过hget找到相应用户头像链接,取出一条头像链接;
3. 最后将头像地址和作为随机取出的头像id一同返回前端,完成图片的展示。
实现代码如下:
“`javascript
//定义头像链接地址
setHeadUrl(userId: string, headUrl: string) {
redis.hSet(“headUrl”, userId, headUrl);
}
//取出头像链接地址
getHeadUrl(userId: string) {
return redis.hGet(“headUrl”, userId);
}
//随机取出一个头像
getRandomHeadUrl() {
let userId = redis.srandmember(“headIds”);
if (userId !== null) {
return this.getHeadUrl(userId);
} else {
return null;
}
}
以上,通过Redis维护头像信息,即可快速随机获取任意用户的头像,提升圈子的活跃度,让更多用户来发现,展现圈子的风采。Redis作为一个高性能的缓存,在这些活动里也发挥着重要的作用。