16_Redis总结

关于Redis总结

  • redis是一个nosql内存数据库,独立部署服务器,跟应用服务器分离,可以极大地降低我们数据库和服务器的压力,map结构的存储方式,五种数据格式,,默认有3种持久化方案,有5种数据模式,string,list,set,hash(key,value),zset(有序set),用的最多的是string类型,常用来记录例如邮件激活链接等内容.
    redis默认有16个数据库,我们一般使用第一个(编号0)
    单个redis服务器一般可以应付3W以下的并发量,储存数据最好不要超过10G
    通过jedis的jar包可以构建java与redis的链接
  • 通过 redis-server.exe 启动服务,默认端口 6379
    通过 redis-cli.exe 启动客户端工具
springdataRedis的一个小案例

《16_Redis总结》 image.png

《16_Redis总结》 image.png

《16_Redis总结》 image.png
《16_Redis总结》 image.png

使用spring整合Junit完成redisTemplate模块类存值、取值和设置失效时间

《16_Redis总结》 image.png

这里有一个坑,

1.Redis客户端乱码

解决:在bos_fore的applicationContext-cache.xml里把这一段配置
<!-- spring data 提供 redis模板  -->
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">  
<property name="connectionFactory" ref="redisConnectionFactory" /> 
<!-- 如果不指定 Serializer   -->
<property name="keySerializer">
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer" />
    </property>
    <property name="valueSerializer">
    <bean class="org.springframework.data.redis.serializer.StringRedisSerializer"> </bean>
    </property> 
</bean> 
把RedisTemplate换成StringRedisTemplate
<bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate">  
<property name="connectionFactory" ref="reidsConnectionFactory" /> 
<property name="keySerializer">
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer" />
</property>
<property name="valueSerializer">
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer"> </bean>
</property> 
</bean>

第二个坑..
注意这里有个坑,配置文件的工厂有重名问题.

《16_Redis总结》 坑02_配置文件工厂重名.png

浅谈大型分布式系统Redis内存数据库实践

了解Redis内存数据在大型分布式系统架构中有什么作用,以及Redis内存数据库在实际项目中怎么应用。

其他的后续再补充…

  • 1.分布式有什么用
    1) 将系统功能模块化,且部署在不同的地方,对于底层模块,只要保持接口不变,
    上层系统调用底层模块将不关心其具体实现,且底层模块做内部逻辑变更,上层系统
    都不需要再做发布,可以极大限度的解耦合
    2) 解耦合之后,可以复用共同的功能,且业务扩展更为方便,加快开发和发布的速度
    3) 系统分开部署,充分利用硬件,可以提高系统性能
    4) 减少数据库连接资源的消耗

  • 2.Redis是什么
    Redis是一个开源的 ,高性能 ,C语言开发的,键值对(key-value)存储数据的NOSQL数据库。那接下来我们理清楚几个基本的概念和数据库应用的一个发展历史:
    基本概念:NOSQl : Not Only Sql 泛指非关系数据库 Redis /MongoDB /Hbase
    关系型数据库: Oracle/Mysql/Sybase /SqlServer

  • 3.Redis 有什么用
    Redis的主要作用一句话来概括就是 能够快速存取。

如下图所示:以电商平台架构为例,Redis在系统架构中的位置,它是挡在关系型数据库前面的一道快速读取数据的屏障,极大的缓解了关系型数据的读取压力,使整个系统的在数据存取的瓶颈得到了极大的改善。

《16_Redis总结》 image.png

1.2. Redis的应用场景
Redis在大型分布式系统架构中主要的一些应用场景包括 单点登陆系统的权限验证,直播平台的好友列表显示,商品秒杀活动的剩余商品数目,电商网站的商品排行,网站的访问数量统计等高并发访问的功能需求,接下来我们在介绍Redis支持的数据类型里面会一一介绍此些场景的操作。

Redis怎么用
Redis的官网地址: https://redis.io/
Redis最新版本:3.2.9
Redis数据库服务启动: 在linux下面启动Redis数据库服务:./redis-server /etc/redis.conf
Redis客户端:启动客户端链接数据库 ./redis-cli -h 127.0.0.1 -p 6379

2.1. Redis的五大数据类型以及应用场景
Redis一共有五种数据类型来支持各种应用场景,String /Hash/List/Set/Zset
以上摘录自keven时光课堂

SpringDataRedis

不单单是对Jedis的封装,对redis的底层开发包(Jedis,JRedis,and RIC)尽心了高度封装

《16_Redis总结》 image.png

查-1可以把所有结果查出来

    原文作者:七枷琴子
    原文地址: https://www.jianshu.com/p/2d47ab1d423b
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞