From c5994e41be3f1f6e14996f615b21c0961746ee82 Mon Sep 17 00:00:00 2001
From: christian <6939810+chkr1011@users.noreply.github.com>
Date: Tue, 22 Oct 2024 11:12:01 +0200
Subject: [PATCH] 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