行业小白(不喜勿喷)
最近在公司开发公共接口,一个接口几十个需求同时访问,所用框架就是普通得框架,没有中间插件那些高级的知识,担心访问量过大,导致接口炸掉,出现脏数据(数据库刚开始确实是存在脏数据得),所以去学习了一下,分享一下
import java.util.concurrent.Semaphore;
public class Action {
//测试限流
private final Semaphore permit = new Semaphore(10, true);
public void method() {
try {
//获取证书
System.out.println("正在排队中,请稍后......");
permit.acquire();
//业务逻辑
} catch (InterruptedException e) {
// TODO Auto-generated catch block
System.out.println("获取证书异常......");
e.printStackTrace();
}finally {
//释放证书
permit.release();
}
}
}
记得最后finally释放证书呦,要不然后续的程序不能使用了