玩Async Vs Akka演员

时间:2017-01-12 17:59:10

标签: scala asynchronous playframework akka actor

我是Play框架和Akka Toolkit的新手。

我们正在尝试使用Play在Web客户端和微服务之间构建业务流程层。
因此,基本上对于来自客户端的每个请求,Play必须执行WS调用并返回JSON(以及缓存它)。

现在,在进行WS调用时,我们可以使用Play Async API或使用Akka actor。 这些选项中的一个无论如何都超过了另一个吗?

与直接使用Play Async API相比,是否有人建议何时可以尝试使用Akka演员和Play?

1 个答案:

答案 0 :(得分:0)

在Akka中,作为演员的主要概念,它是一个具有记忆以保持状态的对象。对该状态的顺序操作由系统序列化,不能干扰。在Java8承诺/期货中,主要概念是异步方法调用,如果不同的方法属于同一个对象,则提供串行访问是用户的责任 - 这不容易且容易出错。 然后,使用future意味着为每个单独的操作创建Future对象,如果操作是细粒度的,则可以将其视为开销。 另一方面,CompletableFuture可以将多个事件组合成一个像allOf()这样的事件,在Akka中没有直接的类比。