首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
设计qps (query per sec)函数,用它控制ap
[问答题]
设计qps (query per sec)函数,用它控制api调用,使得api n毫秒内只能被调用m次?
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(58)
分享
纠错
2个回答
添加回答
0
orange-cheng
下面是一个思路,可以使用数组维护一个循环的队列,队列长度是m,队列存放访问的时间戳,如果队尾没有追上对头,直接把该次访问的时间戳入队,可以访问,如果追上了,判断队尾和队头的时间差,如果超过n毫秒,直接入队,更新队尾和队头指针,可以访问,如果小于n毫秒,拒绝访问
os:如果m很大,比如100000,可以设置一个计数器,计数器达到一定次数(比如1000)才入队一个元素
发表于 2021-11-04 21:57:37
回复(0)
0
陈木木
设计合理即可,下面是一个参考思路:
• 维护一个窗口,窗口有左右两个边界;窗口内为从最后一次访问开始向前n毫秒所有的访问?
• 当新来一个访问,更新窗口右边界,打新的时间戳;向右移动窗口左边界,将距当前n毫秒外的访 问删除
• 统计次数看是否满足<= m次?
发表于 2015-05-05 14:54:39
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
系统设计
上传者:
陈木木
难度:
2条回答
58收藏
6186浏览
热门推荐
相关试题
系统设计题:设计一个服务调度管理器...
百度
高级算法
系统设计
评论
(1)
大规模的字典中,需要词与词中间的搭...
查找
分布式
系统设计
百元难题
评论
(0)
有一台带一个千兆网卡的服务器A,会...
阿里巴巴
系统设计
评论
(34)
来自
阿里巴巴2015实习生笔试题
请问以下有关 Promise 内置...
Javascript
评论
(1)
宏定义是C语言中非常实用的一种计算...
C语言
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题