对微服务监控系统分层和监控架构的理解

目录

  • 微服务专栏地址
  • 目录
  • 1. 简介
  • 2. 为什么需要监控体系
  • 3. 与单体应用有什么区别
  • 4. 要监控什么
  • 5. 监控体系和分层
  • 6. 监控架构和主流技术栈

1. 简介

监控的重要性不言而喻, 微服务架构的特点决定了其监控实现更具有挑战性与难度,从以下方面理解微服务的监控相关(非特别指明的监控都是指的微服务架构体系下的监控): 
1. 简介 
2. 为什么需要监控体系 
3. 与单体应用有什么区别 
4. 要监控什么 
5. 监控体系和分层 
6. 监控架构和主流技术栈

2. 为什么需要监控体系

以问题的形式来理解为什么需要监控体系,也是我们需要监控体系的理由

  • 分散在各个服务器上的日志如何处理
  • 业务流程出现问题,如何快速的定位问题发生在哪个环节、哪个点
  • 如何跟踪业务流的处理顺序和处理结果
  • 如何实现事故的预警,如资源不足
  • 如何分析系统的性能瓶颈

3. 与单体应用有什么区别

  • 单体应用环境下,所有的业务都在同一个服务器上,如果出现错误和异常,只需要聚焦于服务器这一点,往往就可以快速定位和解决问题

  • 微服务架构下,大部分功能模块都是单独部署、独立运行的,彼此通过接口交互,都是无状态的服务,业务流会涉及多个服务,复杂度会高很多

4. 要监控什么

  • 服务概览信息:如服务名称、服务部署所在机房、主机、服务包含的API、服务相关配置信息、服务负责人、开发人员、运维人员信息等
  • 服务性能指标:如响应实现、流量、成功、失败数、请求频率等
  • 服务拓扑关系:服务之间的调用关系
  • 服务调用链:服务的整个调用链监控
  • 服务版本信息:服务版本,客户端版本等
  • 服务治理状态:服务注册情况、服务状态、熔断等
  • 组件内部状态:活跃线程数、处理请求数等

5. 监控体系和分层

从底到上分为:基础设施监控、系统层监控、应用层监控、业务层监控、端用户体验监控

6. 监控架构和主流技术栈

暂时没有具体的实践和使用,先做理解

架构理解

  • 对主机的监控包括基础设施层监控、系统层监控
  • 对微服务监控包括应用层监控、业务监控,以及部分端用户体验监控
  • 端用户体验监控需要埋点方式搜集信息补充完善

技术栈理解

  • kafka:基于发布订阅模式的分布式消息队列,将信息的搜集与处理解耦
  • sensu:由 Sonian 公司开发的一种监控框架,主要用于拥有大规模节点的云计算平台的检查与监控。可与时序数据库以及Grafana结合实现基础设施、系统监控从数据收集到图形化展示
  • ELK(Elasticsearch + Kibana + Logstash) 
    • ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。
    • Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看、交互存放在
    • Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据、转换数据,然后将数据发送到您最喜欢的 “存储库” 中。 
      Elasticsearch索引里的数据,使用各种不同的图表、表格、地图等kibana能够很轻易地展示高级数据分析与可视化。
  • InfluxDB:是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及执行分析。
  • Grafana:是用于可视化大型测量数据的开源程序,他提供了强大和优雅的方式去创建、共享、浏览数据。dashboard中显示了你不同metric数据源中的数据。一般与时序数据库(InfluxDB)结合使用

对微服务监控系统分层和监控架构的理解相关推荐

  1. 微服务追踪系统,你绝对想不到!

    前言 在微服务架构中,一次请求往往涉及到多个模块,多个中间件,多台机器的相互协作才能完成.这一系列调用请求中,有些是串行的,有些是并行的,那么如何确定这个请求背后调用了哪些服务,哪些模块,哪些节点及调 ...

  2. CDN监控系统(三 业务架构)

    监控系统(业务监控数据流和架构) 需求 本次从业务监控出发,监控系统 配置平台化,假设实现以下简单配置需求: 告警类型 告警条件 告警阈值 流量峰值 >= t1 5xx 状态码占比 >= ...

  3. 部署Zabbix监控平台,配置及使用Zabbix监控系统,自定义Zabbix监控项目

    案例1:常用系统监控命令 案例2:部署Zabbix监控平台 案例3:配置及使用Zabbix监控系统 案例4:自定义Zabbix监控项目 1 案例1:常用系统监控命令 1.1 问题 本案例要求熟悉查看L ...

  4. 打造自己的树莓派监控系统2--内存监控-matplotlib显示数据

    系列文章: 文章1:打造自己的树莓派监控系统1–CPU监控-matplotlib显示数据 文章2:打造自己的树莓派监控系统2–内存监控-matplotlib显示数据 文章3:打造自己的树莓派监控系统3 ...

  5. springcloud 整合 gateway_GitHub上最火的SpringCloud微服务商城系统项目,附全套教程

    项目介绍 mall-swarm是一套微服务商城系统,采用了 Spring Cloud Greenwich.Spring Boot 2.MyBatis.Docker.Elasticsearch等核心技术 ...

  6. .NET Core微服务 权限系统+工作流(二)工作流系统

    一.前言 接上一篇 .NET Core微服务 权限系统+工作流(一)权限系统 ,再来一发 工作流,我在接触这块开发的时候一直好奇它的实现方式,翻看各种工作流引擎代码,探究其实现方式,个人总结出来一个核 ...

  7. mall-swarm是一套微服务商城系统

    介绍: mall-swarm是一套微服务商城系统,采用了 Spring Cloud Hoxton & Alibaba.Spring Boot 2.3.Oauth2.MyBatis.Elasti ...

  8. 获取网关_阿里二面问了这道题:如何设计一个微服务网关系统

    有一天隔壁组的小王灰头土脸的跑过来,问我说:"李哥,你会设计微服务网关系统吗?".我一愣,小王怎么突然问这么抽象的问题,关键是我们最近也没有这样的需求.吃午饭的时候,在我旁敲侧击的 ...

  9. mall-swarm微服务商城系统

    mall-swarm是一套微服务商城系统,采用了 Spring Cloud 2021 & Alibaba.Spring Boot 2.7.Oauth2.MyBatis.Docker.Elast ...

最新文章

  1. ES6 你可能不知道的事 – 基础篇
  2. 什么插件格式化文档_推荐15款IntelliJ IDEA 神级插件
  3. Redis作者摊上事了:多人要求修改Redis主从复制术语master/slave
  4. 【转】URL编码(encodeURIComponent和decodeURIComponent)
  5. 使用Spring boot,Thymeleaf,AngularJS从零开始构建新的Web应用程序-第2部分
  6. android+完美的列表,android完美讲义.pdf
  7. php判断字符串中是否包含某字符串
  8. Hamcrest匹配器常用方法总结
  9. moocpython123输入若干数、每行输入一个数值作业_MOOC嵩天@python123作业
  10. (转)游戏程序员养成计划 (更新2010.11.6)
  11. 安卓学习笔记40:基于套接字网络编程
  12. nginx上传目录配置,禁止执行权限
  13. iOS各个版本的新特性介绍
  14. BinaryWrite方法输出验证码
  15. WinCE学习系列(1)——在VS2008的环境下安装WinCE 5.0仿真模拟器
  16. 服务器运维文章大合集
  17. 《七周七并发模型》作者Paul Butcher、阿里云研究员余锋(褚霸)——QCon北京2016前瞻...
  18. ECshop增加paypal_EC流程
  19. Google Earth Engine(GEE)——使用Combining reducers计算均值和标准差
  20. Pssp-mvirt: 基于多视图深度学习架构的肽二级结构预测

热门文章

  1. php判断值是否为空然后定义,判断php变量是不是定义,是否为空
  2. 【K210】【MaixPy】三、Maix Dock入门之LCD的使用(播放BadApple)
  3. STM32f407与STM32F103 串口采用DMA收发数据配置方法的异同
  4. CAN 总线嵌入式驱动编程
  5. 大图社区搜索的调查综述(二)——预备知识
  6. mysql工程连接互通,MySQL容器与各种应用容器的互联互通
  7. JavaScript重难点解析2(立即执行函数IIFE,this关键字)
  8. c++已知2点求中垂线_电力系统负荷预测-基本方法以及分析(2)
  9. 内存溢出和内存泄漏的区别,产生原因以及解决方案
  10. golang字节数组拷贝BlockCopy函数实现