相关疑难解决方法(0)

浏览器中最大并行http连接?

我正在创建一些到HTTP服务器的暂停连接(彗星,反向ajax等).它工作正常,但我看到浏览器只允许两个同时挂起到给定域的连接.因此,如果用户在浏览器的Tab1中查看我的网站,那么也尝试在Tab2中加载它们,他们已经用尽了两个允许的连接到我的网站.

我想我可以做一些通配域的东西,我有我的http服务器解析我的网站的任何地址,如:

*.example.com/webapp  -> 192.0.2.1 (the actual ip of my server)
Run Code Online (Sandbox Code Playgroud)

所以:

a.example.com/webapp
b.example.com/webapp
c.example.com/webapp
Run Code Online (Sandbox Code Playgroud)

所有仍然指向(www.example.com/webapp)但浏览器认为它们是不同的域,所以我没有遇到2连接限制.这是真的?

即使这真的 - 所有域中每个浏览器的活动连接数是否有限制?假设我使用上面的方案 - 例如,Firefox在任何给定时间只允许24个并行连接吗?就像是:

1) a.example.com/webapp
2) www.download.example/hugefile.zip
3) b.example.com/webapp
4) c.example.com/webapp
...
24) x.example.com/webapp
25) // Error - all 24 possible connections currently in use!
Run Code Online (Sandbox Code Playgroud)

我刚刚选择了24个连接/ Firefox作为示例.

html web-applications http persistent-connection web-performance

437
推荐指数
9
解决办法
32万
查看次数

为什么这个web api控制器不兼容?

我有一个Web API控制器,里面有以下方法:

public string Tester()
{
    Thread.Sleep(2000);

    return "OK";
}
Run Code Online (Sandbox Code Playgroud)

当我调用它10次(使用Fiddler)时,我希望所有10个调用在~2秒后返回.然而,呼叫分别在2,4,8 ...... 20秒后返回.什么阻止它同时运行?我该如何解决这个问题?

常规控制器的行为与web-api控制器相同吗?

c# asp.net-mvc multithreading fiddler asp.net-web-api

14
推荐指数
3
解决办法
2万
查看次数

是否所有Web请求都是并行执行的并且是异步处理的?

我正在使用由IIS托管的WebApi服务控制器,我正在尝试理解这种架构是如何工作的:

  1. 当WebPage客户端同时发送异步请求时,所有这些请求是否都在WebApi控制器上并行执行?

  2. 在IIS应用程序池中,我注意到队列大小设置为1,000默认值 - 这是否意味着在WebApi服务器上同时可以并行处理1,000个最大线程?或者这个值只与IIS队列有关?

  3. 我已经读过IIS维护某种线程队列,这个队列是异步发送它的工作吗?或者IIS发送给WebApi服务的所有客户端请求是否同步发送?

c# asp.net multithreading asynchronous asp.net-web-api

6
推荐指数
1
解决办法
8326
查看次数