Heim  >  Artikel  >  Backend-Entwicklung  >  如何保证一台机器的死掉后另一台机器继续执行php脚本

如何保证一台机器的死掉后另一台机器继续执行php脚本

WBOY
WBOYOriginal
2016-06-06 20:23:251103Durchsuche

如何保证一台机器的死掉后另一台机器(linux)继续执行同一个php脚本(cli),请教方案?

回复内容:

如何保证一台机器的死掉后另一台机器(linux)继续执行同一个php脚本(cli),请教方案?

不知道你会不会使用keep-lived 写一个脚本监控即可, 如果A机器的某个指定名称脚本不存在在进程列表里,就可以启用B机器的这个脚本。不知道能不能满足你的要求,

如果keep lived 不会用,直接shell死循环写一个ssh远程执行命令也可以实现,稍微会麻烦些,也不优雅。

第三套策略,你可以用A,B两台机器同时运行一个死循环脚本, 这个脚本会检查数据库中你关注的脚本注册的计数器,如果计数器大于1 就说明有在运行,如果计数器为0,就起来一个业务脚本,并修改计数器。

做不到继续执行,只能做到重新运行。

系统只能保证进程存活时的执行上下文环境,一旦进程结束,不论是被杀死还是出错或者意外事故,都不可能继续执行。业务上能否继续需要你自己在脚本启动时检查做到哪儿了,接着做。

监视脚本存活和切换的方法可以参考@lnight的回答。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn