1、存储位置不同
cookie的数据信息存放在客户端浏览器上;
session的数据信息存放在服务器上。
2、存储容量不同
单个cookie保存的数据<=4KB,一个站点最多可以保存20个cookie;
对于session而言并没有相应的上限。但是出于对服务器性能的考虑,session内不要存放过多的内容,并且可以考虑设置session删除机制。
3、隐私策略不同
cookie对客户是可见的,客户可以分析存放在本地的cookie进行cookie欺骗,所以它是不安全的;
session存储在服务器上,对客户端是透明的,不存在敏感信息泄露的风险。
4、有效期不同
开发人员可以通过设置cookie的属性,实现cookie长期有效的效果; -- 即使浏览器关闭,cookie依然有效
session依赖于名为JSESSION的cookie。浏览器关闭该session就会失效,因此session不能达到长期的效果。
5、服务器压力不同
cookie保存在客户端,不占用服务器资源。对于并发用户比较多的网站,cookie是比较不错的选择;
session保存在服务器端,每一个用户都会产生一个session。当用户访问量变多时,会产生很多的session,耗费大量的内存。