你是不是每天打开APP,第一时间就是去“签到打卡”?或者在社交软件里,看到你的朋友头像旁边亮着“在线”的绿灯?这些看似简单的功能背后,都隐藏着一个有趣而高效的数据结构。
如果让你来设计一个签到系统:用户每天签到,你需要在数据库里记录“用户XXX在YYY年Z月K日签到”,那数据量会非常庞大。而且,如果你想知道一个用户在一个月里签到了多少天,或者他连续签到了多少天,查询起来会非常麻烦和耗时。
2025年05月24日
你是不是每天打开APP,第一时间就是去“签到打卡”?或者在社交软件里,看到你的朋友头像旁边亮着“在线”的绿灯?这些看似简单的功能背后,都隐藏着一个有趣而高效的数据结构。
如果让你来设计一个签到系统:用户每天签到,你需要在数据库里记录“用户XXX在YYY年Z月K日签到”,那数据量会非常庞大。而且,如果你想知道一个用户在一个月里签到了多少天,或者他连续签到了多少天,查询起来会非常麻烦和耗时。
2025年05月24日
Redis是一种基于内存的数据存储系统,支持键值存储和复杂数据结构。利用Redis的有序集合(Sorted Set)数据结构,我们可以很容易地实现排行榜的功能。