javaweb接口访问限制

a1769988917 2019-01-04 09:30:57
如题,javaweb,SSM框架,在多用户访问时,怎么设置一个接口怎么设置一个上限?就比如最多只能20个用户同时访问此接口,请问有什么好办法吗?
...全文
487 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你提出这个问题的出发点是什么,我觉得命令模式更适合!
我爱娃哈哈 2019-01-05
  • 打赏
  • 举报
回复
用IP来区分,一个ip算作一个客户端访问,然后创建一个map来保存,访问的时候先判断map的key,如果不存在就put,存在value+1,等到map.size()等于20的时候就直接return提示访问达到上限。
亲爱的Joe 2019-01-05
  • 打赏
  • 举报
回复
public static void main(String [] args){
for(int i=0;i<100;i++){
System.err.println( method());
}
}
public static Semaphore semaphore =new Semaphore(20);
public static String method(){
if(!semaphore.tryAcquire()){
return "达到访问上限";
}
return "未达到访问上限"+semaphore.availablePermits();
}
十八道胡同 2019-01-04
  • 打赏
  • 举报
回复
利用一个信号量控制,进入的时候把数量加1,结束时数量减1,并将更新数字的操作进行同步
Roy_Feng 2019-01-04
  • 打赏
  • 举报
回复
额,MQ可以解决这个问题,或者你自己做个计数

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧