package com.oying.modules.system.rest;
|
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import com.oying.annotation.Limit;
|
import com.oying.annotation.rest.AnonymousGetMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
/**
|
* @author Z
|
* 接口限流测试类
|
*/
|
@RestController
|
@RequestMapping("/api/limit")
|
@Api(tags = "系统:限流测试管理")
|
public class LimitController {
|
|
private static final AtomicInteger ATOMIC_INTEGER = new AtomicInteger();
|
|
/**
|
* 测试限流注解,下面配置说明该接口 60秒内最多只能访问 10次,保存到redis的键名为 limit_test,
|
*/
|
@AnonymousGetMapping
|
@ApiOperation("测试")
|
@Limit(key = "test", period = 60, count = 10, name = "testLimit", prefix = "limit")
|
public int testLimit() {
|
return ATOMIC_INTEGER.incrementAndGet();
|
}
|
}
|