找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
楼主: jjxu

如何关闭同一个网站公用同一个进程?

[复制链接]

8

主题

7415

回帖

2万

积分

超级版主

(^^ゞ

积分
20917
发表于 2021-8-21 15:45:04 | 显示全部楼层
从你在 6 楼里的描述看来,很像是 Process-per-site 模型,而浏览器默认是采用了 Process-per-site-instance 模型。在官方关于进程模型的描述里有提到:
There is a limit to the number of renderer processes that Chromium will create. This prevents the browser from overwhelming the user's computer with too many processes. The limit is proportional to the amount of memory on the computer, and may be as high as 80 processes. Because of the limit, a single renderer process may be dedicated to multiple sites. This reuse is currently done at random, but future versions of Chromium may apply heuristics to more intelligently allocate sites to renderer processes.

当进程数量达到一定数值时,就会触发类似 process-per-site 的机制,而这个数量限制是根据计算机的内存量而决定的,即成正比。我这边测试了一下, 16G 的内存,在进程数量达到 87 之后,就会开始触发这个机制(PS: 但是其实这个时候整个系统的内存占用量也就 31%),其后新建的标签页中若与已存在的标签页里同源时,新建的标签页就会与之共享进程(存在多个相同时随机分配,单个进程下站点少的优先)。

我不确定你那边出现这个现象是否是因为触发了这个机制,我这边测试了很多种情况,在不添加模型指定命令行的前提下,只有这种情况才会出现你在 6 楼里提及的现象了。
¯\(°_o)/¯
回复

使用道具 举报

7

主题

30

回帖

203

积分

中级会员

积分
203
 楼主| 发表于 2021-8-21 16:54:07 | 显示全部楼层
本帖最后由 jjxu 于 2021-8-21 17:15 编辑

我这总内存12g,进程数量是说系统的总进程数量吗?那我这没开什么页面的时候可用内存还有8.4g(内存占用量29%),系统进程数量就69个了,这时我这打开之前提的同源页面就会出现公用进程的现象;

另外一个情况是虽然当前已打开页面不多,但我总计大概有近400个延迟加载的背景标签,不知道这个有没有影响;

还有就是我这会随着使用时间加长,即便当前已经没有什么打开页面了,cent任务管理器里也会积累很多不会自动结束的"渲染程序",很多是指5个以上;
回复

使用道具 举报

7

主题

30

回帖

203

积分

中级会员

积分
203
 楼主| 发表于 2021-8-21 17:00:51 | 显示全部楼层
本帖最后由 jjxu 于 2021-8-21 17:14 编辑

刚做了个实验,在chrome://flags中把Disable site isolation设置为disable,在我这可以保证上面的几个同源页面都是独立进程,
回复

使用道具 举报

7

主题

30

回帖

203

积分

中级会员

积分
203
 楼主| 发表于 2021-8-21 17:21:42 | 显示全部楼层
我这的试验结果,Disable site isolation设置为disable:
如果加了--process-per-tab命令行参数,打开"同一个地址"的2个标签页,这两个标签页会公用同一个进程;
如果去掉--process-per-tab命令行参数,重启cent后,打开"同一个地址"的2个标签页,这两个标签页是不同的2个独立进程;
回复

使用道具 举报

8

主题

7415

回帖

2万

积分

超级版主

(^^ゞ

积分
20917
发表于 2021-8-21 18:29:33 | 显示全部楼层
jjxu 发表于 2021-8-21 16:54
我这总内存12g,进程数量是说系统的总进程数量吗?那我这没开什么页面的时候可用内存还有8.4g(内存占用量29%) ...

可以打开系统的任务管理器查看:
number.png

要是挂有 400 多个标签页那理论上是会触发这个机制的。
¯\(°_o)/¯
回复

使用道具 举报

7

主题

30

回帖

203

积分

中级会员

积分
203
 楼主| 发表于 2021-8-21 18:45:41 | 显示全部楼层
本帖最后由 jjxu 于 2021-8-21 18:53 编辑

我说的400个标签是还没有实际加载的,另外我的win8.1的任务管理器没有应用的进程数量显示
微信截图_20210821185223.png
回复

使用道具 举报

8

主题

7415

回帖

2万

积分

超级版主

(^^ゞ

积分
20917
发表于 2021-8-21 19:34:14 | 显示全部楼层
jjxu 发表于 2021-8-21 18:45
我说的400个标签是还没有实际加载的,另外我的win8.1的任务管理器没有应用的进程数量显示 ...

打开 cmd 运行:
  1. tasklist|find /c "chrome.exe"
复制代码

可以统计数量
¯\(°_o)/¯
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|百分浏览器论坛

GMT+8, 2024-11-2 05:37 , Processed in 0.016608 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表