在这个来自Red Hat的技巧和诀窍文章中 ,有人说:
当通过初始化脚本启动服务时,会在/ var / lock / subsys /目录中使用与init脚本相同的名称来接触文件。 当服务停止时,该文件被删除。 只要文件名与init脚本相同,这个文件的内容对于本文的范围就不重要了。
但是,某些服务可能需要多个锁。 例如, 其中一个GitLab初始化脚本需要一个独angular兽锁和一个sidekiq锁:
# The PID and LOCK files used by unicorn and sidekiq UPID=$APP_PATH/tmp/pids/unicorn.pid ULOCK=/var/lock/subsys/unicorn SPID=$APP_PATH/tmp/pids/sidekiq.pid SLOCK=/var/lock/subsys/sidekiq
如果开发者使用/var/lock/subsys/gitlab-unicorn和/var/lock/subsys/gitlab-sidekiq吗? 或者可能是一个目录/var/lock/subsys/gitlab/ ?
可以通过某种方式避免这个问题使用一个单一的locking文件?
这种情况的最佳做法是什么?