浅谈浏览器缓存Cookie和服务器缓存Session、Application

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhouziyu2011/article/details/61624249

1、Cookie对象

Cookie存放在浏览器中,用于保存浏览器请求服务器页面的请求信息,信息保存的时间可以根据需要设置,如果没有设置Cookie失效日期,它们仅保存到关闭浏览器程序为止,如果将Cookie对象的Expires属性设置为Minvalue,则表示Cookie永远不会过期

Cookie存储的信息量很受限制,大多数浏览器支持最大容量为4k,因此不要用来保存信息集及其他大量信息。此外,由于并非所有浏览器都支持Cookie,且信息是以明文文本的形式保存在客户端的计算机中,因此最好不要保存敏感的,未加密的信息,否则会影响网站的安全性。

 

2、Session对象

在服务器端有一个session池,用来存储每个用户提交session中的数据。session对于每一个客户端(浏览器)是人手一份,用户首次与Web服务器建立连接时,服务器会给用户分发一个SessionID作为标识。用户每次提交页面,浏览器都会把这个SessionID包含在HTTP头中提交给Web服务器,这样Web服务器就能区分当前请求页面的是哪一个客户端,而这个SessionID是以cookie的方式保存的在客户端的内存中的,如果想要得到session池中的数据,服务器就会根据客户端提交的唯一SessionID标识给出相应的数据返回。

SessionID,是由Guid生成的一个由24个字符组成的随机字符串使用GUID 初始化 SessionId 类的新实例。


3、Application对象 

Application用于保存所有用户的公共信息,多个用户共享的应用级别的作用域,在服务器端,相比前两者,存在时间最长,保存到关闭服务器为止。


Cookie、Session、Application的对比:


信息量大小
保存时间
应用范围
保存位置
Cookie
小量,简单的数据
可以根据需要设定
单个用户
浏览器
Session
小量,简单的数据
用户活动时间+一段延迟时间(一般为20分钟)
单个用户
服务器
Application
任意大小
整个应用程序的生命期
所有用户
服务器
展开阅读全文

没有更多推荐了,返回首页