【发布时间】:2016-07-03 06:08:34
【问题描述】:
我正在尝试了解如何使用 akka 进行建模。
我的系统为用户处理消息,并且必须为每个用户串行处理消息,即我不能让 2 个以上的参与者同时为同一个用户处理消息。
因此,如果我收到 100 条消息,并且它们都针对不同的用户,我可以根据需要生成尽可能多的演员来处理它们。
但如果我收到 100 条消息并且它们只针对 10 个用户,我必须确保只有 1 个参与者同时处理给定用户。
我如何在 Akka 中对此进行建模?我如何过滤消息或管理每个用户只有 1 个演员?
注意:每条消息都会有一个 UserId。
【问题讨论】:
-
假设用户 ID 在整个应用程序中是唯一的,为什么不使用用户 ID 命名参与者?这样,您可以搜索演员,如果不存在,则创建一个,并将消息发送给该特定演员。