公司新闻 行业动态

系统开机时间优化

发布时间:2024-05-06      来源:网络


bootchart是开机优化中主要工具,通过bootchart可以直观的查看系统启动过程中各个过程耗费的时间。

对于开机时间衰退的case,还可以拿衰退的开机bootchart和正常开机bootchart进行对比,帮助我们快速定位。

systemd提供了一些命令,最主要的作用是可以帮助我们分析service的依赖关系
当然,它也可以帮助我们对系统的service有个初步印象。
下面是几个常用命令:

systemd-analyze blame

systemd-analyze critical-chain

systemctl list-dependencies

开机优化的第一步几乎都是梳理关键路径,需要对关键路径、关键参数做到心中有数。

关注时间轴上cpu和io的利用率,找出瓶颈。

对于时间轴上cpu利用率低的阶段,进行优化。

对于cpu利用率,要考虑是否有必要在某些阶段留点buffer,让实时性高的服务、任务有机会抢占,调度。

对于io频繁的服务,考虑是否能够批量io,节省资源消耗。

根据依赖关系、cpu和io情况,合理调整启动顺序。对于依赖关系简单的服务,看情况调整到cpu利用率低的时段,对于关键路径上被依赖的程序,尽量早启动。

对非关键路径的应用,延迟启动。

对启动开销较大的服务,考虑是否能够拆分服务阶段,将必要、紧急的工作放前面,将部分耗时,且不紧急的工作放后面。

平台注册入口