gpt4 book ai didi

iis - 上传时我无法打开网站上的其他页面?

转载 作者:行者123 更新时间:2023-12-04 06:00:01 28 4
gpt4 key购买 nike

我的网站在 IIS7 上运行,所有脚本都是用 ASP Classic 编码的。我最近注意到在我的网站上上传文件时无法打开任何其他页面。

这是场景:
我开始使用网络表单上传视频文件,在上传文件时我尝试在同一网站上打开另一个页面,但除非上传完全完成,否则它不会接收和加载单个字节!

有什么想法吗?

最佳答案

Session 对象是造成这种情况的原因。 Session 对象属于 STA(单线程单元)。当属于特定 session 的请求到达时,处理该请求的工作线程将进入 session 对象所属的单元。然而它只能做到这一点 如果该公寓中没有其他线程 (因为一个 STA 一次只能容纳一个线程)。

因此,您的浏览器开始上传文件,正在执行与该浏览器 session 相关联的 ASP 请求。处理上传请求的工作线程进入 session 对象所属的单元。现在您正在尝试加载另一个页面,而另一个请求仍在进行中。当第二个请求到达时,ASP 会发现它不能让另一个工作线程进入同一个 session 单元,因为它已经被第一个请求占用了。因此,ASP 会将第二个请求放入队列中,等待第一个请求腾出公寓。

避免这种情况的唯一方法是关闭 ASP session 。这将允许 ASP 同时处理来自同一浏览器的请求。然而,严重的缺点是您将不再有 Session 对象可以使用。您必须自己实现任何服务器端 session 管理,包括处理并发问题,例如两个尝试同时访问任何 session 数据的请求。

关于iis - 上传时我无法打开网站上的其他页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9029599/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com