会话 (计算机科学)

✍ dations ◷ 2025-04-05 00:01:25 #网络协议

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

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

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

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

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

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

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

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

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

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

相关

  • 犹大支派犹大支派来源于以色列人第三代部落首领雅各的第四子犹大(Judah),由利亚所生,后来由于长子流便因与父亲的婢女(妾)辟拉(她为雅各生下二子,亦即他的乳母)通奸,并试图隐瞒,因而丧失长
  • 平均数不等式平均数不等式,或称平均值不等式、均值不等式,是数学上的一组不等式,也是基本不等式的推广。它是说:如果 x 1
  • 1913年这是按照1913年人口排列的国家列表,只排名主权国家。
  • 克劳德·雷路许克劳德·劳路许(Claude Lelouch)是一位法国电影导演、制作人、编剧及作家,经常以大量的即兴对话来制作电影。克劳德·劳路许出生在法国巴黎第九区,双亲是西蒙与夏洛特。他的父亲
  • 莫卡咖啡摩卡咖啡(英语:Café Mocha,意大利语:Mocaccino,又名莫加或者摩卡)是意式拿铁咖啡的变种。和经典的意式拿铁咖啡一样,它通常是由三分之一的意式浓缩咖啡和三分之二的奶沫配成,不过它
  • 低强度战争低强度战争(英语:Low-Intensity Conflict, LIC)指介于国与国开战的大型战争与和平状态间的半战争事件。低强度战争通常由轻兵器的步兵实行,而不使用战车、海军、空军等重武器,可
  • 韩福瑞营汉弗莱营(英语:Camp Humphreys;韩语:캠프 험프리스)或译韩福瑞营,有时称作美国陆军汉弗莱基地(United States Army Garrison-Humphreys,缩写USAG-H),是一座位于韩国京畿道平泽市的驻韩
  • 奥托二世 (神圣罗马帝国)奥托二世(Otto II,955年—983年12月7日),东法兰克国王(961年—983年在位),罗马帝国皇帝(967年起与父亲共治)。皇帝奥托一世与伦巴第的阿德莱德之子。奥托二世在961年父皇尚在世时即已
  • 格林尼治标准时间+8 ) 刷新格林尼治平均时间(英语:Greenwich Mean Time,GMT)是指位于英国伦敦郊区的皇家格林尼治天文台当地的平太阳时,因为本初子午线被定义为通过那里的经线。自1924年2月5日开
  • 巴亚克巴克巴亚克巴克(英语:Bāyakbāk),突厥人,生卒年不详,阿拔斯王朝官员,突伦王朝建立者艾哈迈德·伊本·突伦的继父。曾获得由哈里发穆阿台兹赏赐的位于埃及的大片封地。巴亚克巴克将对封