如何实现Web开发中的长尾词会话跟踪功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1080个文字,预计阅读时间需要5分钟。
在WEB开发中实现会话跟踪主要依赖于HTTP无状态协议。客户程序每次读取Web页面都打开到Web服务器的单独连接,并且服务器不自动维护客户的上下载文信息。因此,实现持续会话跟踪需要使用一些额外的方法,如cookies或session。
在WEB开发中实现会话跟踪实现HTTP是“无状态”协议:客户程序每次读取 Web 页面,都打开到 Web 服务器的单独的连接, 并且,服务器也不自动维护客户的上下文信息。即使那些支持持续性 HTTP 连接的服务器, 尽管多个客户请求连续发生且间隔很短时它们会保持 socket 打开, 但是,它们也没有提供维护上下文信息的内建支持。上下文的缺失引起许多困难。 例如,在线商店的客户向他们的购物车中加入商品时,服务器如何知道购物车中己有何种物品呢? 类似地,在客户决定结账时,服务器如何能确定之前创建的购物车中哪个属于此客户呢? 这些问题虽然看起来十分简单,但是由于 HTTP 的不足,解答它们却异常复杂困难。 对于这个问题,存在 3 种典型的解决方案: Cookie(结合session使用) 可以使用 cookie 存储购物会话的 ID;在后续连接中,取出当前的会话 ID, 并使用这个 ID 从服务器上的查找表(lookup table)中提取出会话的相关信息。 以这种方式使用 cookie 是一种绝佳的解决方案,也是在处理会话时最常使用的方式。 但是,sevlet 中最好有一种高级的 API 来处理所有这些任务,以及下面这些冗长乏味的任务: 从众多的其他cookie中(毕竟可能会存在许多cookie)提取出存储会话标识符的 cookie; 确定空闲会话什么时候过期,并回收它们;将散列表与每个请求关联起来;生成惟一的会话标识符。 URL 重写 采用这种方式时,客户程序在每个URL的尾部添加一些额外数据。
本文共计1080个文字,预计阅读时间需要5分钟。
在WEB开发中实现会话跟踪主要依赖于HTTP无状态协议。客户程序每次读取Web页面都打开到Web服务器的单独连接,并且服务器不自动维护客户的上下载文信息。因此,实现持续会话跟踪需要使用一些额外的方法,如cookies或session。
在WEB开发中实现会话跟踪实现HTTP是“无状态”协议:客户程序每次读取 Web 页面,都打开到 Web 服务器的单独的连接, 并且,服务器也不自动维护客户的上下文信息。即使那些支持持续性 HTTP 连接的服务器, 尽管多个客户请求连续发生且间隔很短时它们会保持 socket 打开, 但是,它们也没有提供维护上下文信息的内建支持。上下文的缺失引起许多困难。 例如,在线商店的客户向他们的购物车中加入商品时,服务器如何知道购物车中己有何种物品呢? 类似地,在客户决定结账时,服务器如何能确定之前创建的购物车中哪个属于此客户呢? 这些问题虽然看起来十分简单,但是由于 HTTP 的不足,解答它们却异常复杂困难。 对于这个问题,存在 3 种典型的解决方案: Cookie(结合session使用) 可以使用 cookie 存储购物会话的 ID;在后续连接中,取出当前的会话 ID, 并使用这个 ID 从服务器上的查找表(lookup table)中提取出会话的相关信息。 以这种方式使用 cookie 是一种绝佳的解决方案,也是在处理会话时最常使用的方式。 但是,sevlet 中最好有一种高级的 API 来处理所有这些任务,以及下面这些冗长乏味的任务: 从众多的其他cookie中(毕竟可能会存在许多cookie)提取出存储会话标识符的 cookie; 确定空闲会话什么时候过期,并回收它们;将散列表与每个请求关联起来;生成惟一的会话标识符。 URL 重写 采用这种方式时,客户程序在每个URL的尾部添加一些额外数据。

