"max allowed size 128000 bytes, actual size of encoded class scala" error in akka remoting
Asked Answered
B

1

11

I want to use Akka Remoting to exchange message over network between actors, but for large String message i got the following error:

akka.remote.OversizedPayloadException: Discarding oversized payload 
sent to Actor :: max allowed size 128000 bytes
, actual size of encoded class scala.

How can i fix this limitation?

Beesley answered 18/4, 2016 at 4:9 Comment(0)
B
18

I add the following configuration and now everything is ok:

akka {

  actor {
    provider = "akka.remote.RemoteActorRefProvider"
  }

  remote {
    maximum-payload-bytes = 30000000 bytes
    netty.tcp {
      hostname = "127.0.0.1"
      port = 2552
      message-frame-size =  30000000b
      send-buffer-size =  30000000b
      receive-buffer-size =  30000000b
      maximum-frame-size = 30000000b
    }
  }
}
Beesley answered 18/4, 2016 at 4:11 Comment(2)
just be careful increasing this limit too high. your sockets could get blocked and your heartbeats might fail.Tops
With Artery this setting is now akka.remote.artery.advanced.maximum-frame-sizeFlowering

© 2022 - 2024 — McMap. All rights reserved.