session的作用:session是用来存放用户个人信息的,每当请求一次session的时候,服务器会自动分配一个sessionID放到你的cookies里面。
session可存放在web服务器中的的数据大小是不受限制的,但是时间上却有限制。一般情况下是用户的持续访问时间再加上session闲置时间大概是20分钟
正由于这个闲置20分钟,所以使得session读取服务器数据的时候效率非常非常的低,所以奉劝各位存放较大数据不要选择session,存放小数据的时候session还是一个不错的选择。
session存放数据的方式并不是像cookies一样以明文文本存储,所以安全性较好。
session的原理:当请求一次session的时候,服务器会分配一个唯一的sessionID值,存放在你的cookies里面,与此同时服务器会开辟一块内存,存放此sessionID的数据,服务器还会生成一个监视器对所有Session进行检测,如果发现超时或者页面关闭。服务器将会把该Session分配的内存释放。当用户执行IIS操作的时候,IIS会直接上你的浏览器上查找你的SessionID如果查到,直接将服务器上存放的数据传给你,如果没有,服务器将会从新生成一个新的Session。
Cookies是存储用户在浏览器上发送请求的一种容器。Cookies的优点在于他在存储时间上没有先知,可以自由设置,如果将如果将Cookie对象的Expires属性设置为minvalue将会永远保存,
缺点是安全问题,他是将所有的数据以明文文本的形式存储,这样会使存储信息非常的不安全,不适合存放敏感信息。而且他的大小也会受限制,一般在4K。所以综上所述,希望能给各位像我一样还在努力学习的新人在这方面提供一点帮助~。
这篇随意也是我自己对session跟cookies的理解,也希望有大神多给我揪揪错 在此感谢!!!