我有一个有状态的应用程序,用于维护与用户的会话。此应用程序有5个实例。
以下是主题:
所有主题都有5个分区。
topic1
topic2
topic3
Topic1和topic2分别用于构建状态存储和全局ktable。这两个主题都使用用户名作为消息键。这些主题中的数据由应用程序实例本身生成。
现在,另一个应用程序使用与消息密钥相同的用户名将数据发送到topic3。
我的期望是它将转到与该用户在其本地状态存储区中的实例使用的分区相同的分区。是这样吗?
对于每条消息,也应由具有此用户会话的其他实例处理。如果该实例找到其他实例侦听的分区并将消息转发到其他分区,那么设计是否正确?
是可扩展的设计,还是最好将所有消息广播到所有分区(差异使用者组),并由实例决定是否进行处理
答案 0 :(得分:0)
我不确定您是否真的需要将数据发送到多个分区...
因此,您剩下两个(常规)输入主题。