我正在运行一个应用程序,该应用程序可以在初始化器中启动RUFUS调度程序。该应用程序正在生产中与乘客一起运行,我注意到了几个奇怪的行为:

首先,为了重新启动服务器并确保初始化器运行,您必须同时进行 touch tmp/restart.txt 并将应用程序加载到浏览器中。那时,初始化器发射。可怕的事情是,如果您只进行触摸,则Rufus计划的过程将重置,并且直到将应用程序加载到浏览器中为止。

我一个人可以处理。但这导致了第二个问题:我会注意到计划过程尚未运行,因此我加载了一个页面,突然,日志文件告诉我它正在运行初始化器,就像我重新启动一样。因此,在某个时候,乘客正在随机重新启动,好像我触摸了tmp/restart.txt并擦除了我的计划过程一样。

我对乘客和铁路集成的理解非常糟糕,因此我不知道这种偶尔的重新启动是异常还是整个建筑的一部分。谁能在这种情况下提供任何智慧?

有帮助吗?

解决方案

您描述的是乘客的工作方式。当交通保证它们时,它会产生应用程序的新实例,并在不活动的自由资源之后将其关闭。

您应该阅读乘客文档,特别是 资源控制与优化部分. 。有些设置可以防止乘客关闭应用程序,如果您想要的话。

使用pastengerpoolidletime设置,您可以保持至少一个流程运行,但是几乎可以肯定,您希望乘客根据需要启动该应用程序的其他实例。 这个线程 在RUFUS调度程序Google Group上,使用锁定文件来防止多个进程启动调度程序,这可能对您有用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top