Add Backlog to SocketTransportOptions and LibuvTransportOptions (#15111)
This commit is contained in:
parent
8255e3ef26
commit
c1cc168441
|
|
@ -14,6 +14,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv
|
|||
public partial class LibuvTransportOptions
|
||||
{
|
||||
public LibuvTransportOptions() { }
|
||||
public int Backlog { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
public long? MaxReadBufferSize { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
public long? MaxWriteBufferSize { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
public bool NoDelay { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
|
||||
using System.Runtime.CompilerServices;
|
||||
|
|
@ -8,8 +8,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal
|
|||
{
|
||||
internal static class LibuvConstants
|
||||
{
|
||||
public const int ListenBacklog = 128;
|
||||
|
||||
public const int EOF = -4095;
|
||||
public static readonly int? ECONNRESET = GetECONNRESET();
|
||||
public static readonly int? EADDRINUSE = GetEADDRINUSE();
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal
|
|||
return Thread.PostAsync(listener =>
|
||||
{
|
||||
listener.ListenSocket = listener.CreateListenSocket();
|
||||
listener.ListenSocket.Listen(LibuvConstants.ListenBacklog, ConnectionCallback, listener);
|
||||
listener.ListenSocket.Listen(TransportContext.Options.Backlog, ConnectionCallback, listener);
|
||||
}, this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal
|
|||
ListenPipe = new UvPipeHandle(Log);
|
||||
ListenPipe.Init(Thread.Loop, Thread.QueueCloseHandle, false);
|
||||
ListenPipe.Bind(_pipeName);
|
||||
ListenPipe.Listen(LibuvConstants.ListenBacklog,
|
||||
ListenPipe.Listen(TransportContext.Options.Backlog,
|
||||
(pipe, status, error, state) => ((ListenerPrimary)state).OnListenPipe(pipe, status, error), this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -27,6 +27,14 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv
|
|||
/// </remarks>
|
||||
public bool NoDelay { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// The maximum length of the pending connection queue.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Defaults to 128.
|
||||
/// </remarks>
|
||||
public int Backlog { get; set; } = 128;
|
||||
|
||||
public long? MaxReadBufferSize { get; set; } = 1024 * 1024;
|
||||
|
||||
public long? MaxWriteBufferSize { get; set; } = 64 * 1024;
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets
|
|||
public partial class SocketTransportOptions
|
||||
{
|
||||
public SocketTransportOptions() { }
|
||||
public int Backlog { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
public int IOQueueCount { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
public long? MaxReadBufferSize { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
public long? MaxWriteBufferSize { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets
|
|||
|
||||
EndPoint = listenSocket.LocalEndPoint;
|
||||
|
||||
listenSocket.Listen(512);
|
||||
listenSocket.Listen(_options.Backlog);
|
||||
|
||||
_listenSocket = listenSocket;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -24,6 +24,14 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets
|
|||
/// </remarks>
|
||||
public bool NoDelay { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// The maximum length of the pending connection queue.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Defaults to 512.
|
||||
/// </remarks>
|
||||
public int Backlog { get; set; } = 512;
|
||||
|
||||
public long? MaxReadBufferSize { get; set; } = 1024 * 1024;
|
||||
|
||||
public long? MaxWriteBufferSize { get; set; } = 64 * 1024;
|
||||
|
|
|
|||
Loading…
Reference in New Issue