问题一:最新的 Chrome 浏览器架构具体每一部分是什么?
最新的 Chrome 浏览器架构具体每一部分是什么?
参考回答:
• 浏览器进程:主要负责界面显示、用户交互、子进程管理,同时提供存储等功能。可以理解浏览器进程是一个统一的"调度大师"去调度其他进程,比如我们在地址栏输入url时,浏览器进程首先会调用网络进程。
• 渲染进程:核心任务是将HTML、CSS和JavaScript转换为用户可以交互的网页,排版引擎Blink和JavaScript引擎V8都是运行在该进程中,默认情况下,Chrome会为每个 Tab 标签创建一个渲染进程。出于安全考虑,渲染进程都是运行在沙箱模式下。
• GPU进程:其实,Chrome 刚开始发布的时候是没有 GPU 进程的。而 GPU 的使用初衷是为了实现 3D CSS 的效果,只是随后网页、Chrome 的 UI 界面都选择采用 GPU 来绘制,这使得 GPU 成为浏览器普遍的需求。最后,Chrome 在其多进程架构上也引入了 GPU 进程。
• 网络进程:主要负责页面的网络资源加载,之前是作为一个模块运行在浏览器进程里面的,直至最近才独立出来,成为一个单独的进程。
• 插件进程:主要是负责插件的运行,因插件易崩溃,所以需要通过插件进程来隔离,以保证插件进程崩溃不会对浏览器和页面造成影响。
关于本问题的更多回答可点击原文查看:
https://developer.aliyun.com/ask/623060
问题二:有没有面向服务的架构的示意图?
有没有面向服务的架构的示意图?
参考回答:
看这个图就行
关于本问题的更多回答可点击原文查看:
https://developer.aliyun.com/ask/623061
问题三:面向服务的架构(SOA)目的是什么?
面向服务的架构(SOA)目的是什么?
参考回答:
面向服务的架构(SOA),目的是将和浏览器本身(Chrome)相关的部分拆分为一个个不同的服务,服务化之后,这些功能既可以放在不同的进程里面运行也可以合并为一个单独的进程运行。这样做的主要原因是让Chrome在不同性能的硬件上有不同的表现。当Chrome运行在一些性能比较好的硬件时,浏览器进程相关的服务会被放在不同的进程运行以提高系统的稳定性。相反如果硬件性能不好,这些服务就会被放在同一个进程里面执行来减少内存的占用。
关于本问题的更多回答可点击原文查看:
https://developer.aliyun.com/ask/623062
问题四:当用户新增一个tab时,系统会创建哪些进程?
当用户新增一个tab时,系统会创建哪些进程?
参考回答:
此时系统浏览器进程、渲染进程、GPU 进程、网络进程会被创建。
关于本问题的更多回答可点击原文查看:
https://developer.aliyun.com/ask/623063
问题五:用户在浏览器中输入URL后,浏览器进程会进行什么操作?
用户在浏览器中输入URL后,浏览器进程会进行什么操作?
参考回答:
用户在浏览器输入URL后,浏览器进程会先检查URL,组装协议,构成完整的URL,然后通过进程间通信(IPC)把URL请求发送给网络进程。
关于本问题的更多回答可点击原文查看: