redis实战-redis实现好友关注&消息推送
import redis
# 连接Redis
r = redis.Redis(host='localhost', port=6379, db=0)
# 关注操作
def follow(follower_id, followed_id):
# 将关注者和被关注者的ID添加到关注列表和粉丝列表中
r.sadd('follower:{}:following'.format(follower_id), followed_id)
r.sadd('following:{}:followers'.format(followed_id), follower_id)
# 取消关注操作
def unfollow(follower_id, followed_id):
# 从关注列表和粉丝列表中移除关注者和被关注者的ID
r.srem('follower:{}:following'.format(follower_id), followed_id)
r.srem('following:{}:followers'.format(followed_id), follower_id)
# 推送消息操作
def publish_message(follower_id, followed_id, message):
# 将消息推送给关注者
r.lpush('following:{}:updates'.format(followed_id), message)
# 获取更新操作
def get_updates(followed_id):
# 获取被关注者的更新列表
return r.lrange('following:{}:updates'.format(followed_id), 0, -1)
# 示例操作
follow('user1', 'user2') # user1关注user2
publish_message('user1', 'user2', 'Hello, Redis!') # user1发送消息
updates = get_updates('user2') # 获取user2的消息列表
print(updates) # 打印消息列表
这段代码展示了如何使用Redis实现用户关注和消息推送的基本功能。其中使用了Set数据结构来存储关注和粉丝列表,使用List数据结构来存储用户的更新消息。这是一个简化的实现,实际应用中可能需要考虑更多的细节,例如安全性、可伸缩性和性能等问题。
评论已关闭