微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – PID超过65535是正常的吗?

我有一个运行在Cloud Linux 6.6 x86_64标准上的托管VPS.

它有几个使用CPanel运行MySQL,PHP和Apache的网站.

我正在研究一个需要管理PID并检测其状态的PHP系统.

我在MysqL数据库上定义了一个smallint字段(2个字节)来存储PID.

但今天,我注意到一些奇怪的东西:

该服务“正在行动”,并表示该进程在实际完成任务时未运行.

我查了一下,进程的PID值高达997282(迄今为止最高).

我试图在谷歌上看这个,没有任何帮助我.

我只找到了关于文件/ proc / sys / kernel / pid_max的信息,我用它来读取它并从那里获得最大PID,即1048576.

这是正常的PID超过65535?

有点无关:当PID超过10000时,服务器是否会重启?

您可能需要的任何其他信息,我愿意提供一个没有秘密泄露的特定点.

解决方法

PID被回收.当一个进程退出其PID时,可以稍后由另一个进程使用,因此您不会“耗尽”或仅需要重新启动,因为存在接近最大值的PID但是请参阅下面的…

除非有必要,否则我不会修改此sysctl参数;例如使用大量短期进程或具有长时间运行进程的大量多线程应用程序在繁忙的系统上工作.

通常我设置为99999或在某些情况下,999999 …

一个值得注意的案例中,我有一个数据库服务器用完了进程ID. PID平均耗尽了9,000-10,000个并发数据库连接.每个线程产生多个线程,达到操作系统中配置的32,768限制.由于运行队列较高,这会提高系统平均负载.

提高PID最大值可以减轻压力.

编辑:

如果这是VPS,我认为主机的pid_max值很高,因为PID在系统上的guest虚拟机之间共享.它可能提供净空.

原文地址:https://www.jb51.cc/linux/398083.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐