“你们采用的软件开发流程是什么?”
无论实际的细节是什么,流程对于软件工程都至关重要。至于哪些东西对于优化流程做出了贡献可能大家会有不同的看法,但仅就项目的工作方式达成一致就能将混乱很小化并且确保每个人都能达成共识。
***信号:“我们的流程受到了自由风格的爵士的影响。” → 很有可能整个部门都处在救火模式,J***a开发薪资,总是不断地从紧急跳到另一个紧急状态而缺乏任何明确的目标。
“你们是如何处理技术债的?”
技术债是过时技术以及代码库中临时应急的解决方案的累积。处理好技术债对于代码的长期健康很重要,这件事情应该持续地做。
***信号:“我们只关注新功能。” → 他们的代码库一团糟或者很快就会一团糟。
分析之前
依我个人的理解来说限流的话应该灵活到可以针对每一个接口来做。比如说一个类里面有5个接口,那么我的限流插件就应该能针对每一个接口就行不同的限流方案。所以呢,南京J***a开发待遇,既然针对的每个接口所以就需要一个可以标示这个接口的key(我取的是类名 方法名 入参)。
分布式限流强烈推荐使用redis lua或者nginx lua来实现。
这里用2个限流条件来做示例讲一下常见的限流算法:
接口1它10秒钟很大允许访问100次
接口2它10秒钟很大允许每个人访问100次。
计数器算法
这个算法可以说是限流算法中***简单的一种算法了。
核心思想
计数器算法的意思呢就是当接口在一个时间单位中被访问时,我就记下来访问次数,J***a开发,直到它访问的次数到达上限。
涉及变量
接口(key)
时间单位(expire)
允许访问多少次(limit)
访问次数(value)
条件一
当一个请求过来时,我们就会得到这个key。
123456789 if(存在key){ value ; if(valuegt;=limit){ 不能访问 } }else{ 添加key,value为1 设置key过期时间为expire }
版权所有©2025 产品网