(二)Redis投票应用

1. 用hash存储帖子的基本信息:

[img]http://dl2.iteye.com/upload/attachment/0088/4362/99cf9b7b-888f-3671-8718-9a46830ff4dd.png[/img]

2. 使用sorted set来实现按照时间排序和按照投票排序
时间
[img]http://dl2.iteye.com/upload/attachment/0088/4364/783b9f31-2b23-3714-8d01-14187287b34a.png[/img]
投票数
[img]http://dl2.iteye.com/upload/attachment/0088/4367/3ca49bae-3c82-36a5-badb-60ecca8e53d8.png[/img]

3. 由于一个用户不能重复投票,所以需要用一个set来存放,这个article有哪些人投票了
[img]http://dl2.iteye.com/upload/attachment/0088/4373/5d1b2251-e55b-317f-8b71-5339b7d7f21f.png[/img]
如果用新用户投票了,那么这个帖子积分就会增加,并且将此用户的id放入到set中。并且我们限制一个星期之后帖子就不能再投票了。

redis命令如下:
ZADD article_id 1 time
ZSCORE article_id "one" < 1 week
SADD article_id user_id
ZINCRBY article_id 1 score
HINCRBY article_id votes 1


4. 为帖子创建兴趣组:


[img]http://dl2.iteye.com/upload/attachment/0088/4369/46f70bd1-0cbe-3681-b19c-881da73ce5df.png[/img]

[size=large][color=red]ZINTERSTORE的使用方法[/color][/size]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值