*作者:倪泽,RocketMQ 资深贡献者, RocketMQ-Streams 维护者之一,阿里云技术专家。 * RocketMQ-Streams 是一款轻量级流处理引擎,应用以SDK 的形式嵌入并启动,即可进行流处理计算,不依赖于其他组件,最低1核1G可部署,在资源敏感场景具有很大优势。同时它支持 UTF/UTAF/UTDF 多种计算类型。目前已经广泛运用于安全,风控,边缘计算等场景。
本期将带领大家从源码的角度,解析RocketMQ-Streams的构建,数据流转过程。也会讨论RocketMQ-Streams是如何实现故障恢复和扩缩容的。
使用示例
代码示例:
public class RocketMQWindowExample {
public static void main(String[] args) {
DataStreamSource source = StreamBuilder.dataStream("namespace", "pipeline");
source.fromRocketmq(
"topicName",
"groupName",
false,
"namesrvAddr")
.map(message -> JSONObject.parseObject((String) message))
.window(TumblingWindow.of(Time.seconds(10)))
.groupBy("groupByKey")