相关疑难解决方法(0)

在ASP.NET MVC中实现请求限制的最佳方法?

我们正在尝试各种方法来限制用户在给定时间段内的操作:

  • 限制问答帖子
  • 限制编辑
  • 限制Feed检索

目前,我们正在使用Cache来简单地插入用户活动的记录 - 如果用户执行相同活动时存在该记录,我们就会加油.

使用缓存自动为我们提供过时的数据清理和用户的滑动活动窗口,但它如何扩展可能是一个问题.

还有哪些其他方法可以确保可以有效地限制请求/用户操作(强调稳定性)?

asp.net-mvc throttling

208
推荐指数
3
解决办法
5万
查看次数

什么是一个好的速率限制算法?

我可以使用一些伪代码,或者更好的Python.我正在尝试为Python IRC机器人实现速率限制队列,它部分工作,但如果有人触发的消息少于限制(例如,速率限制是每8秒5条消息,而此人只触发4条消息),并且下一个触发器超过8秒(例如,16秒之后),机器人发送消息,但是队列变满并且机器人等待8秒,即使自8秒时间段已经过去也不需要它.

python algorithm message-queue

148
推荐指数
4
解决办法
8万
查看次数

限制方法在N秒内调用M个请求

我需要一个组件/类来限制某些方法的执行到N秒内的最大M次调用(或ms或nanos,无关紧要).

换句话说,我需要确保我的方法在N秒的滑动窗口中执行不超过M次.

如果您不知道现有的课程,请随时发布您的解决方案/想法如何实现这一点.

java throttling

128
推荐指数
7
解决办法
8万
查看次数

如果 API 速率限制超过使用 WebApiThrottle - C# Web API,则阻止 API 请求 5 分钟

有一个非常好的库WebApiThrottle用于 Web API 中的 API 速率限制。
正如在 Wiki 页面上提到的,我可以根据 API 调用的授权令牌标头对 API 进行速率限制。
但是,如果此 api 速率限制超过,我如何在接下来的 5 分钟内阻止 api 调用?此外,在接下来的 5 分钟内的任何请求都不会重置超过时间的速率限制。

我检查了代码,但找不到此功能。如果有人可以建议,还有其他方法吗?

c# api throttling rate-limiting asp.net-web-api

3
推荐指数
1
解决办法
5566
查看次数