04 2023 档案
一次线上OOM问题的个人复盘
摘要:上个月,我们一个java服务上线后,偶尔会发生内存OOM(Out Of Memory)问题,但由于OOM导致服务不响应请求,健康检查多次不通过,最后部署平台kill了java进程,这导致定位这次OOM问题也变得困难起来。 最终,在多次review代码后发现,是SQL意外地查出大量数据导致的,如下:
阅读全文
关于需求规范和需求评审的一点看法
摘要:对于To B的软件需求阶段,需求评审只是最后一道关,主要是前期工作要到位做足,在正式评审时候要讲究效率。 这里有几个假设:1. 评委一定是不认真的。会前不看资料,会中不仔细听讲,会后撒手不管2. 评委的意见一定是基于自身经验的应激性反应,不是经过深思熟虑之后的发问3. 评委一定不是天才,他们都是某些
阅读全文
一文带你弄懂 Maven 拉包原理
摘要:业务需求开发的时候,我们总是会遇到拉不到依赖包的情况。此时如果不清楚 Maven 拉取依赖包的原理,那么很可能找不到问题所在。今天树哥就带大家了解下 Maven 拉包的原理,让你在遇到问题的时候能快速解决! 三种仓库 在 Maven 中,仓库指的是存放代码构建的一个位置。从分类上来说,Maven 仓
阅读全文
C#泛型的逆变协变(个人理解)
摘要:前编 一般来说, 泛型的作用就类似一个占位符, 或者说是一个参数, 可以让我们把类型像参数一样进行传递, 尽可能地复用代码 我有个朋友, 在使用的过程中发现一个问题 IFace<object> item = new Face<string>(); // CS0266 public interface
阅读全文