redis 应用场景及使用案例

首先,你要对Redis有非常详尽的了解,包括常用命令,基本的数据结构String, Hash,List,Set等。
其次,要结合及项目的业务场景选择最合适的数据结构。
最后,几点建议,对于key的管理,最好在程序中使用全局配置来实现,直接在代码里写前缀的做法要严格避免,这样可维护性实在太差;设计好你的Sharding机制;注意数据的持久化;

主要是用来将原有的业务数据分离出来,做热点数据(排名、统计、最近信息)的展示以及需要实时更新或排序的数据;

1. 因此我们的用户数据是存mysql的,同时有部分用户实时数据同时也存在redis;

2. 我们的系统里md5+salt里的salt是每个用户单独生成的,因此相同密码也不会有相同的md5结果

3.数据落地的时候, 先根据mysql的结构入一份 mysql 一份序列化到 redis 。create的时候, 先去redis找,如果找不到。直接去 mysql读。

数据库设计

http://blog.codingnow.com/2011/11/dev_note_2.html

  • account:[id]:version number
  • account:[id]:email string
  • account:[id]:password string // md5(password..salt)
  • account:[id]:nickname string
  • account:[id]:lastlogin hashes
    • ip string
    • time string
  • account:[id]:history list(string)
  • account:[id]:available enum(open/locked/delete)

127.0.0.1:6379> set account:001:version 1

OK

127.0.0.1:6379> set account:001:email "[email protected]"

OK

127.0.0.1:6379> set account:001:nickname "小明"

OK

127.0.0.1:6379> hmset account:001 ip "10.101.1.212" time "0081222"

OK

127.0.0.1:6379> lpush account:001:history   "3333"  "4444"

(integer) 2

127.0.0.1:6379> set  account:count 0

OK

127.0.0.1:6379> incrby  account:count 1

(integer) 1

时间: 2024-11-05 22:01:52

redis 应用场景及使用案例的相关文章

Redis应用场景

原文地址:http://www.cnblogs.com/shanyou/archive/2012/09/04/2670972.html Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象构建不同的冰箱. Redis常用数据类型 Redis最为常用的数据类型主要有以下五种: String Hash List Set Sorted set 在具体描述这几种数据类

redis,docker和kubernetes留言簿案例实战

kubernetes实战-基于redis和docker的留言簿案例 [置顶] kubernetes实战-基于redis和docker的留言簿案例 标签: dockerkubernetesredis 2015-06-22 19:41 7570人阅读 评论(5) 收藏 举报 本文章已收录于:  Docker知识库  分类: docker(7)  版权声明:本文为博主原创文章,未经博主允许不得转载. 一.介绍 本案例基于Kubernetes和Docker,其中包括 1.web前端 2.redis ma

Redis应用场景(转)

(来源:http://www.cnblogs.com/shanyou/archive/2012/09/04/2670972.html) Redis常用数据类型 Redis最为常用的数据类型主要有以下五种: String Hash List Set Sorted set 在具体描述这几种数据类型之前,我们先通过一张图了解下Redis内部内存管理中是如何描述这些不同数据类型的: 首先Redis内部使用一个redisObject对象来表示所有的key和value,redisObject最主要的信息如上

Redis应用场景说明与部署

Redis简介 REmote DIctionary Server(Redis)是一个基于key-value键值对的持久化数据库存储系统.redis和大名鼎鼎的memcached缓存服务很像,但是redis支持的数据存储类型更丰富,但是redis支持的数据存储类型更丰富,包括string(字符串).list(链表),set(集合)和zset(有序集合)等.这些数据类型都支持push/pop.add/remove及取交集.并集和差集及更丰富的操作,而且这些操作都是原子性的.在此基础上,redis支持

Redis使用场景

一.Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象构建不同的冰箱. Redis常用数据类型 Redis最为常用的数据类型主要有以下五种: StringHashListSetSorted set 下面我们先来逐一的分析下这五种数据类型的使用和内部实现方式: String常用命令: set,get,decr,incr,mget 等. 应用场景: String

在谈Redis应用场景(再)

原文:在谈Redis应用场景 一.MySql+Memcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1)MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间. 2)Memcached与MySQL数据库数据一致性问题. 3)Memcached数据命中率低或down机,大量访问直

转 redis使用场景 简介

Redis实战(五) 聊聊Redis使用场景 发表于 2016-11-21 | 数据存储 | Redis 文章目录 1. 使用场景说明 1.1. 计数器 1.2. 排行榜 1.3. 用于存储时间戳 1.4. 记录用户判定信息 1.5. 社交列表 1.6. 缓存 1.7. 队列 1.8. 会话缓存 2. 业务使用方式 随着数据量的增长,MySQL已经满足不了大型互联网类应用的需求,因此,Redis作为内存数据库,很好的作为其架构上的补充.在某些场景下,可以充分的利用Redis的特性,大大提高效率.

NoSQL数据库:Redis适用场景及产品定位

传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间. 2.Memcached与MySQL数据库数据一致性问题. 3.Memcached数据命中率低或down机,大量访问直接穿透到DB,MySQL

redis应用场景:实现简单计数器-防止刷单

redis应用场景:实现计数器-防止刷单 最近由于双11要来临,公司需要在接口请求上,做一下并发限制的处理,或者做一个防止刷单的安全拦截:比如:一个接口请求,限制每秒请求总数为200次,超过200次就等待,等下一秒,再次请求,这里用到一个redis作为一个计数器的模式来实现. 调用redis的方法: INCR key将 key 中储存的数字值增一. 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作. 如果值包含错误的类型,或字符串类型的值不能表示为数字,那