使用 akka 流或 akka actors 进行动态管道创建
Use akka streams or akka actors for dynamic pipeline creation
我必须实施一个进程,该进程从队列中轮询消息并将数据转发到 http 端点。通常我认为最好的方法是使用 Akka 流(使用 akka http),因为它可以为你处理背压等。问题是我必须在运行时(基于 http 调用)使用不同的配置按需创建多个这些管道。另一个要求是应该可以在运行时动态停止其中一个管道并使用另一个配置启动它。
我目前不确定是否真的有可能在运行时动态启动新的并行 akka 流管道(并删除并重新启动其中一些)。对我来说,目前使用 akka actor 听起来更好(基于队列消费者 actor 和 akka http actor,我可以在运行时动态创建一对),但要使用它们,我还必须手动实现背压等。
您认为可以通过 akka 流创建它吗?还是会很麻烦?
提前致谢!
一旦流媒体化和 运行ning,您就无法重新路由流。但是由于您以编程方式配置流,因此动态定义新流和 运行 它们非常方便。一切都取决于特定的用例,但我会选择接收队列消息并将它们分派到给定流的单个协调器参与者。同一个协调器会收到配置更改请求,因此它会配置新流、删除旧流等。
不要去手动连接演员。很难遵循和维护。
我必须实施一个进程,该进程从队列中轮询消息并将数据转发到 http 端点。通常我认为最好的方法是使用 Akka 流(使用 akka http),因为它可以为你处理背压等。问题是我必须在运行时(基于 http 调用)使用不同的配置按需创建多个这些管道。另一个要求是应该可以在运行时动态停止其中一个管道并使用另一个配置启动它。
我目前不确定是否真的有可能在运行时动态启动新的并行 akka 流管道(并删除并重新启动其中一些)。对我来说,目前使用 akka actor 听起来更好(基于队列消费者 actor 和 akka http actor,我可以在运行时动态创建一对),但要使用它们,我还必须手动实现背压等。
您认为可以通过 akka 流创建它吗?还是会很麻烦?
提前致谢!
一旦流媒体化和 运行ning,您就无法重新路由流。但是由于您以编程方式配置流,因此动态定义新流和 运行 它们非常方便。一切都取决于特定的用例,但我会选择接收队列消息并将它们分派到给定流的单个协调器参与者。同一个协调器会收到配置更改请求,因此它会配置新流、删除旧流等。
不要去手动连接演员。很难遵循和维护。