Redis学习记录之————微博项目
Key设计
全局相关的key:
|
表名 |
global |
|
|
列名 |
操作 |
备注 |
|
Global:userid |
incr |
产生全局的userid |
|
Global:postid |
Incr |
产生全局的postid |
用户相关的key(表):
|
表名 |
user |
||
|
Userid |
Username |
Password |
Authsecret |
|
3 |
Test3 |
1111111 |
#U*Q(%_ |
用户注册:
/**
* 用户注册信息
*/
public function userRegister()
{
$redis = RedisInstance::MasterInstance();
$redis->select(10);
$username = 'tinywan'.mt_rand(0000,8888);
$password = '123456';
if($redis->get('user:username:'.$username.':userid')){
exit('该用户名没有被使用');
}
//获取全局userId
$userId = $redis->incr('global:userid');
$redis->set('user:userId:'.$userId.':username',$username);
$redis->set('user:userId:'.$userId.':password',$password);
$redis->set('user:username:'.$username.':userid',$userId);
}
用于登录:
/**
* 用于登录信息
*/
public function userLogin()
{
$redis = RedisInstance::MasterInstance();
$redis->select(10);
$username = 'tinywan8165';
$password = '123456';
$uid = $redis->get('user:username:'.$username.':userid');
if($uid == false){
exit('该用户名不存在');
}
$oldpwd = $redis->get('user:userId:'.$uid.':password');
if($password != $oldpwd){
exit('密码错误');
}
echo '登录成功,跳转';
homePrint($uid);
}
|
表名 |
global |
|
|
列名 |
操作 |
备注 |
|
Global:userid |
incr |
产生全局的userid |
|
Global:postid |
Incr |
产生全局的postid |
Redis学习记录之————微博项目的更多相关文章
- redis 学习记录
http://www.yiibai.com/redis/redis_quick_guide.html Redis 是一款依据BSD开源协议发行的高性能Key-Value存储系统(cache and s ...
- Redis学习记录(一)
在学习Redis之前,要知道什么是NoSQL? 1.NoSQL 1.1. 什么是NoSQL NoSQL(NoSQL = Not Only SQL),表示“不仅仅是SQL”,泛指非关系型数据库. 1.2 ...
- Redis学习记录之Java中的初步使用
1.关于Redis redis下载地址:<span style="font-family: Arial, Helvetica, sans-serif;">http:// ...
- Redis学习记录
参考资料: http://www.dengshenyu.com/%E5%90%8E%E7%AB%AF%E6%8A%80%E6%9C%AF/2016/01/09/redis-reactor-patter ...
- Redis学习记录(三)
1.Redis集群的搭建 1.1redis-cluster架构图 架构细节: (1)所有的redis节点批次互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽. (2)节点的fail ...
- Redis学习记录(二)
1.Key命令 设置key的过期时间. expire key second:设置key的过期时间 ttl key:查看key的有效期(如果显示正数说明该key正在倒计时,如果是-1说明该key永久保存 ...
- Redis学习记录及Jedis代码示例
文章目录 二.Redis简介 三.Redis安装 1. 下载并解压安装 2. 安装C语言编译环境 3. 修改安装位置 4. 编译安装 5.启动Redis服务器 ①默认启动 ②定制配置项启动 [1]准备 ...
- redis学习记录1 特性与优点
1.存储结构:字符串.散列.列表.集合.有序集合. redis存储结构的优势:数据在redis中的储存方式和其在程序中的储存方式相近:redis对不同数据类型提供非常方便的操作方式,如使用集合类型储存 ...
- Redis——学习之路四(初识主从配置)
首先我们配置一台master服务器,两台slave服务器.master服务器配置就是默认配置 端口为6379,添加就一个密码CeshiPassword,然后启动master服务器. 两台slave服务 ...
随机推荐
- 【转载】Perl异常处理方法总结
程序脚本在运行过程中,总会碰到这样那样的问题,我们会预知一些问题并为其准备好处理代码,而有一些不能预知.好的程序要能尽可能多的处理可能出现的异常问题,本文就总结了一些方法来解决这些异常,当然perl在 ...
- CSS选择器无法找到td
.table > tr > td <----这样无法找到td 因为table在浏览器下会自动生成tbody,这样即可 .table > tbody > tr > ...
- javascript || and &&
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- vim中设置自动匹配括号和引号
vim ~/.vimrc 在.vimrc中添加一下几行 inoremap ( () <LEFT> inoremap { {} <LEFT> inoremap [ [] < ...
- linux正则表达式使用
首先介绍下正则表达式,它是由一串字符和元字符构成的字符串,简称RE(Regular Expression),它的主要功能是文本查询和字符串操作,它可以匹配一个文本的字符和字符集,达到数据过滤的效果. ...
- python :列表 字典 集合 类 ----局部变量可以改全局变量
#列表 字典 集合 类 ----局部变量可以改全局变量,除了整数和字符串 names=["alex","jack","luck"] def ...
- 关于iframe嵌套、动态获取iframe内的url、父页面重定向
1 $(function () { 2 //选择器是选择了easyui中的点击链接,出现新的iframe 3 $("a[target='mainFrame']").click(fu ...
- c++ list, vector, map, set 区别与用法比较
http://blog.csdn.net/alex_xhl/article/details/37692297 List封装了链表,Vector封装了数组, list和vector得最主要的区别在于ve ...
- tinyhttpd服务器源码学习
下载地址:http://sourceforge.net/projects/tinyhttpd/ /* J. David's webserver */ /* This is a simple webse ...
- hdu Interesting Fibonacci
Interesting Fibonacci Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...