Elixir GenServer并行handle_call

时间:2017-08-05 21:20:31

标签: elixir gen-server

Phoenix Framework上有一个应用程序。

需要GenServer,它会检查一些值。

从控制器开始验证这些值(来自客户端的请求,GenServer值检查,客户端收到响应)。

一旦handle_call同步,那么当10个客户端一次调用10个调用handle_call时会发生什么?所有10个呼叫将并行处理或按队列顺序处理?

1 个答案:

答案 0 :(得分:1)

GenServer将只处理单个呼叫,其他消息将在邮箱中排队。你可以允许这个,如果需要同步进程,但你必须考虑邮箱,它可能很快堆积在较重的负载上并杀死VM可能没有任何警告。

您是否考虑过使用Task?