ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> ASP技术
负载平衡环境下的ASP会话管理(转)
创建交互式web 页面时最大的挑战之一是维持用户的状态,一个站点也许想记住你是谁、在n页之前你点击了什么、在这最后一次做了些什么、现在马上要向你显示什么。实现这些功能的途径有许多,如查询字符串、提交表单或cookies,最强大的一种是ASP的Session 对象。

原文出处:http://www.asptoday.com/articles/20000118.htm      当用户第一次到达某站点,他/她被给予一个HTTP cookie格式的SessionID (是一个只读属性,

为每个用户返回session 识别号)。然后服务器可以在session 集合中跟踪一整群的变量,通过

与用户的session cookie相匹配来保持每个用户有一个特定变量。只要用户在服务器上保持活跃,

session 变量就维持它的状态。一个session 变量的默认有效时间是20分钟,或者是每当用户关闭

浏览器,这时无论session_OnEnd 部分是什么内容,global.asa 文件都运行。





       以上陈述的关键是“在服务器上保持激活状态”。每个session变量都在网络服务器上设置,并保持在

本地内存中。所以,如果你在一个web 范围内使用负载平衡怎么办?(负载平衡的介绍请见

msdn 文章 ‘ASP and Web Session Management’)。对真正的负载平衡来说,每当居住于服务器

上的用户点击一个连接时,它就改变服务器的状态,每当浏览一个新页面时都潜在地丢失他们的

session 信息。



       如果你发现自己是在这样的环境下编写代码--或者你怀疑你的站点最终是负载平衡的--你有4种方法

来解决这个问题。



   ○ 完全不使用session 。

   ○ 使用临时cookies 。

   ○ 购买第三方组件来处理session 管理。

   ○ 仅对web 范围内的第一次点击进行负载平衡。



       本文将讨论这四种选择,并解释它们分别在何时何地最适用。



      根本不使用sessions



       显然,饶过sessions 管理这个问题的一个途径就是根本不使用sessions 变量。但是你仍然受困于

状态保持的问题。你可以使用最简单的方法跟踪用户,而不用写客户机。



       一种不安全的方法是使用浏览器查询字符串,或用隐藏值进行表单置入,以使用户保持活跃状态。

这将允许你给他们一个用户id,并将变量存储在一个所有的web服务器都能到达的地方。比如说

我保持了变量 ShipToZipCode、 TypeOfCustomer和 CustomerEmail。可以这样写:



< form action="/nextpage.asp" method="post" >

Item Number: < input type=text name="ItemNumber" >< br >

Quantity: < input type=text name="Quantity"  >< br >

Unit Cost:< input type=text name="UnitCost"  >< br >

< input type=hidden value="ABXXXKJR8JSDFI12KJIL2H75CX45X2" name="sessionid" >

< input type=submit value="post form" >

< /form >



        然后,在 nextpage.asp上, 可以做以下工作:



Set conn=Server.CreateObject(ADODB.Connection)

Set SessionRS = conn.execute("Select ShipToZipCode, TypeOfCustomer, _  CustomerEmail from TblSession where SessionID =" & request.form("sessionid"))

ShipToZipCode = SesssionRs("ShipToZipCode")

TypeOfCustomer = SesssionRs("TypeOfCustomer")

CustomerEmail = SesssionRs("CustomerEmail")



        这样通过将所有的"session" 信息存储在数据库中,可以使这三个变量在每一页上都保持活跃。确保

用户id的值很难猜到,这很重要。当访问第一页时,将分配给用户的sessionID 存储为用户名。当用户

离开这一页时可以考虑清除这个数据,有效地重新生成ASP session 对象。这可以手工完成,或者用

一个限时程序将数周以上的记录删除。







使用临时Cookies



         对于特别的非敏感数据,直接向客户机中写入信息是有意义的。比如说,如果我的站点只使用了一个

变量来跟踪用户的ZIP 码来得到用户在当地的交通记录,那么以HTTP cookie的形式将用户的ZIP码

写入他们的机器应该不会产生什么危害。因为你可以将cookie写成浏览器关闭时失效,就可以使它们

模仿一个session 变量的功能,也2
 
 
本站关键词:
|东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册||东莞企业邮箱|东莞平面设计|东莞产品推广|网站建设公司|网站开发 东莞|网络公司 东莞|东莞做网站|东莞连邦软件|网页设计公司|东莞软件销售|东莞.com域名注册|东莞.cn域名注册|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有