Open iori2333 opened 1 month ago
Just changing the message size limit is possible by configuring the Remote layer.
func WithDialOptions(options ...grpc.DialOption) ConfigOption {
return func(config *Config) {
config.DialOptions = options
}
}
// WithServerOptions sets the server options for the remote
func WithServerOptions(options ...grpc.ServerOption) ConfigOption {
return func(config *Config) {
config.ServerOptions = options
}
}
Adding streaming support to messages is problematic as we are at the mercy of gRPC itself here. to make this work we would first have to get the size of the message and then write it in chunks. This would likely severely impact overall performance.
but if someone want to give this a try, I´m flagging this as up for grabs
Describe the bug When communicating with remote actors, messages are sent via grpc, which has limited single message extent to 4MB (4194304 bytes). Therefore, when messages are larger than 4MB (a hi-res image for instance), Proto Actor will fail sending them.
Here's outputs:
To Reproduce
system.Root.Send(server, &proto.A{ Data: generateBytes(1024 1024 10), // a very large message })