gpt4 book ai didi

c# - 在Web Garden Mode下,除opera之外的所有主流浏览器如何维护进程Id?

转载 作者:太空宇宙 更新时间:2023-11-03 13:44:53 33 4
gpt4 key购买 nike

我在Web Garden 模式下测试 session 行为。

为什么所有主流浏览器都只使用一个进程(在服务器上),Opera 除外?它是如何完成的?

这是一个非常简单的网络应用程序:

代码隐藏:

protected void Page_Load(object sender, EventArgs e)
{
Response.Write(Process.GetCurrentProcess().Id);
}

标记:

<div>
<asp:Button ID="Button2" runat="server" Text="Button" />
</div>

每次我在 Opera 中单击按钮时,我都会得到不同的数字(取决于工作进程数),这是正常的。但是在 Chrome 中,我总是得到相同的进程 ID。

最佳答案

你这里搞错了,web garden 上没有粘到浏览器进程。

我前段时间做过同样的测试,但我从未遇到过这个问题。我不知道确切的机制,关于 asp.net 是如何选择哪个进程将获得下一个请求,但不会粘在浏览器上。

还有一些

Web 花园是指您在同一台计算机/服务器/池上使用多个进程来处理每个客户端请求。

Process.GetCurrentProcess().Id 显示实际运行您询问的页面的进程。我不确定 asp.net 如何选择将选择哪个进程来运行下一个请求,可能与每个请求的可用性以及每个运行的线程有关。

如何与客户端和调用浏览器数据无关。因此,如果您获得相同或不同的 id,与服务器的负载有关,可能与客户端页面的缓存有关,但肯定与浏览器无关。

关于c# - 在Web Garden Mode下,除opera之外的所有主流浏览器如何维护进程Id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15710754/

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