Redis与网站架构

Redis与网站架构

ID:34562706

大小:857.17 KB

页数:20页

时间:2019-03-08

Redis与网站架构_第1页
Redis与网站架构_第2页
Redis与网站架构_第3页
Redis与网站架构_第4页
Redis与网站架构_第5页
资源描述:

《Redis与网站架构》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Redis与网站架构@joyqiSegmentFault.com12年7月30日星期一什么是Redis?12年7月30日星期一什么是Redis?•REmoteDIctionaryServer缩写•一个基于内存的网络存储系统•丰富的数据结构(sets,sortedsets,hashes,list...)•本质是key-value,但是与memcached不同的是,value的类型得到了扩展12年7月30日星期一有何不同?看看具体的网站12年7月30日星期一一个普通的问题列表需求•问题本身的数据(标题,投票等等)•问题的作者数据(另一张单独的一张数据表,通过某个键值

2、关联)•问题的标签(本身单独一张数据表,通过一个中间关系表与问题产生一对多的关系)12年7月30日星期一如何取出数据?SELECT...SQL无法回避的问题12年7月30日星期一用一条SQL解决问题是不可能的12年7月30日星期一多次查询会让大家崩溃12年7月30日星期一冗余字段会让你看起来很傻12年7月30日星期一我看还是用Memcached好了等等,为啥不试试Redis12年7月30日星期一用Hashes保存字段$user=array('id'=>123,'name'=>'joyqi','mail'=>'magike.net@gmail.com','crea

3、ted'=>1212312312);$redis->hMSet(‘user:123’,$user);print_r($redis->hGetAll(‘user:123’));12年7月30日星期一用Sets保存关系$questionId=123;$tagIds=array(111,222,333);foreach($tagIdsas$sort=>$tagId){$redis->zAdd(‘question_tag:’.$questionId,$sort,$tagId);}print_r($redis->zRange(‘question_tag:123’,0,-1

4、));12年7月30日星期一与SQL相比•大大减少了查询数量,提高了效率•redis的API更加人性化,再也不需要构建SQL语句,节省了SQL的解析时间12年7月30日星期一与Memcached相比•支持哈希存储,存储多个字段时不需要自己再次用类似json的格式编码和解码,更新也更加高效•支持列表和集合等多种数据集,可以方便快捷地处理有序数据12年7月30日星期一Redis用于搜索?12年7月30日星期一有了Redis,支持实时搜索的门槛被大大降低12年7月30日星期一分词加Redis集合实现索引$questionTitle=‘搜索技术’;$questionId

5、=123;$words=fenci($questionTitle);//array(‘搜索’,‘技术’);foreach($wordsas$word){$redis->zAdd(‘w:’.md5($word),1,$questionId);}//索引完成12年7月30日星期一Redis集合Union操作实现查询$keywords=‘怎样实现搜索技术’;$words=fenci($keywords);//array(‘怎样’,‘实现’,‘搜索’,‘技术’);$indexes=array_map(function($word){return‘w:’.md5($wor

6、d);},$words);$redis->zUnion(‘result’,$indexes,array_fill(0,count($indexes),1),‘sum’);print_r($redis->zRevRange(‘result’,0,-1));12年7月30日星期一深远影响Redis的特性是如此丰富而又恰到好处,他会给网站架构带来深远影响,一些以前无法实现的方法将涌现出来。http://redis.io12年7月30日星期一:)Thanks,Q&A@joyqi

7、joyqi.com12年7月30日星期一

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。