概述
Kestrel是一个基于libuv的跨平台ASP.NET Core web服务器,libuv是一个跨平台的异步I/O库。ASP.NET Core项目默认使用Kestrel作为web服务器。
用户可以单独使用Kestrel,也可以配合IIS、Nginx、 Apache等反向代理服务器一块使用;微软官方建议后者配合使用,含蓄的说
Program.cs
public static void Main(string[] args){ ???BuildWebHost(args).Build().Run();}public static IWebHostBuilder BuildWebHost(string[] args) => ???WebHost.CreateDefaultBuilder(args) ???????.UseStartup<Startup>();
.UseKestrel(options =>{ ???options.Limits.MaxConcurrentConnections = 100; ???options.Limits.MaxConcurrentUpgradedConnections = 100; ???options.Limits.MaxRequestBodySize = 10 * 1024; ???options.Limits.MinRequestBodyDataRate = ???????new MinDataRate(bytesPerSecond: 100, gracePeriod: TimeSpan.FromSeconds(10)); ???options.Limits.MinResponseDataRate = ???????new MinDataRate(bytesPerSecond: 100, gracePeriod: TimeSpan.FromSeconds(10)); ???options.Listen(IPAddress.Loopback, 5000); ???options.Listen(IPAddress.Loopback, 5001, listenOptions => ???{ ???????listenOptions.UseHttps("testCert.pfx", "testPassword"); ???});});
文档:
微软官方:
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.1&tabs=aspnetcore2x
Nginx, or Apache
Kestrel:Net Core的跨平台服务器
原文地址:https://www.cnblogs.com/xmai/p/9248299.html