架构设计(七):日志、监控和自动化
作者:Grey
原文地址:
针对小型网站,日志、监控和自动化支持是很好的做法,但不是必须的。然而,如果网站已经发展到为大型企业服务,日志、监控和自动化工具是必不可少的。
日志有助于识别系统中的错误和问题。关于日志,有两种处理方式
方式一,在每个单独服务器层面上记录日志;
方式二,使用工具将它们汇总到一个集中的服务中,以便于搜索和查看。
监控并收集不同类型的指标有助于了解系统的健康状况,一些监控的指标如下
主机级指标,例如:CPU、内存、磁盘I/O,等等。
汇总级指标:例如,整个数据库层、缓存层等的性能。
关键业务指标:日活跃用户、保留率、收入等。
当一个系统变得庞大而复杂时,需要建立或利用自动化工具来提高生产力,关于自动化,使用持续集成是一个最佳实践之一,在持续集成中,每一个代码检入都通过自动化来验证,使团队能够及早发现问题。此外,将你的构建、测试、部署过程等自动化,可以显著提高开发人员的生产力。
结合架构设计(六):引入消息队列,整个架构可以做到
-
消息队列使系统更加松散地耦合和具有故障恢复能力。
-
包括了日志、监控和自动化工具,对系统问题发现,问题处理,以及代码质量的提升提供了有力的保障