flume-ng + rocketmq + storm + redis + 前端展示
消息队列部分,我们刚开始采用的是kafka,但 kafka在支持回溯消费和重复消费方面比较弱,同时在数据安全方面也相对弱一些,后来我们改为阿里的rocketmq。
考 虑到我们的数据量也不是很大,已经能够足够支撑,但在rocketmq这层,有时会因为网络异常问题,会产生消息堆积,导致消息队列被冲爆,稳定性还不是 非常高,后来咨询了其他部门的同事,他们的做法是,在消息队列这一层次,额外增加了一层mongodb,消息队列这层仅保留消息的索引信息,消息的实体信 息保存在mongodb中,可以很好地回避此问题,后来由于各种原因就没有再去尝试此方法......
其他一些常用方案:
logstash + elasticsearch + kibana
fluentd + influxdb + grafana
flume-ng + kafka + storm
kafka + spark streaming + redis