分布式系统如何定位压力问题

2017-12-19  本文已影响274人  大宽宽

监控

简单来说,分布式系统需要实现一个基本的监控工具。最简单的办法是在每个节点上部署一个agent,定时上报该机器的信息。这一块鱼龙混杂。开源的实施起来就比较复杂了。这一块主要分四层:

也有很多All-in-one的收费方案,比如New Relic,听云等。

不同监控的侧重点不同,有的主打通用,于是可以对接一堆其他工具。有的则主打特定领域,比如Java自带的JMC可以监控JVM的GC,线程等情况;Percona Monitoring Plugins可以监控MySql的内部情况等。可以根据需要具体选择。有些云服务提供商也会提供一些最基本的监控,比如阿里云的相关工具。

监控什么呢

当搭建一个集群,要监测三大类数据

这是一个浩大的工程。不可能一蹴而就,也不可能一套工具就全搞定。必须结合Infra和业务开发工程师的共同努力才能构建出来。如果预算不是那么紧,建议采购一两套收费的方案来减少这方面的开发资源消耗。毕竟做公司的主要精力是业务本身,而不是开发完备的基础设施。当公司体量大到一定程度,自然就会建立专门的团队来做这些。

构建监控体系时注意 报警不能淹没使用者的接收。铺天盖地的报警只会让人把报警直接关了。所以设计时要考虑报警的频率,级别,ACK等机制。而且可能会反复调整。尽量把“关键问题的报警”提供出来。

实际的压力问题怎么发生的

压力问题主要发生在两个时刻

我用的工具

工具太多了,我们粗选了几个就用了,不一定是最好的,但至少目前还是可以解决问题的

上一篇 下一篇

猜你喜欢

热点阅读