c# - 达到最大连接限制时如何更改 http.sys Web 服务器响应
问题描述
我们正在使用 http sys web 服务器来托管 web api 服务。业务需要限制最大并发连接数。用于该目的的 MaxConnections 配置属性:
services.Configure<HttpSysOptions>(options =>
{
options.MaxConnections = Configuration.GetValue<long?>("MaxConnections");
});
但是,当并发连接限制达到所有新连接时,所有新连接都会在套接字级别被丢弃。是否可以更改此行为,以便服务器接受请求并向客户端返回 4xx 或 5xx 响应?
解决方案
我终于设法找到了解决方案:选项中有Http503Verbosity属性。默认情况下,它设置为Http503VerbosityLevel.Basic但如果将其更改为 Http503VerbosityLevel .Limited 或 Http503VerbosityLevel.Full 503 响应将返回超过限制的请求。所以我的代码现在看起来像这样:
services.Configure<HttpSysOptions>(options =>
{
options.MaxConnections = Configuration.GetValue<long?>("MaxConnections");
options.Http503Verbosity = Http503VerbosityLevel.Full;
});
推荐阅读
- python - 将 dict 转换为具有更高级别的数据帧
- c++ - 我将如何平衡退化的树?C++ 数据结构
- swift - switch 语句:在 swift 中从 if 语句转换为 switch 语句
- javascript - 我正在尝试使用 AJAX 或 req.body 为 NODEJS 获取变量
- ios - 关于 Swift 中的 Copy 的问题
- python - 使用 BeautifulSoup 在 Python 中抓取缺货通知程序
- c - linux服务器C中未读取文件中的数据
- c# - SQL 空间数据类型的实体框架核心支持 - DBGeography?
- ios - 在 NativeScript 中访问 iOS 通用链接中的查询参数
- javascript - Google Earth Engine - 连接“年份”以迭代函数