项目总结-2016年07月11日

线上服务健康状况监控与统计

统计与监控,个人感觉主要是离线与在线的区别。统计强调的是定时或者定量的离线数据分析,产生各项报表,用于对后续程序的优化及重构做决策。监控则对线上程序的实时状态做出反馈,需要在很短的时间间隔内对程序健康状况生成可视化的结果。一般来说,能满足监控需求的组件,也可满足统计的需求。

针对进程的监控,市面上已经有许多解决方案了。如可以通过zabbix监控PHP实例,通过JMX端口 + jConsole或者visual VM远程监控JVM实例。

对于web服务,利用nginx + zabbix(本身可监控服务器各项指标,如cpu、IO、网络等),可实现单个接口粒度的执行情况统计,如次数、平均响应时间、总响应时间等等。

对于RPC服务的程序,同样可以利用入口的负载均衡LB实现监控