session和cookie的区别
session的概念
Session 是存放在服务器端的,类似于Session结构来存放用户数据,当浏览器 第一次发送请求时,服务器自动生成了一个Session和一个Session ID用来唯一标识这个Session,并将其通过响应发送到浏览器。当浏览器第二次发送请求,会将前一次服务器响应中的Session ID放在请求中一并发送到服务器上,服务器从请求中提取出Session ID,并和保存的所有Session ID进行对比,找到这个用户对应的Session。
一般情况下,服务器会在一定时间内(默认30分钟)保存这个 Session,过了时间限制,就会销毁这个Session。在销毁之前,程序员可以将用户的一些数据以Key和Value的形式暂时存放在这个 Session中。当然,也有使用数据库将这个Session序列化后保存起来的,这样的好处是没了时间的限制,坏处是随着时间的增加,这个数据 库会急速膨胀,特别是访问量增加的时候。一般还是采取前一种方式,以减轻服务器压力。。
session和cookie的区别
1.session是存在服务器端的,cookie是存在浏览器端。
2.cookie相对于session是不安全的。因为cookie是存在浏览器端,别人可以通过分析本地的cookie进行cookie欺骗,如果考虑安全问题,应该使用session。
3.session会在一定时间内存储在服务器上。如果用户量较大,会影响服务器性能,考虑到服务器性能因素,可以使用cookie。
4.一般单个cookie不能超过4k。很多浏览器设置最多保存20个cookie,而session是无限量的。