gpt4 book ai didi

tomcat - systemd:延迟服务的返回,直到启动完成

转载 作者:行者123 更新时间:2023-11-28 23:57:19 27 4
gpt4 key购买 nike

我有多个必须按顺序启动的 tomcat 实例。在 After= 和 Requires= 的帮助下,这不是多个服务文件的真正问题。

我现在的问题是我需要在下一个 tomcat 启动之前启动里面的 webapp。

是否可以定义某种延迟以确保服务启动?我在文档中找不到任何内容。

否则我最后的机会是用我调用的 shell 脚本环绕 catalina.sh 调用以确保启动,但我更愿意只使用 systemd 来完成它。

另外,我不想修改代码基础,所以我不能添加 sd_notify 或类似的东西。

最佳答案

如果 Systemd 必须等到进程 A 完成其操作(在您的情况下启动 webapp)并通知 systemd,以便 systemd 启动依赖于进程 A 的下一个进程 B,那么进程 A 必须实现 sd_notify() 通知 systemd 进程 A 已启动,并继续启动相关应用程序。

了解 sd_notify here

除了 sd_notify() 之外,您还需要在 process-A.service 文件中添加 Type=notify 以便 systemd 等待 sd_notify()。

关于tomcat - systemd:延迟服务的返回,直到启动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42907072/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com