![是否有设置良好值的指南?](https://linux22.com/image/124528/%E6%98%AF%E5%90%A6%E6%9C%89%E8%AE%BE%E7%BD%AE%E8%89%AF%E5%A5%BD%E5%80%BC%E7%9A%84%E6%8C%87%E5%8D%97%EF%BC%9F.png)
我想开发一个应用程序,并想nice
为我的守护进程提供一个值。但我没有找到这方面的指导方针。
有些文章说备份任务应该具有较高的nice
价值(这意味着较低的优先级),但我找不到什么样的进程应该具有较低的nice
价值。
如果没有这样的设置值准则,那么每个守护进程都将其值设置为最高优先级,nice
这难道不是一个可怕的世界吗?nice
-20
答案1
是否有设置良好值的指南对于应用程序开发人员?
不,因为那不是你能控制的;你也不应该尝试这样做。 (你只会惹恼那些向老板提供有关软件购买决策建议的系统管理员。)
它需要 root 权限才能为您的进程提供更高的优先级。一个设计良好的守护进程不应该以 root 身份运行。这种情况的例外情况非常罕见,并且所有例外都与系统管理直接相关,而不是该词通常含义中的“应用程序”。如果您不是为某种系统管理编写软件,那么您首先就不应该将应用程序设计为以 root 身份运行。因此,您甚至无法为您的应用程序提供更高的优先级。
如果您想给您的申请一个降低优先,可以。但在大多数情况下你不会这样做;您可以将其留给系统管理员来管理。也许如果“低资源占用”是您的卖点之一,您可能希望通过编码来确保它得以实现。
是否有设置良好值的指南对于系统管理员?
是的当然。这一切都属于“系统调整”的标题。您的问题的修订版本对于 Stack Exchange 格式来说确实太宽泛了,但简而言之:
- 调音前先进行测试。如果 IO 是你的瓶颈,不要想象你会用 renice 来解决问题。
- 优先考虑那些是您拥有该机器的实际原因的进程(例如,如果它是 LDAP 服务器,则优先考虑 LDAP 进程)。
- 如果一个非必要的流程占用资源(通过实际测试,而不是假设 - 请参阅第 1 点),请限制它以防止这种情况发生。
...我找不到什么样的过程应该具有较低的
nice
价值。
参见上面第 2 点。这取决于整个机器的实际用途。