在微服务大行其道的今天,在任何互联网公司,其项目中的服务都动辄几十上百,多则成千上万也是很常见的,比如,像阿里,京东这种国民级的应用,任何一个项目的服务数量都是我们难以想象的,即使为了便于管理和降低服务之间的耦合,将各种服务拆分之后,服务的量级,更是一般中小公司难比得上的。
那么问题就来了,那么多的服务万一有一天,哪个二货程序员手一抖,把哪个服务给关掉了,这可就麻烦大了,如果是有降级、容错或者集群的情况下,还好有应对方案,如果没有的话,那就可就等着卷铺盖走人吧,要知道,想阿里这种体量的公司,每秒的交易额不止千万级别啊,想想这可是要损失多少啊,当然阿里这种体量的公司也一般不会出现这种情况,即使哪一天真的发生了黑天鹅事件,阿里的技术大佬们也能及时收到告警发现问题,及时处理。
偷偷告诉大家一个小秘密,在一些大的公司,很多技术人员的手机其实都是24h待机的,就是为了出现任何问题,都能及时收到报警,及时处理。
其实说了这么多,只有一个目的是要保证我们的服务可用,系统安全可靠,所以这就需要我们有个好的监控工具,可以监控我们的服务的状态,是不是正常,有没有挂掉。
监控服务端
今天我们就来学习一个SpringBoot自带的可以监控服务状态的工具,并且可视化做的非常简洁,它就是我们今天的主角SpringBoot Admin,既然主角登场了,我们就让它先来做个自我介绍吧!
SpringBoot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序。应用程序作为SpringBoot Admin Client向为SpringBoot Admin Server注册(通过HTTP)或使用SpringCloud注册中心(例如Eureka,Consul)发现。