you are viewing a single comment's thread
view the rest of the comments
[–] 2 points 2 years ago*

One of the big issues with process monitoring, in the general sense, is how PID 1 checks on processes

The cgroups usage lets them make use of a very powerful Linux-specific feature. Some competitors such as Upstart tried to use ptrace for this, but that causes services to run slower

“Is a process running” I think is a harder question than you realize. systemd also offers the ability to ask “is a process running correctly” through watchdogs, and “is a process using too much memory” or “is a process using too much CPU” and offer corrective action if they are

The systemd.target issues I mention are related to different design goals. Systemd tries to start as many services as possible at once, but we need some services up within 1 second, and the rest can take longer

One option I offered was a modification to systemd so that targets could handle Before/After during our design, but the maintenance of porting it over for each update versus using OpenRC was decided to be too much effort

  • source
  • parent