Cookie和Session的相关知识

Cookie

在浏览器第一次向服务器发送请求后,服务器收到请求,会创建Cookie并返回给浏览器,Cookie保存在浏览器本地。
浏览器后面继续向服务器发请求时,需要带着本地保存的Cookie,服务器通过该Cookie的数据区分不同的用户。

Session

1、而session是在浏览器第一次向服务器发送请求时,服务器收到请求,会为该浏览器创建一个session对象,为其分配一个唯一的sessionid,然后以JSESSIONID为key,以该sessionid为value,创建一个特殊的cookie返回给浏览器,浏览器保存该cookie,以后每次向服务器发送请求,都要带着该cookie。
2、浏览器再次向服务器发请求,服务器先判断该cookie是否过期,过期了就不能用了,等同于第一次请求服务器,服务器为其重新创建session对象和cookie对象;
如果cookie没过期,看看该cookie的值sessionid对应的session过期没有,session对象过期了,也直接重新创建session和cookie去吧;
如果服务器中sessionid对应的session还在,没过期,那就根据sessionid找到对应的session,查看session中的内容从而区分不同的用户。

cookie和session的区别

1、存储位置不同:cookie保存在浏览器,客户端,session保存在服务器
2、隐私策略不同:
cookie不是很安全,可以使用cookie对服务器进行欺骗,如果考虑安全可以使用session
因为session会在服务器上保存一段时间,当并发量过大时,会影响服务器的性能,如果出于减轻服务器的性能考虑,应该使用cookie。
3、存储容量不同:
单个cookie的大小不能超过4KB,cookie的数量一般 < 20 ~ 30个
session的大小没有上限,但是考虑到服务器的性能,session中不要存放过多的东西,并且要设置session删除机制。
4、存储方式不同
5、有效期不同,cookie可以设置为长期,session不能达到长期有效的效果。
6、服务器压力不同:
cookie在客户端,不占用服务器资源,并发数较多时适用。
session保存在服务器,每个用户都会产生一个session。并发数很多时,会产生很多session,会耗费大量内容。适用于并发数较少的情况。

参考:
https://blog.youkuaiyun.com/chen13333336677/article/details/100939030
https://www.jianshu.com/p/2f7031a69f43

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值