代码思想之快慢路径

处理业务代码的过程中,对业务代码有了一些调整,后续发现这是一种代码思想

在一段复杂的逻辑里,我把查询redis操作写在了前面,

业务逻辑:

如果需要不打压就退出本次处理

查询redis拿到商品需要打压的次数

如果次数 == 0代表已经打压过并且不需要重新打压了,退出本次处理

如果页面 == 1 或 打压次数为 -1(即没有进行过打压处理)。那么就计算打压次数插入redis并标记商品pid等待循环结束后批量移除

这里当页面 == 1时,是会清空redis对应key的全部缓存的(有个beforeprocess方法实现)。也就是说,我可以先判断页面是1的情况,是的话就直接退出本次处理,那么本次请求就不会查询redis了,查redis实际上是损耗资源的操作,尽量能不查就不查,以下是修改后的代码逻辑

相关推荐
灰子学技术1 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
老毛肚1 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis
风流倜傥唐伯虎2 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
二十雨辰2 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码2 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚2 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂2 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1362 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
Gogo8162 小时前
BigInt 与 Number 的爱恨情仇,为何大佬都劝你“能用 Number 就别用 BigInt”?
后端
fuquxiaoguang2 小时前
深入浅出:使用MDC构建SpringBoot全链路请求追踪系统
java·spring boot·后端·调用链分析