关于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的一个小案例
使用spring整合Junit完成redisTemplate模块类存值、取值和设置失效时间
这里有一个坑,
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>
第二个坑..
注意这里有个坑,配置文件的工厂有重名问题.
浅谈大型分布式系统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 /SqlServer3.Redis 有什么用
Redis的主要作用一句话来概括就是 能够快速存取。
如下图所示:以电商平台架构为例,Redis在系统架构中的位置,它是挡在关系型数据库前面的一道快速读取数据的屏障,极大的缓解了关系型数据的读取压力,使整个系统的在数据存取的瓶颈得到了极大的改善。
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)尽心了高度封装
查-1可以把所有结果查出来