小第最近公司要求用ibm streams来做流式数据的处理(不知道为什么的,老板开心就好),下面就把我用streams的一些经历写写吧
我是用spl + java混合编写的 据说下现在的版本4.1是可以用纯java写的 我们用的是4.0所以还是用了spl + java ,首先我spl入口
stream<rstring message> KafkaStream = KafkaConsumer()
参数是topic 和propertiesFile等一些参数
然后建立一个java operator KafkaConsumer 这个类实现了StateHandler这个接口
参数在java中通过@Parameter来接受的
重写allPortsReady的方法,在这个方法类掉用 kafka获取数据什么的一些东西的
然后把kafka的返回数据放到OutputTuple 中submit,这样数据就可以在返回到spl中。
下面是redis的操作了,本来打算用streams的dps的,可是因为各种各种原因了,自己用java写的redis的function,虽然效果不是太好,但是勉强可以了。 @parallel(width=20)
20个并行线程处理的话处理是3万没秒左右吧,其实压力重要在redis端。