【发布时间】:2016-04-28 07:15:57
【问题描述】:
我是 akka 演员的新手。我已经阅读了 akka 官方文档,但仍然不明白 actor 与线程模型相比是如何工作的。
让我们举一个这样的简单例子。我有一个传统的 HttpServer,它在线程池中有 10 个线程。当有 20 个请求同时到来时,HttpServer 将委托线程池中的所有 10 个线程来处理前 10 个请求,其余的将在网络接口中排队等待线程接起。
基于 actor 的 HttpServer 将如何应对同样的问题?是否所有请求都在委托的参与者面前排队,以按顺序处理它们并将消息发送给其他参与者?如果是这样,这就是我不明白actor如何提供比线程模型更好的性能的一点,因为只有1个actor按顺序处理20个请求不能比10个线程同时处理20个请求快。
我想了解的是,当多个请求同时聚集在一起时,演员如何反应? ,而不是actor如何处理和排队邮箱中的消息,它已经在文档中出现了很多。有人可以模拟此示例中演员的工作步骤吗?
【问题讨论】:
标签: multithreading akka actor