【问题标题】:How many maximum number of simultaneous Chrome connections/threads I can start through Selenium WebDriver?我可以通过 Selenium WebDriver 启动的最大同时 Chrome 连接/线程数是多少?
【发布时间】:2019-02-12 16:00:19
【问题描述】:

假设我没有设置网格,我可以从 Selenium WebDriver 启动的最大并发 Chrome 线程数是多少?

是 5 吗?它也适用于 Chrome Headless 吗?

【问题讨论】:

  • 您的计算机可以为 Chrome 处理多少。我在一台机器上大概开始了 20 次左右,但它可能比运行更少的速度慢且效率低。您最好的选择是尝试一下,看看它是如何进行的,然后将其调整到您的机器上。可以使用 NUnit 等来控制工作线程的数量。默认值通常是您计算机上的内核数。

标签: selenium http connection httpconnection persistent-connection


【解决方案1】:

浏览器连接限制

浏览器限制具有相同域名的 HTTP 连接数。此限制在 HTTP 规范 (RFC2616) 中定义。大多数现代浏览器允许每个域六个连接,而大多数旧浏览器只允许每个域两个连接。

HTTP 1.1 协议规定单用户客户端不应与任何服务器或代理保持两个以上的连接。这就是浏览器限制的原因。你可以在RFC 2616 – Hypertext Transfer Protocol, section 8 – Connections找到详细的讨论。

现代浏览器的限制比这少,允许更多的连接。 RFC 没有指定如何防止超出限制。可以阻止连接打开或关闭现有连接。

支持的最大连接数表


http.maxConnections

根据Networking Properties

http.maxConnections (default: 5)

如果启用了 HTTP keepalive(见上文),则此值确定每个目标将同时保持活动状态的最大空闲连接数。


每个主机的连接

根据Network.http.max-connections-per-server Firefox 3 已将每台主机的连接数提高到 15 个。

根据Match Firefox's per-host connection limit of 15,Chrome 团队试图匹配相同并经过讨论Configurable connections-per-host,但最终在Configurable connections-per-host 没有任何结论


结论

当您使用任何 WebDriverWeb Browser 变体组合时,同样的标准也适用。 Selenium Grid SetupChrome HeadlessFirefox Headless 的行为也将相同。


参考文献

【讨论】:

  • 这些限制仅适用于每个浏览器实例。您可以运行多个实例
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多