环境介绍:
开发环境:
spring3+tomcat7+maven3+redis-3.0.7
运行环境:
Linux
前言:
项目中引入redis背景:
项目中最初将科目、打印、利润表、资产负债表、现金流量表中以及需要重复使用的相关数据都放入session中,
如果并发访问的用户过多很可能会使服务器面临宕机的危险,另外也与session的根本作用不相符(在服务端存
储用户和服务器会话的一些信息),所以就考虑到了将相关信息放到redis中。
一、什么是redis
redis是一个开源(BSD许可)的内存存储的数据结构服务器.
二、redis优缺点
优点:
1 读写性能优异(读的速度是110000次/s,写的速度是81000次/s)
2 支持数据持久化,支持AOF和RDB两种持久化方式
3 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。
4 数据结构丰富:除了支持string类型的value外还支持string、hash、set、sortedset、list等数据结构。
缺点:
1 Redis具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。
2 主机宕机,宕机前有部分数据未能及时同步到从机,切换IP后还会引入数据不一致的问题,降低了系统的可用性。
3 Redis的主从复制采用全量复制,复制过程中主机会fork出一个子进程对内存做一份快照