经典ASP Session.Variables昂贵吗?

时间:2019-01-07 20:00:44

标签: iis asp-classic session-variables iis-8

我已经阅读了很多有关Classic Asp中会话变量的文章。

我已经知道访问Request.Servervariables成本很高,因为每次请求特定项时,整个集合都必须由ASP脚本从IIS中获取。

我很想知道是否同样适用于会话变量...? 收集几个我在脚本启动时正在使用的session.variables是一个好主意吗?

以下文章建议(我也相信)Session.Contents不会像Request.ServerVariables一样遭受效率低下的困扰?由于IIS一次性提供了Sesison,这是真的吗? http://www.4guysfromrolla.com/webtech/092298-3.shtml

注意:我对会话变量的使用非常稀疏,但是我正在寻找每一点优化方法:)

1 个答案:

答案 0 :(得分:3)

完全正确。

简单的答案是,如果一次需要会话变量(或应用程序,这是相同的),则可以直接使用它:

<%=session("userLastName")%>, <%=session("userFirstName")%>

如果您多次需要会话变量,请在本地复制(此示例中为数组):

<%
localAryCopy = session("myArray")
for each tmp in localAryCopy
    response.write tmp
next
%>

上周,有人要求我检查为什么他的asp classic应用程序要TTFB(到第一个字节的时间)要3秒钟。他多次使用3个会话变量(每个嵌入3个变量,总共约100个循环)。我刚刚制作了本地副本,TTFB降到了大约50ms。