Kafka Streams:如何在过滤器中处理动态条件?

时间:2019-04-24 07:09:04

标签: java filter apache-kafka stream

有什么方法可以处理kafka流中的动态条件? 我需要通过用户更改的值列表来筛选流数据,但是此值列表不在流中,可以通过http调用使用。

stream(myTopic)
    .filter(isDataOK())
    ...

private Predicate<> isDataOK() {
     http_call;
     return predicate_value_based_on_http_answer;
}

在kafka流处理期间是否可以处理http调用,或者我是否需要其他流中的条件数据?

预先感谢, 问候

1 个答案:

答案 0 :(得分:1)

我对动态流配置有类似的要求。对每个消息处理都调用http并不是一个好主意,因为它很耗时。最好将值缓存在处理组件中并定期进行更新,例如每小时一次。您还应该考虑http呼叫不可用的情况。

在另一个项目中,我从另一个Kafka主题异步接收动态配置,这对于流处理而言效果更好,更自然。