增加 Chrome/Firefox 的最大并行工作线程限制?

增加 Chrome/Firefox 的最大并行工作线程限制?

我们公司有一个网页,专门通过 Javascript 代码在客户的机器上本地处理成本信息。过去,这种处理是连续的,当一次处理数百个项目时,很容易花费几个小时。

为了解决这个问题,我将处理过程重新组织到 Webworkers 中,将流程分解为几个并行的工作线程,分别解决每个项目,这极大地加快了流程。

这在 Windows 上就像一个魅力,无论他们决定一次处理多少个项目,都会创建许多 Worker 并等待他们的指令,即使其他任务仍在执行,也允许独立处理。然而,在基于 Linux 的系统上(在 CentOS 8 和 Ubuntu 上测试),一次仅启动一定数量的进程,限制了客户一次可以使用的进程数量。

我怀疑最终用户机器上存在资源限制,但即使是具有 16 GB RAM 的普通 Ryzen3 3200 也无法做到这一点,而且我们的一位客户拥有一台具有 24 个核心的类似服务器的机器,也存在同样的问题。早在计算机资源耗尽之前,进程就停止生成。

做了一些研究,我发现这个线程关于最大并行执行这阐明了我的问题。运行ulimit -u告诉我,一个 shell 可以启动大约 54,000 个进程。

还,关于这个另一个话题有人提到,程序可以有自己的下限。在本文的情况下,由于文件的原因jobs.c,除非另有说明,默认的最大分叉数为 8192 个进程。但是,我找不到任何方法来强制增加任何网络浏览器的工作人员限制。

是否可以设置 shell 命令来启动 Chrome,而不受最大工作人员限制的限制?或者有其他浏览器吗?如果没有,有没有办法至少增加它?

相关内容