一、概念
1.1、什么是HTTP无状态? 无状态是指的,无登录状态,即服务器不知道某个用户是否已登录过了。
1.2 让服务器有记忆能力之Cookie、Session
- 【Java基础|彻底搞懂Session和Cookie】Cookie
Cookie 是一小段文本信息。客户端请求服务器,如果服务器需要记录用户状态,就使用response向客户端浏览器颁布一个Cookie,客户端浏览器会把Cookie保存起来。
Cookie不具有跨域名性。
Cookie有大小限制,4kb
- Session
Session 是另一种记录客户状态的机制,Session保存在服务端。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了。
- Cookie和Session 的关系
cookie 是一个实际存在的、具体的东西,http 协议中定义在 header 中的字段。1.3 token
session 是一个抽象概念、开发者为了实现中断和继续等操作,将client和server之间一对一的交互,抽象为“会话”,进而衍生出“会话状态”,也就是 session 的概念
session描述的是一种通讯会话机制,而cookie只是目前实现这种机制的主流方案里面的一个参与者,它一般是用于保存session ID。
文章图片
二、常见问题
2.1 分布式集群环境Session 获取不到
例如session共享、iphash、session持久等也可以解决上述问题
推荐阅读
- #|Session详解,学习Session,这篇文章就够了(包含底层分析和使用)
- #|【手写Tomcat】10.实现对静态资源的放行(完结篇)
- #|【手写Tomcat】9.实现游览器访问我们自定义的MyServlet
- java|safari chrome_Mac用户应放弃Safari的Google Chrome浏览器
- 如何写好 Java 业务代码(这也是有很多规范的..)
- Spring Boot项目微信云托管入门部署
- mybatisplus|Java学习 --- mybatisplus添加日志功能
- Java|java精尽面试题MySQL面试高频一百问(工程师方向)
- zookeeper面试