微服务专栏地址

  专栏:微服务 <https://blog.csdn.net/column/details/25643.html>
  微服务系列总目录 <https://mp.csdn.net/postedit/81359110>

目录



* 微服务专栏地址
<https://blog.csdn.net/chenghuaying/article/details/81334845#微服务专栏地址>
* 目录 <https://blog.csdn.net/chenghuaying/article/details/81334845#目录>
* 1. 简介 <https://blog.csdn.net/chenghuaying/article/details/81334845#1-简介>
* 2. 为什么需要监控体系
<https://blog.csdn.net/chenghuaying/article/details/81334845#2-为什么需要监控体系>
* 3. 与单体应用有什么区别
<https://blog.csdn.net/chenghuaying/article/details/81334845#3-与单体应用有什么区别>
* 4. 要监控什么
<https://blog.csdn.net/chenghuaying/article/details/81334845#4-要监控什么>
* 5. 监控体系和分层
<https://blog.csdn.net/chenghuaying/article/details/81334845#5-监控体系和分层>
* 6. 监控架构和主流技术栈
<https://blog.csdn.net/chenghuaying/article/details/81334845#6-监控架构和主流技术栈>


1. 简介

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

2. 为什么需要监控体系

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

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

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

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

4. 要监控什么

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

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



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

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



架构理解

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

* kafka <http://kafka.apache.org/>:基于发布订阅模式的分布式消息队列,将信息的搜集与处理解耦
* sensu <https://blog.csdn.net/enweitech/article/details/53763324>:由 Sonian
公司开发的一种监控框架,主要用于拥有大规模节点的云计算平台的检查与监控。可与时序数据库以及Grafana结合实现基础设施、系统监控从数据收集到图形化展示
* ELK(Elasticsearch <https://www.elastic.co/> + Kibana
<https://www.elastic.co/guide/en/kibana/index.html> + Logstash
<https://www.elastic.co/guide/en/logstash/current/getting-started-with-logstash.html>


* ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。
* Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看、交互存放在
* Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据、转换数据,然后将数据发送到您最喜欢的 “存储库” 中。
Elasticsearch索引里的数据,使用各种不同的图表、表格、地图等kibana能够很轻易地展示高级数据分析与可视化。
* InfluxDB <https://www.influxdata.com/>:是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及执行分析。
* Grafana <https://grafana.com/>
:是用于可视化大型测量数据的开源程序,他提供了强大和优雅的方式去创建、共享、浏览数据。dashboard中显示了你不同metric数据源中的数据。一般与时序数据库(InfluxDB)结合使用

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信