From 0506857f0d74d3145d9ec0105d2d904a02a8c5c6 Mon Sep 17 00:00:00 2001 From: Christian <6939810+chkr1011@users.noreply.github.com> Date: Sat, 26 Oct 2024 11:41:25 +0200 Subject: [PATCH] Set max pending mesages per client to 1000 (#2096) Set max pending mesages per client to 1000. --- .../Options/MqttServerOptions.cs | 45 +++++++++---------- Source/ReleaseNotes.md | 3 +- 2 files changed, 23 insertions(+), 25 deletions(-) diff --git a/Source/MQTTnet.Server/Options/MqttServerOptions.cs b/Source/MQTTnet.Server/Options/MqttServerOptions.cs index 5bc1022c3..7be34d844 100644 --- a/Source/MQTTnet.Server/Options/MqttServerOptions.cs +++ b/Source/MQTTnet.Server/Options/MqttServerOptions.cs @@ -2,38 +2,35 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. -using System; +namespace MQTTnet.Server; -namespace MQTTnet.Server +public sealed class MqttServerOptions { - public sealed class MqttServerOptions - { - public TimeSpan DefaultCommunicationTimeout { get; set; } = TimeSpan.FromSeconds(100); + public TimeSpan DefaultCommunicationTimeout { get; set; } = TimeSpan.FromSeconds(100); - public MqttServerTcpEndpointOptions DefaultEndpointOptions { get; } = new MqttServerTcpEndpointOptions(); + public MqttServerTcpEndpointOptions DefaultEndpointOptions { get; } = new(); - public bool EnablePersistentSessions { get; set; } + public bool EnablePersistentSessions { get; set; } - public MqttServerKeepAliveOptions KeepAliveOptions { get; } = new MqttServerKeepAliveOptions(); + public MqttServerKeepAliveOptions KeepAliveOptions { get; } = new(); - public int MaxPendingMessagesPerClient { get; set; } = 250; + public int MaxPendingMessagesPerClient { get; set; } = 1000; - public MqttPendingMessagesOverflowStrategy PendingMessagesOverflowStrategy { get; set; } = MqttPendingMessagesOverflowStrategy.DropOldestQueuedMessage; + public MqttPendingMessagesOverflowStrategy PendingMessagesOverflowStrategy { get; set; } = MqttPendingMessagesOverflowStrategy.DropOldestQueuedMessage; - public MqttServerTlsTcpEndpointOptions TlsEndpointOptions { get; } = new MqttServerTlsTcpEndpointOptions(); + public MqttServerTlsTcpEndpointOptions TlsEndpointOptions { get; } = new(); - /// - /// Gets or sets the default and initial size of the packet write buffer. - /// It is recommended to set this to a value close to the usual expected packet size * 1.5. - /// Do not change this value when no memory issues are experienced. - /// - public int WriterBufferSize { get; set; } = 4096; + /// + /// Gets or sets the default and initial size of the packet write buffer. + /// It is recommended to set this to a value close to the usual expected packet size * 1.5. + /// Do not change this value when no memory issues are experienced. + /// + public int WriterBufferSize { get; set; } = 4096; - /// - /// Gets or sets the maximum size of the buffer writer. The writer will reduce its internal buffer - /// to this value after serializing a packet. - /// Do not change this value when no memory issues are experienced. - /// - public int WriterBufferSizeMax { get; set; } = 65535; - } + /// + /// Gets or sets the maximum size of the buffer writer. The writer will reduce its internal buffer + /// to this value after serializing a packet. + /// Do not change this value when no memory issues are experienced. + /// + public int WriterBufferSizeMax { get; set; } = 65535; } \ No newline at end of file diff --git a/Source/ReleaseNotes.md b/Source/ReleaseNotes.md index b6c01dce2..629ad7e8c 100644 --- a/Source/ReleaseNotes.md +++ b/Source/ReleaseNotes.md @@ -7,4 +7,5 @@ * Changed code signing and nuget certificate * Namespace changes **(BREAKING CHANGE)** * Removal of Managed Client **(BREAKING CHANGE)** -* Client: MQTT 5.0.0 is now the default version when connecting with a server **(BREAKING CHANGE)** \ No newline at end of file +* Client: MQTT 5.0.0 is now the default version when connecting with a server **(BREAKING CHANGE)** +* Server: Set default for "MaxPendingMessagesPerClient" to 1000 **(BREAKING CHANGE)** \ No newline at end of file