代码思想之快慢路径

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

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

业务逻辑:

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

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

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

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

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

相关推荐
电子_咸鱼12 小时前
动态规划经典题解:单词拆分(LeetCode 139)
java·数据结构·python·算法·leetcode·线性回归·动态规划
李慕婉学姐12 小时前
【开题答辩过程】以《割草机器人工作管理系统的设计与开发》为例,不会开题答辩的可以进来看看
java·spring·机器人
青衫码上行12 小时前
【Java Web学习 | 第七篇】JavaScript(1) 基础知识1
java·开发语言·前端·javascript·学习
堕落年代13 小时前
Spring三级缓存通俗易懂讲解
java·spring·缓存
星释13 小时前
Rust 练习册 10:多线程基础与并发安全
开发语言·后端·rust
披着羊皮不是狼14 小时前
多用户博客系统搭建(1):表设计+登录注册接口
java·开发语言·springboot
zzzyyy53816 小时前
C++之vector容器
开发语言·c++
WX-bisheyuange16 小时前
基于Spring Boot的教师个人成果管理系统的设计与实现
java·spring boot·后端
chxii17 小时前
spring boot 获取HTTP 请求参数
spring boot·后端·http
xunyan623418 小时前
面向对象(上)-封装性的引入
java·开发语言