"max allowed size 128000 bytes" 当有很多 publisher/subscribers 时达到
"max allowed size 128000 bytes" reached when there are a lot of publisher/subscribers
我在 Akka.net 集群中使用分布式 pub/sub,当 pub/sub 增长到大约1000 个订阅者和 3000 个发布者。
max allowed size 128000 bytes, actual size of encoded Akka.Cluster.Tools.PublishSubscribe.Internal.Delta was 325691 bytes
我不知道,但我猜分布式 pub/sub 正试图将 pub/sub 列表传递给集群上的其他参与者系统?
无论如何,由于 this post,我对提高大小限制有点犹豫。那么纠正这个问题的合理方法是什么?
您可能想使用分布式 pub/sub HOCON 设置来解决问题。 Akka.Cluster.DistributePubSub 中的消息被组合在一起并作为增量发送。您可能对两个设置感兴趣:
akka.cluster.pub-sub.max-delta-elements = 3000
表示增量消息最多可以包含多少个项目。 3000 是默认值,您可能希望降低它以减小增量消息的大小(这在您的情况下似乎是个问题)。
akka.cluster.pub-sub.gossip-interval = 1s
间接影响八卦的发送频率。它们发送的频率越高,它们可能越小 - 假设通道持续高度饱和。
如果这些方法没有帮助,您还可以考虑引入 custom serializers 有效载荷占用空间较小的方法来减小自定义消息的大小。
我在 Akka.net 集群中使用分布式 pub/sub,当 pub/sub 增长到大约1000 个订阅者和 3000 个发布者。
max allowed size 128000 bytes, actual size of encoded Akka.Cluster.Tools.PublishSubscribe.Internal.Delta was 325691 bytes
我不知道,但我猜分布式 pub/sub 正试图将 pub/sub 列表传递给集群上的其他参与者系统?
无论如何,由于 this post,我对提高大小限制有点犹豫。那么纠正这个问题的合理方法是什么?
您可能想使用分布式 pub/sub HOCON 设置来解决问题。 Akka.Cluster.DistributePubSub 中的消息被组合在一起并作为增量发送。您可能对两个设置感兴趣:
akka.cluster.pub-sub.max-delta-elements = 3000
表示增量消息最多可以包含多少个项目。 3000 是默认值,您可能希望降低它以减小增量消息的大小(这在您的情况下似乎是个问题)。akka.cluster.pub-sub.gossip-interval = 1s
间接影响八卦的发送频率。它们发送的频率越高,它们可能越小 - 假设通道持续高度饱和。
如果这些方法没有帮助,您还可以考虑引入 custom serializers 有效载荷占用空间较小的方法来减小自定义消息的大小。