Fast Fail

自从接触storm,学习了下它的架构思想。其中对我影响较深的,可能就是 Fast Fail 了。
快速失败,就是程序失败了就迅速转移。做到这点不容易。
1.框架要快速重启
2.程序要保留现场,不能丢失数据。

storm 官方建议用daemontools这种工具管理其进程。目的就是在遇到意外原因需要退出的时候,不需要人工干预,其可以迅速的启动。
最近在写一个监控hadoop的工具。想想成千上万的节点就头疼。我必须保证自己采集数据的客户端在绝大数情况下不需要人工干预就可以正常自动重启,自动升级。

在用daemontools的时候,发现自己的程序不断的启动新的进程,请教蔡总后,发现自己的run脚本内用了nohup。

发表评论