??本站以分享各种运维经验和运维所需要的技能为主
《python零基础入门》:python零基础入门学习
《python运维脚本》:?python运维脚本实践
《shell》:shell学习
《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战
《k8》暂未更新
《docker学习》暂未更新
《ceph学习》ceph日常问题解决分享
《日志收集》ELK+各种中间件
《运维日常》运维日常
《linux》运维面试100问
?谈谈session和cookic的区别
1.
概念
1.1 Session
:存储在服务器端,保存用户名、登陆状态等信息。
1.2 Cookies
:由服务器下发给客户端,保存在客户端的一个文件里。
保存的内容主要包括:
SessionID
。
区别
2.1
cookie
数据存放在客户的浏览器上,
session
数据放在服务器上
.
2.2
cookie
不是很安全,别人可以分析存放在本地的
COOKIE
并进行
COOKIE
欺骗考虑到安全应当使用
session
。
2.3
设置
cookie
时间可以使
cookie
过期。但是使用
session-destory
(),我们将会销毁会话
2.4
session
会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能考虑到减轻服务器性能方
面,应当使用
cookie
。
2.5
单个
cookie
保存的数据不能超过
4K
,很多浏览器都限制一个站点最多保存
20
个
cookie
。
(Session
对象没有对
存储的数据量的限制,其中可以保存更为复杂的数据类型
)
注意
:
session
很容易失效
,
用户体验很差
;
虽然
cookie
不安全
,
但是可以加密
;
cookie
也分为永久和暂时存在的
;
浏览器 有禁止
cookie
功能
,
但一般用户都不会设置
;
一定要设置失效时间
,
要不然浏览器关闭就消失了
;
例如
:
记住密码功能就是使用永久
cookie
写在客户端电脑,下次登录时,自动将
cookie
信息附加发送给服务端。
application
是全局性信息,是所有用户共享的信息,如可以记录有多少用户现在登录过本网站,并把该信息展示
个所有用户。
两者最大的区别在于生存周期,一个是
IE
启动到
IE
关闭
.(
浏览器页面一关
,session
就消失了
)
,一个是预先设置的生
存周期,或永久的保存于本地的文件。
(cookie)
Session
信息是存放在
server
端,但
session id
是存放在
client cookie
的,当然
php
的
session
存放方法是多样化的,
这样就算禁用
cookie
一样可以跟踪
Cookie
是完全保持在客户端的如:
IE firefox
当客户端禁止
cookie
时将不能再使用
对服务器压力:由于 Session 数据存储在服务器,如果并发访问的用户非常多,可能会给服务器带来较大压力。而 Cookie 数据存储在客户端,不会给服务器带来额外压力
解决多地共享session的服务---也就是常说的跨域问题:
常使用的中间件是 memcache服务