实时监控系统设计

  随着系统业务复杂度的提升,系统复杂度提升,需要对整个系统的功能、性能、可用性,以及服务、

web、webservice、网页等等多个角度进行监控。

      1、监控设计为两个部分一部分为监控客户端部分,应用调用jar包或其他形式实现对单机节点的监控、

通过上报汇总的形式实现对大规模集群实现,非实时监控一般晚于1到5分钟的状况可以监控到。业务监控

采用每个服务器配置监控客户端,客户端负责写日志,并且定时将日志汇总日志中心,日志中心进行展示

,日志展示会存在一定延时。

       监控客户端可以实现为jar包,供需监控系统调用,实时写日志到文件系统比如每分钟生成一个日志

文件,监控jar包每个几十秒启动一次,扫描非当前系统正在写的日志文件(重写log4j类来实现)避免

同时读写一个文件产生异常情况,按行读取异步通过消息队列或发送实时收集接口到日志中心,删除处理

完成日志。

      监控为实现数据不丢失用于实时计算和离线计算,可以通过nginx代理形式,实现上边写文件形式来

保证一份数据是稳定的非常全的数据。

     2、某个用户调用路径监控可根据调用参数增加debug=true,关键方法均将返回值增加到返回值得

hashmap中,这个问题需要避免被外界恶意调用,恶意调用会将整个路径暴露,可以对debug调用ip或

其他可验证身份的东西做相应限制。

     3、实时监控系统,大众点评开源cat系统。

     4、数据传输如特别在意时效性,可将传输协议用udp,同事阿力提出的想法,很赞。

 

       未完待续...

posted @   杉枫  阅读(355)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示