是否有设置好的值的指南?

joh*_*inp 1 nice

我想开发一个应用程序并想nice为我的守护进程提供一个值。但我没有找到这方面的指导方针。

有些文章说备份任务应该有更高的nice价值(意味着更低的优先级),但我找不到什么样的进程应该有更低的nice价值。

如果没有这样的设置nice值指南,那么每个守护进程都将其nice值设置为-20,这是最高优先级,这难道不是一个可怕的世界吗?

Wil*_*ard 5

是否有为应用程序开发人员设置好的值的指南

不,因为那不是你能控制的;你也不应该尝试。(你只会惹恼那些就软件购买决策向老板提出建议的系统管理员。)

它需要 root 权限才能为您的进程提供更高的优先级。精心设计的守护进程不应以 root 身份运行。例外情况非常罕见,并且所有这些例外都与系统管理直接相关,而不是通常意义上的“应用程序”。如果您不是为某种系统管理编写软件,那么您首先不应该将应用程序设计为以 root 身份运行。因此,您甚至无法为您的应用程序提供更高的优先级。

如果你想给你的应用程序一个较低的优先级,你可以。不过,在大多数情况下,您不会这样做;你会把它留给系统管理员来管理。也许如果“低资源占用”是你的卖点之一,你会希望通过编码来确保它成为现实。

是否有为系统管理员设置好的值的指南

是的当然。这一切都在“系统调整”的标题下。您问题的这个修订版对于 Stack Exchange 格式来说确实太宽泛了,但简而言之:

  1. 在调整之前进行测试。如果 IO 是你的瓶颈,不要想象你会用 renice 解决问题。
  2. 优先考虑作为您拥有该机器的真正原因的进程(例如,如果它是 LDAP 服务器,则优先考虑 LDAP 进程)。
  3. 如果一个非必要的过程占用资源(通过实际测试,而不是假设——参见第 1 点),将其压制以防止这种情况发生。

...我找不到什么样的过程应该具有较低的nice价值。

见上文第 2 点。这取决于机器整体的实际用途。