当前位置: 首页 > 科技观察

难道你不想靠这项技术一年赚几百万吗?Redis内存数据库知识

时间:2023-03-22 01:20:34 科技观察

内存数据库一、Redis产生的背景随着互联网+大数据时代的到来,传统的关系型数据库已经不能满足中大型网站不断增长的流量和数据量。一个能够快速访问数据的组件,缓解数据库服务的I/O压力,解决系统性能瓶颈。2、什么是Redis?Redis是一个开源的、高性能的、用C语言开发的NoSQL数据库,键值对(k-v)存储数据。Redis是一个分布式内存数据库,读取速度在每秒10W左右。并使用redis-benchmark来测试机器性能。执行redis-benchmark也可以看到Redis的读性能。Redis默认有16个数据库。使用select切换Redis数据库。下标从0开始。databases16也可以在redis.conf文件中找到。Redis默认端口6379。2.1什么是NoSQL数据库?NoSQL:不仅仅是SQL,泛指非关系型数据库,如MongoDB、Redis3。数据库应用发展史(一).在互联网大数据时代到来之前,一些企业内部的信息管理系统,单数据库实例就可以处理系统需求?单数据库实例(2)。随着系统访问用户的增加和数据量的增加,单一的数据库实例已经无法隐藏系统读取数据的需求?缓存(memcache)+数据库实例(3)。缓存可以缓解数据库的读压力,但是数据量的写压力不断增加,可以采用数据库主从来实现读写分离?缓存+主从数据库+读写分离(4).数据量再次增加,读写分离后,主库压力写入瓶颈?缓存+主从数据库集群+读写分离+分库分表(5)。互联网+大数据时代来临,关系型数据库无法很好地访问一些并发数据。高性能、高实时性、不固定格式的数据?NoSQL+主从数据库集群+读写分离+分库分表4、Redis有什么用?Redis的主要功能:快速访问Redis的应用场景?如何使用Redis进行单点登录/直播平台在线好友列表/抢夺/秒杀/商品排行/点赞/数据过期?官网地址:redis,io命令地址:http://doc.redisfans.com/***版本:3.2.9应用版本:3.0.45。Redis的五种主要数据类型及应用场景*String类型V的k-v格式数据类型为String,一个redis字符串值最大可以存储512M。应用场景:秒杀product/likesetvaluesetkeyvaluevaluegetkeydeletedelkeyincrkeyincrement1decrkeydecrementdecrement1incrbykey2decrement2decrbykey2decrementSubtract2*Hashtypek-v格式的V的数据类型是hash。应用场景:电商网站商品详情设置值:hsetmobileid1设置mobileid为1获取值:hgetmobileid批量设置值:hmsetmobile_huaweiid1namehuaweip10price5600批量获取值:hgetallmobile_huaweideletedelkey*List类型k-v格式中V的数据类型为List。应用场景:获取分页/商品评论表从左边插入记录:lpush评论:1123从右边插入记录:rpush评论:1456插入后评论:1的数据为:321456从左边弹出记录:lpop注释:1Popup3从右边弹出记录:rpop注释:1Popup6获取分页:lrangge注释:1开始endrpushlist0111223344插入数据删除:lremlist0123Delete23*Settypek-v格式中V的数据类型为setandlist。区别在于:list是有序的,set是无序的,具有唯一性。应用场景:微信朋友圈查看权限/独立IP投票限制增加:saddset01112233去掉重复数据添加123,因为set是唯一的。插入重复数据会直接过滤掉AddMomentsjuransaddfriends:juranabcAddMomentsxxxxsaddfriends:xxbc检查sets的交集:sinterfriends:juranfriends:xx*Zsettypek-v格式v的数据类型为zset,有序应用场景:商品销量排名上升zaddmobile:sales100huawei99ipx98vivo97oppo从小到大获取商品:zrangemoblie:sales0-1从大到小获取商品:zrevrangemobile:sales0-1如果要带数量,可以加参数,withscores