为什么浏览器会起多个进程?

来源:1-1 为什么做这门课

MessiahJK

2020-09-10

能问下一哥 为什么浏览器(如chrome)会起多个进程 这种做法的好处和坏处有哪些

写回答

1回答

张勤一

2020-09-11

荷学长你好:

    可以肯定的说,目前几乎所有的浏览器都是采用多进程的架构。其核心思想就是要用内存(即使是多线程一样会消耗 CPU,但是内存会少一些)去换取速度,以及保证浏览器的稳定性。

    许多网站包含活动内容,如 JS,Flash,HTML5 等,以便提供丰富的,动态的 Web 浏览体验。遗憾的是,这些 Web 程序可能包含软件缺陷,从而导致相应迟滞,有的甚至导致网络浏览器崩溃。

    带来的直接影响就是,如果浏览器是单进程,那么任何标签的Web应用程序崩溃,整个浏览器的所有网页都将崩溃。现代浏览器是通过多进程架构设计解决这一问题的。

    那么,采用多进程架构的浏览器有什么优缺点呢?

    优点:网站彼此独立运行。如果有一个网站崩溃,只有它的渲染进程受到影响;所有其他进程依然安然无恙。此外,渲染进程在沙箱中运行,这意味着访问磁盘和网络I/O是受限制的,进而最大限度地减少任何安全漏洞地影响。

    缺点:如果开启的页面很多,因为大量进程的存在会导致大量资源消耗。


    我是勤一,致力于将这门课程的问答区打造为 Java 知识体系知识库,Java 知识体系 BBS!共同建造、维护这门课程,我需要每一个你!        

    

2
1
MessiahJK
非常感谢!
2020-09-11
共1条回复

Java实操避坑指南 SpringBoot/MySQL/Redis错误详解

掌握业务开发中各种类型的坑,,Java web开发领域通用

466 学习 · 204 问题

查看课程