cookie&session
一、cookie&session
cookie是浏览器客户端的存储技术,cookie的数据结构:键值对
session是基于cookie的服务器存储技术,session的数据结构:键值对(是双map),sessionKey是服务器自动赋予的,sessionValue存储/获得的都是cookie封装的jession=sessionKey
session的作用:相当于一把钥匙,是一个标识(例子:商场柜子存储东西,每个柜子只有一把钥匙)
cookie 和 session 都是通过HTTP协议,即封装在HTTP的请求和响应内容里;客户端发送请求时,会自动将请求内容中的cookie发送给服务器,服务器可以获取到session
cookie&session可以设置时间,让其在指定的时间内失效,即可清除客户端请求和响应中的cookie&session相关的数据
二、cookie&session的弊端
弊端:
1. cookie的设置是浏览器固有的,若浏览器关闭cookie,那么cookie&session机制就不可用了;且有可能遭到csrf跨站/域名请求伪造攻击(借助暴露在浏览器上的cookie)
2. 若是有服务器集群,session只会保存在一个服务器上,其它服务器获取不到;那么就需要共享数据,可以通过创建数据库中的表来达到共享数据;又由于数据库存储在硬盘中,硬盘的读取速度很慢,所以引出redis服务器(redis是存储在运行时内存,可作数据库使用)