暂无搜索历史
线上服务偶尔会崩,日志里只有一行 fatal error: concurrent map read and map write,没有堆栈,进程直接挂掉。这个报错...
在 Go 后端服务里,context.Context 几乎无处不在,从 HTTP 请求的入口到数据库调用、RPC 超时控制,再到日志 trace ID 的传递,...
在 Go 服务端开发里,经常遇到一个 HTTP 请求触发多个下游调用(数据库、RPC、缓存)的情况。如果某个下游迟迟不返回,goroutine 就会一直挂在那里...
最近在做一个日志聚合服务时,需要从多个数据源并发拉取分页数据,每个数据源返回一个异步迭代器。我一开始想用 Promise.all 把每个迭代器的 next() ...
有一次排查一个 Node.js 服务的内存增长问题,发现每次调用 child_process.exec 执行 ffmpeg 命令后,堆内存都会明显上升,重启后回...
线上一个用 Node.js 写的定时任务服务最近总是隔几天就没了,没有 core dump,没有明显的 OOM 日志,PM2 虽然配置了自动重启,但重启后过一段...
最近在维护一个后台管理页面时,遇到一个比较隐蔽的问题:列表页在筛选条件变化后,会连续发起两次相同的数据请求。第一次请求很快返回,但紧接着又发了一次,导致 loa...
前几天在项目里遇到一个奇怪的现象:一个按钮点击后,先更新了状态,然后通过 Promise 触发了一个日志上报,但日志里的数据却是旧的。排查后发现,问题出在微任务...
在 Vue 3 项目里,从 reactive 对象上解构属性是很常见的写法,比如把 user.name 拆出来直接用在模板里。但很多人会踩到一个坑:解构之后的值...
在 Node.js 服务端开发中,我们常常会使用 Promise 来组织异步流程,尤其是在调用下游 HTTP 接口、查询数据库或者读写文件时。但很多开发者没有意...
在Vue或React组件里发异步请求,用户快速切换路由或者关闭弹窗时,组件已经卸载了,但请求还在飞。等响应回来之后,回调里执行setState或者修改ref,R...
在开发中我们经常遇到这样的场景:用户快速切换页面,但之前的接口请求还在进行;搜索框连续输入时,每敲一个字符就发一次请求,旧请求的结果可能覆盖新结果;或者文件上传...
在 Vue 3 的 Composition API 里,watch 和 watchEffect 让响应式副作用的组织方式灵活了很多。但当我们监听的数据源来自异步...
做后台管理系统时,图表容器经常需要根据父级宽高自适应。早些年我会挂一个 window.addEventListener('resize', handler),然...
在移动端项目里用 SVG 做图标已经是很常规的做法,但最近在 iPhone 12 和 iPad 上遇到一个怪现象:同一套 SVG 图标,在 Chrome 和 A...
在开发搜索框实时联想、文件上传进度控制或页面切换时中断数据请求等功能时,我们经常需要取消已经发出但不再需要的异步操作。以前用 XMLHttpRequest 可以...
在单页应用里,搜索框输入联想、路由切换取消未完成请求、组件卸载时终止轮询,这些场景都会用到 AbortController 来取消 fetch。但实际写下来经常...
处理嵌套对象的时候,很多人习惯用 JSON.parse(JSON.stringify(obj)) 来做深拷贝。这个写法确实够短,一行搞定,日常传个配置对象、拼个...
页面里有一个复杂的配置对象,嵌套了多层数组和对象,还混着 Date、Map 和函数。你想深拷贝一份用来做撤销栈,顺手写了 structuredClone(con...
在搜索框联想、路由切换或重复提交的场景里,经常会遇到一个接口还没返回、又发起了新请求的情况。如果后发的请求先回来,界面可能被旧数据覆盖;如果先发的请求后回来,又...
暂未填写公司和职称
暂未填写个人简介
暂未填写技能专长
暂未填写学校和专业
暂未填写个人网址
暂未填写所在城市