跳到主要内容

UCloud 磁盘扩容后,真正要确认的是挂载和开机自动挂载

· 阅读需 2 分钟
一介布衣
全栈开发者

云服务器磁盘扩容这件事,很多时候会被理解成“容量加上了就结束”。
但 2016 年我自己处理这类操作时,越来越不敢只看控制台上的容量变化。因为真正决定这次扩容有没有落地到系统可用状态的,往往不是云平台页面,而是机器里挂载点和开机自动挂载有没有确认好。

DataGrip 连线上库时,我会先关掉自动提交

· 阅读需 2 分钟
一介布衣
全栈开发者

图形化数据库工具很容易让人操作得太顺。
尤其是像 DataGrip 这类客户端,连接、查询、查看结构都很方便,很多动作看上去像在本地演练一样自然。但 2016 年我开始更频繁地用这类工具处理线上数据后,最先养成的习惯反而不是记快捷键,而是先看自动提交有没有关掉。

Java 项目里的 DAO、Service、Controller 命名最好早点统一

· 阅读需 3 分钟
一介布衣
全栈开发者

2016 年接手 Java 项目时,我遇到过一种很典型的混乱:同样是处理用户逻辑的类,有的叫 UserDao,有的叫 UserMapper,有的叫 UserServiceImpl,还有的直接叫 UserManager。项目还能跑,但只要需求稍微一变,大家就会先花时间猜“这个类到底管什么”。

Node.js 图片上传接口,先限制大小再谈体验

· 阅读需 2 分钟
一介布衣
全栈开发者

图片上传这类接口最容易在需求讨论里被说成一句话:选文件,传上去,返回地址。
可 2016 年我在做这类功能时越来越明显地感觉到,一个上传接口如果一开始只关注“体验顺不顺”,却没有先限制大小、类型和错误边界,后面出问题会非常频繁。

MongoDB 地理位置查询,别把距离计算全丢给应用层

· 阅读需 2 分钟
一介布衣
全栈开发者

带坐标的数据一多,最常见的需求之一就是“按距离最近排序”。
很多人一开始会先把经纬度查出来,再在应用层自己算距离、自己排序。小数据量时确实能跑,但 2016 年我在看这类场景时越来越觉得,所有距离计算都堆在应用层,其实是在主动放弃数据库已经能帮你做的一部分工作。

接口缓存不是一开就快

· 阅读需 3 分钟
一介布衣
全栈开发者

2016 年做接口优化时,缓存几乎是最容易被提起的方案。接口慢了,加缓存;数据库忙了,加缓存;列表页扛不住了,还是加缓存。可真正做过几轮之后,我反而越来越谨慎,因为缓存很少是“开了就完事”的提速按钮。