架构设计(七):日志、监控和自动化

架构设计,日志,监控,自动化 · 浏览次数 : 98

小编点评

**架构设计(七):日志、监控和自动化** **日志** * 日志是系统行为的记录,有助于识别系统中的错误和问题。 * 两种处理方式: * 在每个单独服务器层面上记录日志。 * 使用工具将它们汇总到一个集中的服务中,以便于搜索和查看。 **监控** * 监控并收集不同类型的指标有助于了解系统的健康状况。 * 主机级指标:例如,CPU、内存、磁盘I/O。 * 汇总级指标:例如,整个数据库层、缓存层等的性能。 **自动化** * 使用持续集成来提高生产力。 * 在持续集成中,每一个代码检入都通过自动化来验证,使团队能够及早发现问题。 **消息队列** * 将你的构建、测试、部署过程等自动化,可以显著提高开发人员的生产力。 * 使用消息队列使系统更加松散地耦合和具有故障恢复能力。

正文

架构设计(七):日志、监控和自动化

作者:Grey

原文地址:

博客园:架构设计(六):日志、监控和自动化

CSDN:架构设计(六):日志、监控和自动化

针对小型网站,日志、监控和自动化支持是很好的做法,但不是必须的。然而,如果网站已经发展到为大型企业服务,日志、监控和自动化工具是必不可少的。

日志有助于识别系统中的错误和问题。关于日志,有两种处理方式

方式一,在每个单独服务器层面上记录日志;

方式二,使用工具将它们汇总到一个集中的服务中,以便于搜索和查看。

监控并收集不同类型的指标有助于了解系统的健康状况,一些监控的指标如下

主机级指标,例如:CPU、内存、磁盘I/O,等等。

汇总级指标:例如,整个数据库层、缓存层等的性能。

关键业务指标:日活跃用户、保留率、收入等。

当一个系统变得庞大而复杂时,需要建立或利用自动化工具来提高生产力,关于自动化,使用持续集成是一个最佳实践之一,在持续集成中,每一个代码检入都通过自动化来验证,使团队能够及早发现问题。此外,将你的构建、测试、部署过程等自动化,可以显著提高开发人员的生产力。

结合架构设计(六):引入消息队列,整个架构可以做到

  1. 消息队列使系统更加松散地耦合和具有故障恢复能力。

  2. 包括了日志、监控和自动化工具,对系统问题发现,问题处理,以及代码质量的提升提供了有力的保障

参考资料

System Design Interview

与架构设计(七):日志、监控和自动化相似的内容:

架构设计(七):日志、监控和自动化

架构设计(七):日志、监控和自动化 作者:Grey 原文地址: 博客园:架构设计(六):日志、监控和自动化 CSDN:架构设计(六):日志、监控和自动化 针对小型网站,日志、监控和自动化支持是很好的做法,但不是必须的。然而,如果网站已经发展到为大型企业服务,日志、监控和自动化工具是必不可少的。 日志

交易日均千万订单的存储架构设计与实践

服务业务线:快递、快运、中小件、大件、冷链、国际、B2B合同物流、CLPS、京喜、三入三出(采购入、退货入、调拨入、销售出、退供出、调拨出)等

[转帖]七. PostgreSQL逻辑结构(1)—数据库和模式

https://www.jianshu.com/p/ee8b1bdfdb19 在PostgreSQL里,逻辑结构从高到底依次是:数据库、模式(又叫架构)、表、行。当我们打开PostgreSQL官方自带的客户端软件pgadmin的时候,点开一个实例的连接,如下所示: image.png 从图中我们可以

架构设计(一):从单服务器模式到负载均衡设计

# 架构设计(一):从单服务器模式到负载均衡设计 作者:[Grey](https://www.cnblogs.com/greyzeng/) 原文地址: [博客园:架构设计(一):从单服务器模式到负载均衡设计](https://www.cnblogs.com/greyzeng/p/16980532.h

架构设计(二):数据库复制

架构设计(二):数据库复制 作者:Grey 原文地址: 博客园:架构设计(二):数据库复制 CSDN:架构设计(二):数据库复制 在架构设计(一):从单服务器模式到负载均衡设计中提到了数据库类型的选择, 针对大数据量,高可用的场景,数据库复制是一种比较好的方式,其中多个数据库实例之间可以是主/从关系

架构设计(三):引入缓存

架构设计(三):引入缓存 作者:Grey 原文地址: 博客园:架构设计(三):引入缓存 CSDN:架构设计(三):引入缓存 缓存是一个临时存储区域,如果请求的数据获取代价比较高或者数据的访问频率比较高,则会把响应结果存储在内存中,以便更快速地提供后续请求。 每次加载一个新的网页,都要执行一次或多次数

架构设计(四):CDN

架构设计(四):CDN 作者:Grey 原文地址: 博客园:架构设计(四):CDN CSDN:架构设计(四):CDN CDN 全称 Content delivery network ,即:内容分发网络。 CDN 是一个地理上分散的服务器网络,主要用于提供静态内容。如:图片、视频、CSS、JavaSc

架构设计(五):有状态服务和无状态服务

架构设计(五):有状态服务和无状态服务 作者:Grey 原文地址: 博客园:架构设计(五):有状态服务和无状态服务 CSDN:架构设计(五):有状态服务和无状态服务 无状态的服务 在横向扩展服务的过程中,将状态(例如用户会话数据)从服务中移出并将会话数据存储在持久性存储介质中,如关系型数据库或 No

架构设计(六):引入消息队列

架构设计(六):引入消息队列 作者:Grey 原文地址: 博客园:架构设计(六):引入消息队列 CSDN:架构设计(六):引入消息队列 消息队列是一个支持持久化的组件,数据存储在内存中,支持异步通信。它作为一个缓冲器,分配异步请求。消息队列的基本架构很简单,包含两个部分 第一部分:输入服务,称为生产

架构设计(八):数据库的水平扩展和垂直扩展

架构设计(八):数据库的水平扩展和垂直扩展 作者:Grey 原文地址: 博客园:架构设计(八):数据库的水平扩展和垂直扩展 CSDN:架构设计(八):数据库的水平扩展和垂直扩展 数据库的扩展有两种方法:垂直扩展和水平扩展。 垂直扩展是通过提高现有机器的硬件配置(CPU、硬盘、内存等)来进行扩展。比如