Dylan/polishing (#12163)

* fixed slnf path, fixed options comment, renames

* cleaned up sample
This commit is contained in:
Dylan Dmitri Gray 2019-07-15 15:28:51 -07:00 committed by GitHub
parent a784f4575b
commit 7b56439ca1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 8 additions and 7 deletions

View File

@ -1,6 +1,6 @@
{ {
"solution": { "solution": {
"path": "C:\\Users\\t-dygra\\Desktop\\AspNetCore\\src\\Middleware\\Middleware.sln", "path": "..\\Middleware.sln",
"projects": [ "projects": [
"..\\Hosting\\Abstractions\\src\\Microsoft.AspNetCore.Hosting.Abstractions.csproj", "..\\Hosting\\Abstractions\\src\\Microsoft.AspNetCore.Hosting.Abstractions.csproj",
"..\\Hosting\\Hosting\\src\\Microsoft.AspNetCore.Hosting.csproj", "..\\Hosting\\Hosting\\src\\Microsoft.AspNetCore.Hosting.csproj",

View File

@ -37,7 +37,7 @@ namespace Microsoft.Extensions.DependencyInjection
{ {
public static partial class QueuePolicyServiceCollectionExtensions public static partial class QueuePolicyServiceCollectionExtensions
{ {
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddStackQueue(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.AspNetCore.ConcurrencyLimiter.QueuePolicyOptions> configure) { throw null; } public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddFIFOQueue(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.AspNetCore.ConcurrencyLimiter.QueuePolicyOptions> configure) { throw null; }
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddTailDropQueue(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.AspNetCore.ConcurrencyLimiter.QueuePolicyOptions> configure) { throw null; } public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddLIFOQueue(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.AspNetCore.ConcurrencyLimiter.QueuePolicyOptions> configure) { throw null; }
} }
} }

View File

@ -17,7 +17,7 @@ namespace ConcurrencyLimiterSample
{ {
public void ConfigureServices(IServiceCollection services) public void ConfigureServices(IServiceCollection services)
{ {
services.AddStackQueue((options) => { services.AddLIFOQueue((options) => {
options.MaxConcurrentRequests = Environment.ProcessorCount; options.MaxConcurrentRequests = Environment.ProcessorCount;
options.RequestQueueLimit = 50; options.RequestQueueLimit = 50;
}); });
@ -39,6 +39,7 @@ namespace ConcurrencyLimiterSample
{ {
new WebHostBuilder() new WebHostBuilder()
.UseKestrel() .UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory()) // for cert file
.UseStartup<Startup>() .UseStartup<Startup>()
.Build() .Build()
.Run(); .Run();

View File

@ -17,7 +17,7 @@ namespace Microsoft.AspNetCore.ConcurrencyLimiter
/// <summary> /// <summary>
/// Maximum number of queued requests before the server starts rejecting connections with '503 Service Unavailible'. /// Maximum number of queued requests before the server starts rejecting connections with '503 Service Unavailible'.
/// Defaults to 5000 queued requests. /// This option is highly application dependant, and must be configured by the application.
/// </summary> /// </summary>
public int RequestQueueLimit { get; set; } public int RequestQueueLimit { get; set; }
} }

View File

@ -18,7 +18,7 @@ namespace Microsoft.Extensions.DependencyInjection
/// <param name="configure">Set the options used by the queue. /// <param name="configure">Set the options used by the queue.
/// Mandatory, since <see cref="QueuePolicyOptions.MaxConcurrentRequests"></see> must be provided.</param> /// Mandatory, since <see cref="QueuePolicyOptions.MaxConcurrentRequests"></see> must be provided.</param>
/// <returns></returns> /// <returns></returns>
public static IServiceCollection AddTailDropQueue(this IServiceCollection services, Action<QueuePolicyOptions> configure) public static IServiceCollection AddFIFOQueue(this IServiceCollection services, Action<QueuePolicyOptions> configure)
{ {
services.Configure(configure); services.Configure(configure);
services.AddSingleton<IQueuePolicy, FIFOQueuePolicy>(); services.AddSingleton<IQueuePolicy, FIFOQueuePolicy>();
@ -32,7 +32,7 @@ namespace Microsoft.Extensions.DependencyInjection
/// <param name="configure">Set the options used by the queue. /// <param name="configure">Set the options used by the queue.
/// Mandatory, since <see cref="QueuePolicyOptions.MaxConcurrentRequests"></see> must be provided.</param> /// Mandatory, since <see cref="QueuePolicyOptions.MaxConcurrentRequests"></see> must be provided.</param>
/// <returns></returns> /// <returns></returns>
public static IServiceCollection AddStackQueue(this IServiceCollection services, Action<QueuePolicyOptions> configure) public static IServiceCollection AddLIFOQueue(this IServiceCollection services, Action<QueuePolicyOptions> configure)
{ {
services.Configure(configure); services.Configure(configure);
services.AddSingleton<IQueuePolicy, LIFOQueuePolicy>(); services.AddSingleton<IQueuePolicy, LIFOQueuePolicy>();