gpt4 book ai didi

c# - 在 ASP.NET 中使用 Task.Delay 是否安全?

转载 作者:太空宇宙 更新时间:2023-11-03 19:00:17 25 4
gpt4 key购买 nike

我的操作仅返回包含信息的 JSON 字符串。

为了防止用户编辑每 2 秒更新一次信息的 JS 代码,我还需要一个服务器端延迟来防止高 CPU 负载。

如果有(例如)2000-5000 个用户同时执行相同的请求,使用 Task.Delay(2000) 有多安全?每个用户返回的信息都不同。

最佳答案

为什么您认为添加 Task.Delay(2000) 会降低 CPU 负载?如果你在T时CPU负载高,加Task.Delay(2000)只是把CPU负载高推迟到T+2,完全无能为力。

一个快速的解决方案是在 UI 端检查提交频率,就像在网页上一样,禁用提交按钮并在几秒钟后再次启用它。但这可以作弊,因为前端脚本可以修改。

一个更安全的解决方案是在服务器端检查提交频率,你在某个地方记录最后一次提交时间(例如静态变量,最简单),并拒绝无效请求。

关于c# - 在 ASP.NET 中使用 Task.Delay 是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37292816/

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