会话 (计算机科学)

✍ dations ◷ 2025-11-12 12:20:31 #网络协议

在计算机科学领域来说,尤其是在网络领域,会话(session,Microsoft Windows 中文版译作工作阶段)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制,session在网络协议(例如telnet或FTP)中是非常重要的部分。

在不包含会话层(例如UDP)或者是无法长时间驻留会话层(例如HTTP)的传输协议中,会话的维持需要依靠在传输数据中的高级别程序。例如,在浏览器和远程主机之间的HTTP传输中,HTTP cookie就会被用来包含一些相关的信息,例如session ID,参数和权限信息等。

TCP 会话通常是通过子进程和(或)多线程在软件中实现的,当计算机创建或者加入一个会话时即创建一个新的进程或线程。HTTP 会话通常不会针对每个会话创建一个线程,而是由一个储存每个会话状态信息的数据库实现的。使用多线程或者多进程的方式带来的好处是降低了软件的复杂度,因为每个线程或者进程都单独具备自己的历史信息并且封装了变量。而这样做的劣势是带来了大量系统资源的开销,而且会话会因为系统的重启而被打断。

当客户端在多个服务器调取数据时,保持会话状态的一致性是需要注意的,客户端需用同时保持和某一个主机的连接,或者多个服务器端需要共享一个储存会话信息的文件系统或者数据库。否则,当用户在一个新的而不是一开始保存会话信息的主机上提交访问请求的时候,主机会因为无法获知原来主机的会话的访问状态而产生问题。

服务器端的会话是快速而高效的,但是在负载均衡系统和高速应用系统中的使用会比较麻烦,而在没有储存能力的系统上更是无法使用。在负载均衡系统中可以通过共享储存或者设立独立的存储服务器来解决,这需要根据系统的效率和加载分布的需求情况。

使用缓存存储会话数据是一种不需要储存介质的解决方案。这种方式适合于处理少量数据的客户端操作(例如路由或网络桥接器对多个客户端产生的请求)。但是这种方式会消耗较多内存空间。

客户端会话使用了Cookie和加密技术来完成上面提到的数据储存需求。

在动态页面完成解析的时候,储存在会话中的变量会被压缩后传输给客户端的Cookie。此时完全依靠客户端的文件系统来保存这些数据(或者内存)。

在每一个成功的请求中,Cookie中都保存有服务器端用户所具有的身份证明(PHP中的session id)或者更为完整的数据。

虽然这样的机制可以保存数据的前后关联,但是必须要保障数据的完整性和安全性。

相关

  • 狼(学名:Canis lupus),或称为灰狼,哺乳纲,犬科,在生物学上与狗为同一物种,为现生犬科动物中体型最大的物种。狼这个物种曾是地球上分布地区最广的哺乳动物,包括北美和欧亚大陆,但如今
  • 医疗保险中华人民共和国医疗保险是指中华人民共和国的国营医疗保险制度,属于中华人民共和国医疗卫生一环。整体中国医保与户籍制度有深度挂勾,首先是根据身份别,城镇居民户口和农村居民
  • 过度警觉过度警觉(英语:hypervigilance)是指经常表现为警惕地扫视周围环境以寻找危险迹象的过分警觉状态。常见于偏执型人格、创伤后应激障碍、被父母虐待或忽视的儿童,以及使用某些类型
  • 电影奖本列表列出世界各地所举办的电影奖项(不含各国影评人协会电影奖)。收到回复决定符合公司缴费
  • 宾夕法尼亚纪宾夕法尼亚世(英语:Pennsylvanian)是地球历史中的一个地质时代,被国际地层委员会(ICS)所承认,是石炭纪时期的两个子时期中的较年轻一个(或两个子系统中的较高者)。宾夕法尼亚纪的年
  • 馍可能指:
  • 嫦娥一号嫦娥一号是中国的首颗绕月人造卫星。以中国古代神话传说人物嫦娥命名。于2007年10月24日(UTC+8,下同)在西昌卫星发射中心搭乘长征三号甲运载火箭顺利发射升空。卫星的总重量为2
  • 恋胸罩恋内衣是指与内衣相关的恋物癖,这些恋物癖者会从观看、穿脱、嗅闻某些类型的贴身衣物(包括胸罩、内裤、丝袜、裤袜)等而产生性兴奋,无论是实体的、或是描绘其内容的图像皆然。某
  • 伍尔芙弗吉尼亚·伍尔夫(英语:Virginia Woolf;1882年1月25日-1941年3月28日),英国作家,被誉为二十世纪现代主义与女性主义的先锋。在一战与二战的战间期,她是伦敦文学界的核心人物,同时也是
  • 阿斯彭阿斯彭(英文:Aspen),是美国科罗拉多州皮特金县下属的一座城市。建市于1881年4月1日,面积大约为3.874平方英里(10.033平方公里)。根据2010年美国人口普查,该市有人口6,658人。2011年