1

我正在使用 Akka 集群(服务器)并每 5 秒使用 Akka TCP 与客户端交换 HeartBeat 消息。

HeartBeat 工作正常,直到我不使用调度程序。但是当我启动 4-5 个调度程序时,服务器没有从客户端(tcp 连接)接收到心跳缓冲区消息。调度程序处理后,我同时收到 4-5 条心跳消息。

Akka 调度程序正在阻止 Actor 的其他处理(缓冲区读取等)。

我已经在下面尝试过,但仍然面临同样的问题。

  1. 不同的 2 调度程序
  2. 创建了新的演员并在单独的演员中添加了调度程序调用。
  3. 使用8核机
  4. 试过fork-join-executorthread-pool-executor
  5. 已经尝试更改Tcp-SO-ReceivedBufferSizeTcp-SO-SendBufferSize1024 或 2048,但没有成功。
  6. 已经尝试过Tcp-SO-TcpNoDelay

请帮忙。

4

0 回答 0