在上家公司工做时,设计的日志收集与实时分析架构,仍是比较简单的:前端
flume-ng + rocketmq + storm + redis + 前端展现redis
消息队列部分,咱们刚开始采用的是kafka,但 kafka在支持回溯消费和重复消费方面比较弱,同时在数据安全方面也相对弱一些,后来咱们改成阿里的rocketmq。mongodb
考虑到咱们的数据量也不是很大,已经可以足够支撑,但在rocketmq这层,有时会由于网络异常问题,会产生消息堆积,致使消息队列被冲爆,稳定性还不是很是高,后来咨询了其余部门的同事,他们的作法是,在消息队列这一层次,额外增长了一层mongodb,消息队列这层仅保留消息的索引信息,消息的实体信息保存在mongodb中,能够很好地回避此问题,后来因为各类缘由就没有再去尝试此方法......安全
其余一些经常使用方案:网络
logstash + elasticsearch + kibana架构
fluentd + influxdb + grafanaelasticsearch
flume-ng + kafka + stormide
kafka + spark streaming + redisspa