http、session、token和cookie

参考资料

优秀的同质博客

http

http是无连接的(减少对于资源的占用和消耗,这是很显然的,一般来讲用户很少会不断发送请求,大部分时间都不会占有Server资源才对)--------------一次连接的生命周期只存在于一次请求和响应周期;
http keep-alive是要解决日益增长的大量资源资源传输的问题,可以解决无连接问题。
http是无状态的(无记忆,多个请求之间相互独立互不影响)。

session

解决http无状态的问题,可以执行一些事物操作,提供并行能力。
token是session的灵魂。

cookie

一般是说在浏览器端,其实有两种表现形式,b-s交流时或者存储在浏览器时。
token也是cookie的灵魂

sessionId

sessionId是一种特殊的cookie,体现在其它cookie以临时文件的形式以备浏览器使用,而它是以内存的形式以备浏览器发送请求时使用。所以sessionId在浏览器关闭以后就会丢失,很难再通过它和Server通信了。

session的应用场景

统计在线人数

也就是统计存活session的数目。
具体实现:定义一个计数器,HttpSessionListener在create一个session域对象的时候,counter++;
在destroy一个session域对象的时候,counter–。

统计登录人数(考虑后登挤掉前登)

一个userId可能对应一个session或者多个session.
具体实现:
(1)定义一个ConcurrentHashMap<User ,HttpSession>,
登录一个用户User1,当账户密码都匹配的话,
看之前有没有用户User1登录,如果没有用户User1登录,直接put当前User1,置为session1。
如果User1已经登录,从map里获得session1,然后注销掉session1,再替换值为session2。
(2)存到redis里去,{user1:token}并且设置过期时间?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值