博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis-key的设计技巧
阅读量:5172 次
发布时间:2019-06-13

本文共 1219 字,大约阅读时间需要 4 分钟。

  1. 把表名转换为key前缀, 比如: tag:
  2. 第二段放置用于区分key的字段--对应mysql中的主键的列名
  3. 第三段放置主键值
  4. 第三段写列名

用户表user, 转换为redis的key-value存储

userid username password email
9 Lisi 111111 lisi@163.com

比如:

127.0.0.1:6379> set user:userid:9:username lisiOK127.0.0.1:6379> set user:userid:9:password 111111OK127.0.0.1:6379> set user:userid:9:email lisi@163.comOK127.0.0.1:6379>127.0.0.1:6379> keys user:userid:9*    #查找有几个属性1) "user:userid:9:password"2) "user:userid:9:username"3) "user:userid:9:email"127.0.0.1:6379>

注意: 实际中经常要通过username来查找信息, 只能通过再建立一个对应关系

127.0.0.1:6379> set user:username:lisi:userid 9    #建立一个username和userid对应的表OK127.0.0.1:6379> 127.0.0.1:6379> get user:username:lisi:userid    #获取到userid"9"127.0.0.1:6379> 127.0.0.1:6379> keys user:userid:9*    #通过userid找到所有键1) "user:userid:9:password"2) "user:userid:9:username"3) "user:userid:9:email"127.0.0.1:6379> 127.0.0.1:6379> get user:userid:9:email    #获取其它键的信息"lisi@163.com"127.0.0.1:6379>

如果要通过email查询, 只能再维护

127.0.0.1:6379> set user:email:lisi@163.com:userid 9OK127.0.0.1:6379> get user:email:lisi@163.com:userid"9"127.0.0.1:6379> keys user:userid:9*1) "user:userid:9:username"2) "user:userid:9:email"3) "user:userid:9:password"127.0.0.1:6379>

转载于:https://www.cnblogs.com/qlshine/p/5962229.html

你可能感兴趣的文章
send,recv,sendto,recvfrom
查看>>
C#开发问题汇总
查看>>
Kettle
查看>>
[复习]Python基础回顾
查看>>
LNMP
查看>>
c#枚举自定义,用于数据绑定。
查看>>
initwithcoder和 initwithframe 区别?
查看>>
iphone EAGL 代表什么
查看>>
object-C 与 C++的比较
查看>>
单词本
查看>>
ssh 多台服务器之间连接(linux)
查看>>
如何使用JS实现页面内容随机显示
查看>>
Mysql主从知识扩展部分1
查看>>
NOI2005 瑰丽华尔兹
查看>>
FTOUR2 - Free tour II
查看>>
Tortoise svn 基础知识
查看>>
数字计数
查看>>
互不侵犯king (状压dp)
查看>>
Java设计模式-Builder生成器模式
查看>>
Delphi中ListView和TreeView的Item中的内存泄露
查看>>