Redis高性能
Redis序列化方式
GenericToStringSerializer: 可以将任何对象泛化为字符串并序列化
Jackson2JsonRedisSerializer: 跟JacksonJsonRedisSerializer实际上是一样的
JacksonJsonRedisSerializer: 序列化object对象为json字符串
JdkSerializationRedisSerializer: 序列化java对象
StringRedisSerializer: 简单的字符串序列化
分布式Session
Session的实现原理:
(1)服务端首先查找对应的cookie的值(sessionid)
(2)根据sessionid,从服务器端session存储中获取对应id的session数据,进行返回
(3)如果找不到sessionid,服务器端就创建session,生成sessionid对应的cookie,写入到响应头中
基于session集中存储的实现方案:
(1)新增Filter,拦截请求,包装HttpServletRequest
(2)改写getSession方法,从session存储中获取session数据,返回自定义的HttpSession实现
(3)在生成新Session后,写入sessionid到cookie中