gpt4 book ai didi

将单字节添加到响应时,ASP.NET WebAPI 输出会慢 40 倍

转载 作者:行者123 更新时间:2023-12-03 15:02:48 24 4
gpt4 key购买 nike

我有一个像这样的简单操作方法:

public class TestApiController : ApiController
{
[Route("api/string"), HttpGet]
public string GetString(int length)
{
return new string('x', length);
}
}

响应时间(由 Fiddler 观察到):
GET /api/string?length=1186
0.008
0.007
0.007
...

GET /api/string?length=1187
0.208
0.212
0.205
...

也就是说,通过在响应中添加单个字节,处理时间增加了 40 倍。

这种行为是绝对一致的,我在 Visual Studio 的 Web 服务器和 IIS 8.5 中都观察到它(但是,特定的响应大小阈值略有不同)。

为什么它会有这样的行为?

编辑 : 就我而言,ESET NOD32 防病毒软件检查 HTTP 协议(protocol)是罪魁祸首。

最佳答案

杀毒软件正在从您的 PC 扫描传入/传出数据。

他们被编程知道如何理解标准类型的数据,而不是简单地扫描 strings ints datatable .当您直接操作此数据时,您是在告诉给定的防病毒软件“嗨,我很奇怪,请检查我”,防病毒“规则”是隐藏的,但我确定有一些“大小”、“格式”等. 这取决于软件。在你的情况下它比较慢,它必须做额外的扫描工作来确保你是安全的。对于运行正在发送一些自定义数据的自定义应用程序的 Intranet 解决方案,这是一个非常知名的问题。

关于将单字节添加到响应时,ASP.NET WebAPI 输出会慢 40 倍,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35413752/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com