首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
项目相关
订阅
风轻扬zx
更多收藏集
微信扫码分享
微信
新浪微博
QQ
25篇文章 · 0订阅
评论模块优化 - 数据表优化、添加缓存及用 Feign 与用户服务通信
前段时间设计了系统的评论模块,并写了篇文章 评论模块 - 后端数据库设计及功能实现 讲解。 之前评论一共分了两张表,一个评论主表,一个回复表。这两张表的字段区别不大,在主表上加个 pid 字段就可以不用回复表合成一张表了。 评论表中存了用户头像,会引发一些问题。比如用户换头像时…
硬核 | 使用spring cache让我的接口性能瞬间提升了
笔者之前做商城项目时,做过商城首页的商品分类功能。当时考虑分类是放在商城首页,以后流量大,而且不经常变动,为了提升首页访问速度,我考虑使用缓存。对于java开发而言,首先的缓存当然是redis。 我们从图中可以看到,分类功能分为生成分类数据 和 获取分类数据两个流程,生成分类数…
sql注入竟然把我们的系统搞挂了,该怎么办?
最近我在整理安全漏洞相关问题,准备在公司做一次分享。恰好,这段时间团队发现了一个sql注入漏洞:在一个公共的分页功能中,排序字段作为入参,前端页面可以自定义。在分页sql的mybatis mapper.xml中,order by字段后面使用$符号动态接收计算后的排序参数,这样可…
【最佳实践】如何优雅的进行重试
最近公司在搞活动,需要依赖一个第三方接口,测试阶段并没有什么异常状况,但上线后发现依赖的接口有时候会因为内部错误而返回系统异常,虽然概率不大,但总因为这个而报警总是不好的,何况死信队列的消息还需要麻烦运维进行重新投递,所以加上重试机制势在必行。 重试机制可以保护系统减少因网络波…
数据库允许空值 (null),往往是悲剧的开始(1 分钟系列)
数据库字段允许空值,会遇到一些问题,此处包含的一些知识点,和大家聊一聊。 id 为索引,非唯一 (non unique),允许空 (null)。 知识点 1(热身): 负向查询不能命中索引,会导致全表扫描。 知识点 2(划重点): 允许空值,不等于 (!=) 查询,可能导致不符…
改了配置,不想重启,怎么整?
_沈老师,我们有个连接超时的配置,平时是 300 毫秒,双 11 压力上来了,数据库变慢了,平均请求处理时间增加到了 500 毫秒,于是我们决定将连接超时改为 1000 毫秒,但这个过程需要重启服务,会影响正在执行的请求。_有什么好办法,不重启服务,就能够修改配置么? 不重启服…
几百万数据放入内存不会把系统撑爆吗?
在公司有一个需求是要核对一批数据,之前的做法是直接用SQL各种复杂操作给怼出来的,不仅时间慢,而且后期也不好维护,就算原作者来了过一个月估计也忘了SQL什么意思了,于是有一次我就想着问一下之前做这个需求的人为什么不将这些数据查出来后在内存里面做筛选呢?直接说了你不怕把内存给撑爆…
Mybaits 如何实现打印sql语句
mybatis本身没有提供日志的实现,引入的是第三方组件。mybatis支持多个第三方日志插件,优先级由低到高为slf4J、commonsLoging、Log4J2、Log4J和JdkLog。 mybatis中有一个LogFactory,获取log的工厂类,在工程类中可以回去对…
谈一谈 Spring-Mybatis 在多数据源配置上的坑
先聊一聊业务背景,随着系统服务的不断开发,我们的系统会充斥着各种个样的业务.这种时候,我们应该要开始考虑一下如何将系统的粒度细化.举个常见的例子: 电商系统可以拆分为 商品模块,订单模块,地址模块等等.这些模块都可以独立抽取出来,形成一个单独的服务.这就会涉及到各个模块之间的通…
惨遭DruidDataSource和Mybatis暗算,导致OOM
一个平凡的工作日,我像往常一样完成产品提出的需求的业务代码,突然收到了监控平台发出的告警信息。本以为又是一些业务上的bug导致的报错,一看报错发现日志写着java.lang.OutOfMemoryError: Java heap space。 接着我远程到那台服务器上,但是卡的…