有时看起来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
从日志文件看起来它已经到达了Zope的开始。虽然bin / instance状态或上游前端代理服务器都不同意。你会在日志中看到这一点。
2013-03-08T04:19:21 INFO Zope Ready to handle requests
任何想法如何进一步调试?
这可能是某种竞争条件/慢启动问题吗?
可能是Ready to handle
让其他人观察到同样的行为吗?
答案 0 :(得分:5)
如果bin/buildout
重建实例,那么它也会删除并重新构建parts/instance
目录。
该目录包含一些导致bin/instance restart
失败的项目;管理重启的守护进程本身不再完整。
您需要使用bin/instance stop
来停止实例和守护进程,然后使用bin/instance start
(创建一个全新的守护进程)。