Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 限制API每秒的请求数_Spring_Spring Mvc_Spring Boot_Servlets_Httprequest - Fatal编程技术网

Spring 限制API每秒的请求数

Spring 限制API每秒的请求数,spring,spring-mvc,spring-boot,servlets,httprequest,Spring,Spring Mvc,Spring Boot,Servlets,Httprequest,如何限制我们正在开发的任何API的每秒请求数。 我需要根据我们为每个客户端提供的令牌限制每秒的请求。 因此,假设我向我们的客户机提供了TOKEN1,它位于请求头中,并且我们对该token每秒的请求限制为10,那么客户机每秒只能访问10次我们的API。无论他们是否访问任意数量的计算机,如果他们使用相同的令牌,他们每秒只能访问10个请求。 如何使用Spring Boot实现这一点? 我们有Spring Boot应用程序。有一些标准节流的(maven)包可用,例如: 示例代码如下所示: @Thrott

如何限制我们正在开发的任何API的每秒请求数。 我需要根据我们为每个客户端提供的令牌限制每秒的请求。 因此,假设我向我们的客户机提供了TOKEN1,它位于请求头中,并且我们对该token每秒的请求限制为10,那么客户机每秒只能访问10次我们的API。无论他们是否访问任意数量的计算机,如果他们使用相同的令牌,他们每秒只能访问10个请求。 如何使用Spring Boot实现这一点? 我们有Spring Boot应用程序。

有一些标准节流的(maven)包可用,例如:

示例代码如下所示:

@Throttling(type = ThrottlingType.HeaderValue, headerName = "X-Forwarded-For", limit = 10, timeUnit = TimeUnit.HOURS)
public void serviceMethod() {
}
有一些(maven)标准节流包可用,例如:

示例代码如下所示:

@Throttling(type = ThrottlingType.HeaderValue, headerName = "X-Forwarded-For", limit = 10, timeUnit = TimeUnit.HOURS)
public void serviceMethod() {
}

感谢您的回答,我将研究这一个,这是第三方库,但如果spring提供这种类型的内置支持?不幸的是,它没有。;)@dersvenhesse这个例子使用jar文件,它找不到中央存储库……。你知道,为什么吗?@panthaistiaque你需要添加存储库,如“Maven设置”中所述:谢谢你的回答,我将研究这个问题,这是第三方库,但如果spring提供这种内置支持?不幸的是,它没有@dersvenhesse此示例使用jar文件,无法找到中央存储库……。您知道,为什么吗?@panthaistiaque您需要添加存储库,如“Maven设置”中所述: