状态"/>
有关HTTP协议中的无连接和无状态
参考链接1,强推这篇文章
参考链接2
参考链接3
什么是无连接
无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
请求时建连接、请求完释放连接,以尽快将资源释放出来服务其他客户端。
Keep-Alive
功能使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive 功能避免了建立或者重新建立连接
什么是无状态
无状态是指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。即我们给服务器发送 HTTP 请求之后,服务器根据请求,会给我们发送数据过来,但是,发送完,不会记录任何信息。
HTTP 是一个无状态协议,这意味着每个请求都是独立的,Keep-Alive 没能改变这个结果。
缺少状态的话,假如要处理后续内容就需要重传,交互是需要承前启后的
解决办法就是Cookie和Session
Cookie用来标识用户的身份,是服务器在本地机器存储的一小段文本,服务器会通知客户端存储cookie信息(set_cookie),客户端存后,会随着每次请求将cookie值发送到服务器。Cookie技术通过请求和响应报文中写入Cookie信息来控制客户端的状态。
Session一个临时会话(类似临时缓存数据存储区,不用频繁的访问数据库),保存在服务端
session机制时候会生成session的id值,这个id值会发送给客户端,客户端每次请求都会把这个id值放到http请求的头部发送给服务端,而这个id值在客户端会保存下来,保存的容器就是cookie。每次访问时,带上这个cookie值,服务器就能知道ID对应的会话。
更多推荐
有关HTTP协议中的无连接和无状态
发布评论