当前位置: 首页 > 知识库问答 >
问题:

会话和HTTP连接之间的区别?

谯嘉懿
2023-03-14

我一直在读这个和这个。读完后,我发现自己现在对我的基础知识非常困惑。请帮助我,因为它涉及到网络和JSP的基础知识

考虑这个假设的情况:

如果我打开一些www.xyz。com在某个浏览器上,一天之内不要在该页面上做任何事情。

问题1:如果第二天我从该页面请求一些内容,这是否意味着相同的连接仍然存在。考虑到联系:保持活力是存在的。

问题2.会话在这种情况下是如何工作的?我发现,如果会话过期,连接也会过期,那么HTTP连接和会话之间的区别是什么?比如当我们在同一个浏览器中打开Facebook的多个标签时会发生什么(这是同一个会话,但连接不同?我说的对吗?)

问题3如本文所述

HTTP 1.1标准的一个主要改进是持久连接。在HTTP 1.0中,Web客户端和服务器之间的连接在一个请求/响应周期后关闭。在HTTP 1.1中,一个连接保持活动状态,并可重复用于多个请求。持久连接明显减少了通信延迟,因为客户端不需要在每次请求后重新协商TCP连接。

浏览器如何保持持久连接?

注意:如果有人能这样回答这个问题会更好

共有1个答案

葛浩阔
2023-03-14

要回答您的问题:

A1:不,第二天就没有连接了。Keep Alive(在HTTP中)的值通常很低,以至于一天都过不去。

A2:会话是服务器端维护的。它与通信的“保持有效”无关。它有一个单独的到期时间值(取决于您如何配置它)。你是正确的:不同的选项卡、相同的会话、不同的连接。通常会话使用通用cookie粘在一起。这就是为什么当你清理饼干时,你通常会失去所有的会话。

A3:浏览器根本不关闭TCP/IP连接。它就是这样做的。

 类似资料:
  • 问题内容: 我使用SQLAlchemy并至少有三个实体:,并且,其中有方法,所以如果我如想选择所有记录,从我能做到这一点 和这个 甚至这个 -结果将是相同的。 据我了解,如果有人使用它,它会创建,打开(Alchemy会为您处理)并执行查询。但是,执行此任务的这三种方式之间是否存在全局差异? 问题答案: 单行概述: 的行为是在所有情况下相同,但它们是3种不同的方法,在,和类。 到底是什么: 要了解行

  • 问题内容: 假设我有一个实体类,汽车。 我的IDE使我可以从实体类自动生成会话bean,因此最终得到了CarFacade 我也可以生成JSF托管bean 我可以理解Entity类和其他Bean之间的有意义的区别,但是无状态会话Bean和托管Bean之间有什么区别?我读到无状态会话Bean用于实现在实体上运行的业务逻辑,而托管Bean用于通过在托管Bean上使用网页调用方法并进行托管Bean调用来与

  • 问题内容: 除以下内容外,我们还有其他区别吗?另外请验证以下内容是否正确 每个应用程序一个对象,每个客户端一个对象。 是创建和管理。是为映射的类提供CRUD接口,并提供更多功能。 是线程安全的,而不是线程安全的 问题答案: 首先,询问这些接口之间的区别没有任何意义。好像在问汽车制造厂和汽车之间的区别。制造工厂是生产汽车的地方。同样,是一个将创建对象的实例。

  • 我正在使用ActiveMQ客户端库将我的服务器应用程序连接到ActiveMQ。几个不同的消费者和生产者在单个线程中运行。、和之间的关系应该如何? 每个JVM一个连接工厂 每个JVM一个到代理的连接或n个连接,每个使用者一个 n个会话,每个消费者一个(Javadoc似乎强烈建议这样做)

  • 问题内容: 我想向同一队列发送一批20k JMS消息。我使用10个线程将任务拆分,因此每个线程将处理2k条消息。我不需要交易。 我想知道是否建议建立一个连接,一个会话和10个生产者? 如果所有线程共享一个生产者,该怎么办?我的消息会损坏还是会同步发送(不会提高性能)? 如果我总是连接到同一队列,那么决定是创建新连接还是会话的一般指导方针是什么? 谢谢你,很抱歉一次问了很多。 问题答案: 如果某些消

  • 问题内容: 我已经看到在Python中实际上有两种(也许更多)串联列表的方法:一种方法是使用extend()方法: 另一个使用plus(+)运算符: 现在,我想知道:这两个选项中的哪一个是列表连接的“ pythonic”方式,并且两者之间有区别(我查看了Python的官方教程,但找不到有关此主题的任何信息)。 问题答案: 在字节码级别上的唯一区别是,该方式涉及函数调用,在Python中该函数比。调