IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:Fault Recovery

共 3 篇相关文章

IT 累计浏览 3,132

《火星救援》中你应该知道的5个高可用系统故障恢复原则

这篇文章从电影《火星救援》出发,将主角马克·沃特尼的火星生存挑战,与互联网高可用系统的故障恢复实践做了精彩类比,提炼出了五条关键原则。 作者指出,故障发生时应秉持信息透明原则,及时向内部与外部同步状态,这比隐瞒问题更能赢得理解与支援。面对紧迫的恢复时限,技术负责人需在信息不全的情况下快速决策。在解决过程中,既要鼓励工程师发挥主观能动性积极尝试,也要善于利用系统预留的“救生锤”——比如那些99.9%时间不用的功能开关或旧接口。最后,当常规手段失效时,可能需要像电影里抛弃所有负重一样,采取一些简单粗暴但有效的方法来快速恢复服务,事后再进行数据修复。 文章没有停留在抽象理论,而是紧扣电影情节与技术场景的对应点,比如NASA的新闻发布会对应故障公告,探路者号对应遗留系统,让这些工程原则变得生动可感。文末那个马克在地球喝咖啡的比喻,也巧妙点出了运维人员平凡日常中的珍贵。

IT 累计浏览 2,775

监控进程

这篇讲的是Linux下如何更灵活地监控和管理进程。当服务因资源耗尽、程序崩溃或误操作意外终止时,虽然系统自带的SysVinit、Upstart或Systemd能实现基础重启,但应对“CPU占用超标就重启”或“同时管理数百个PHP Worker”这类复杂场景就显得力不从心。 文章随后深入对比了Monit和Supervisor两款专业工具。Monit通过轮询进程状态,能实现基于资源阈值的智能监控与重启,比如配置其在Nginx的CPU使用率连续5次超过80%时自动重启。Supervisor则擅长批量管理同类进程,可以轻松配置并维持100个PHP Worker进程的常驻数量,它更专注于进程的生命周期管理。 不过,两者各有特点。Monit更像一个灵活的资源监控与响应器;Supervisor则是强大的进程组管理器,但通常要求被管理的进程以前台模式运行。文章还巧妙地解决了一个递归问题:如何监控监控者本身?通过让SysVinit来“守护”Supervisor进程,利用系统的初始化能力构建了一道最后的防线。

IT 累计浏览 3,295

构建高可用系统之故障篇

对于任何追求高可用的系统来说,故障都是一个绕不开的话题。完全杜绝故障往往不现实,核心思路是如何在故障发生时,将其对核心业务的影响降到最低,或快速恢复。 这篇文章正是围绕这一现实挑战展开。作者没有讨论理想架构,而是从**程序故障**这一具体切入点出发,并明确排除了人工操作失误的情形,聚焦于代码和运行时环境自身可能引发的问题。文章的核心观点很直接:面对不可避免的故障,我们的防御重点应放在“快速屏蔽”和“快速修复”上,这比单纯追求“绝对不出现故障”更为务实。 作为一篇经验总结型的文章,作者坦言内容主要源于其所在团队的实践,因此可能带有一定的视角局限性。但这恰恰让分享更显真诚,避免了空谈理论。文章旨在为读者提供一套应对程序级故障的实战思路,帮助你在故障突袭时,能有一套行之有效的行动指南,而非仅停留在概念层面。