监控系统工具对比

测试一

flume

端口监控时 java cpu 负载 在10%~13%左右

"/img/flume1.png"

logstash

端口监控时 java cpu 负载 在8%~10%左右

"/img/logstash1.png"

1
相比较而言,在cpu负载方面,logstash更佳。

测试二

flume

请求shenzhenlong.newvip.youku.com页面,nginx生成的access.log 的log日志,请求10000次,耗费时间为1768.1288728714s,平均每请求一次耗时 0.1768s

"/img/flume10000.png"

logstash

请求shenzhenlong.newvip.youku.com页面,nginx生成的access.log 的log日志,请求10000次,耗费时间为1637.932365179s,平均每请求一次耗时 0.1637s

"/img/flume10000.png"

1
相比较而言,在请求延时方面,logstash更佳。

测试三

flume

利用rpc方式 直接写入flume ,请求10000次,发送时间为8.922s

发送时间:8.922s

"/img/flume_rpc.png"

收集时间:55.007 - 45.471 = 9.536s

"/img/flume_rpc1.png"

1
rpc方式直接写入flume 效率是 9.536 - 8.922 = 0.614s 说明响应时间为 每收集到10000条数据,发送到flume的agent 用时为0.614s

flume

利用写log方式 直接写入硬盘,然后flume收集 ,请求10000次,发送时间为1.006s

发送时间:1.006s

"/img/flume10001.png"

收集时间:57.172 - 53.001 = 4.171s

"/img/flume10002.png"

1
利用写log方式 然后flume收集 效率是 4.171 - 1.006 = 3.165s 说明响应时间为 每收集到10000条数据,flume的agent 收集到数据 用时为 3.165s

总结:

  1. 两种不同的log收集机制,利用rpc 直接调用写入flume的agent 延时小,效率高,每10000次日志生成,能比直接写入硬盘log 效率快5~6s 时间。
  2. 目前php调用实现rpc的方式需要进一步实现,暂时用java语言测试三,查看效率。
  3. 建议采用rpc方式直接写入agent方式,做demo出来,与现有logstash的收集方式做性能,负载,效率 等对比。

1.如果本文帮到了您,不妨点一下右下角的 分享到 按钮。
2.除非注明,本博文章均为原创,转载请以链接形式标明本文地址。
3.本博文章只代表博主当时的观点或结论,与博主公司没有任何关系。