看到结束信号时结束会话 window

End session window on seeing an end signal

我正在探索 Kafka Streams 的会话化用例,并且想了解是否有一种方法可以在不活动间隙之前结束会话 window 如果它更早地看到结束信号? 感谢任何帮助。

I'm exploring Kafka Streams for a sessionization use case and wanted to understand if there is a way to end a session window earlier than the inactivity gap if it sees an end signal earlier ?

不,开箱即用是不可能的。 KStreams 中的会话 window 实现使用不活动作为唯一参数来确定 window(会话)是否应该关闭。

如果您需要不同的行为,您可以使用 Kafka Streams 的处理器 API。例如,我看到开发人员基于有限状态机实现自定义 'sessions'。例如,可以通过这种方式从原始网络数据重建 TCP/IP 会话。