![Daemontools(djbtools)在系统重启后冻结进程](https://linux22.com/image/655289/Daemontools%EF%BC%88djbtools%EF%BC%89%E5%9C%A8%E7%B3%BB%E7%BB%9F%E9%87%8D%E5%90%AF%E5%90%8E%E5%86%BB%E7%BB%93%E8%BF%9B%E7%A8%8B.png)
我们目前正在使用最新的 daemontools (http://cr.yp.to/daemontools.html) 来管理我们的后台 Linux (AWS-linux) 应用服务器。我们的应用服务器在 JVM 中运行:
[ec2-user@ip-10-0-1-220 local]$ java -version
java version "1.7.0_75"
OpenJDK Runtime Environment (amzn-2.5.4.0.53.amzn1-x86_64 u75-b13)
OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)
除非我们重新启动服务器,否则一切都运行良好并符合预期:
sudo 关机-r现在
当服务器重新启动时,配置的 daemontools 服务将启动并正常运行约 10-20 分钟。然而,在此之后,应用程序服务器中的线程开始挂起,直到整个进程冻结。我们目前发现修复该问题的唯一方法是重新创建服务目录,位于/service/...
这些症状可能表明/service/.../supervise/
目录中的数据已损坏。这个问题似乎之前没有被讨论过。
如果您对我们如何在不出现此问题的情况下重启服务器有任何建议或意见,我们将不胜感激。
答案1
诊断的第一步是sudo ./run
从服务目录执行,并确保它将持续运行在前景中。如果没有,那么您将需要在申请中解决这个问题。
如果手动操作后一切正常,那么问题可能出在您设置服务目录的方式上。您可以发布重新创建的步骤吗?