小赖子的英国生活和资讯

说说单点故障 Single Point Failure

阅读 桌面完整版
linux 说说单点故障 Single Point Failure I.T. 资讯

linux

这两天 steemd 一直很不稳定, 直接导致于我那点赞机器人就无法工作:

lost-connection-wsconnect-steem-python

Python STEEM 库会不停的尝试连接区块链网络, 然后等待再试, 基本上我写的大部分脚本都失效了, 表现的结果就是很多脚本卡死的状态, 我用 命令 ps augx | grep steem | wc -l 竟然发现有几十份同样的脚本在运行(因为 crontab 里设置每一分钟就跑一遍 获取点赞名单和文章, 决定是否点赞和点赞比例).

node-maintanance

steemd.com 时好时坏.

不得已, 只能 killall -9 python3 把所有脚本给停止了. 虽然现在已经恢复了差不多了, 但是这也给我敲响了警钟: 容灾机制太差, 单点故障 Single Point Failure 风险太大.

举个简单的例子, 遇到飞机引擎着火停止工作, 空姐再怎么教你把安全带绑好对结果也是没啥帮助的. 这里的单点就是在整个系统中起着至关紧要作用的部分.

公司的产品也需要有 backup, 意思是每一个模块也需要至少2-3个人能懂不至于模块负责人休假了遇到啥问题其他人无法搞定. 解决这种情况下的单点故障 的方法一般有: 公司内部进行模块分享和培训 (Knowledge Share, Lunch & Learn), 模块需要有详细的文档, 代码需要有详细的注释等等.

点赞机器人 @justyy 使用了 Steemd, 但有很大的风险, 于是我把部分代码用 steemsql 重写, 保留两种方案, 这样也不至于一种方法瘫痪了整个系统就不能使用了.

说了这么多, 总结就四个字: 两手准备.

强烈推荐

微信公众号: 小赖子的英国生活和资讯 JustYYUK

阅读 桌面完整版
Exit mobile version