另有另一片作为producer生产者的文章:
传送门:http://blog.csdn.net/xiedong9857/article/details/55506910
之前几个月由于公司业务需求,搭建了几个nodejs的服务,对kafka的实时数据进行处理,同时根据一定规则延缓入库或者写入redis,以此减小DB或者是redis的压力。
使用node来做有几个好处,在于node的异步编程容易实现高并发处理,但是单进程的node也决定了其cpu使用率不高,无法承载太大的集中运算量。另外如果上层架设负载均衡,也容易出现内存不共享的问题,但是在某些业务场景,例如流水实时统计等方面,node对于kafka数据的处理还是相对合适的。
话不多说,这里贴代码:
/** * Created by LongMao on 2016/11/9. */ 'use strict'; var ServiceRouter = require('../service-router/serviceRouter.js'); var toKafka = function () { var kafka = require('kafka-node'); var Consumer = kafka.Consumer; //var client = new kafka.Client('10.251.5.166:12181,10.171.27.37:12181,10.170.177.146:12181'); var client = new kafka.