Plone bin/instance start和bin/instance restart有时会失败

Mik*_*maa 3 plone

对于Plone站点,有时看起来bin/instance启动失败.症状

  • 该网站已运行一段时间没有维护

  • 一个运行buildout: bin/buildout

  • 一个尝试使用bin/instance start或重启站点bin/instance restart

  • 该网站无法启动.没有任何内容记录到控制台.

  • 但是,如果您bin/instance fg先运行该站点确实启动

这会影响Plone 3.x和Plone 4.x站点.

以下是该过程的示例.你可以看到,尽管重新启动并启动,该网站并没有真正启动,但最终提出了fg:

*************** /PICKED VERSIONS ***************
xxx@yyy:/srv/plone/zzz$ bin/instance restart
.
daemon process restarted, pid=27819
xxx@yyy:/srv/plone/zzz$ bin/instance start

daemon process started, pid=27945
xxx@yyy:/srv/plone/zzz$ bin/instance status
daemon manager not running
xxx@yyy:/srv/plone/zzz$ bin/instance fg
2013-03-08 04:18:11 INFO ZServer HTTP server started at Fri Mar  8 04:18:11 2013
    Hostname: 0.0.0.0
    Port: xxxx
Run Code Online (Sandbox Code Playgroud)

从日志文件看起来它已经到达了Zope的开始.虽然bin/instance状态或上游前端代理服务器都不同意.你在日志中看到了这一点.

 2013-03-08T04:19:21 INFO Zope Ready to handle requests
Run Code Online (Sandbox Code Playgroud)

任何想法如何进一步调试?

可能是某种竞争条件/慢启动问题?

可能是这个过程默默地死了之后 Ready to handle

让其他人观察到同样的行为吗?

Mar*_*ers 5

如果bin/buildout重建实例,那么它也将删除并重新构建parts/instance目录.

这个目录包含一些bin/instance restart 失败的项目; 管理重新启动的守护进程本身不再完整.

您需要使用bin/instance stop停止实例守护进程,然后使用a bin/instance start(创建一个全新的守护程序进程).