柚熊的头像-柚熊闲记
管理员
Be water,my friend!
接口返回超大 JSON,网关直接超时,怎么改-柚熊闲记

接口返回超大 JSON,网关直接超时,怎么改

接口一次返回几十 MB 的 JSON,序列化、传输、前端解析三处都慢,网关也容易超时。按优先级改:一分页,让前端按需拉;二瘦身字段,列表只返回真正用到的列;三确实要全量就改流式输出(NDJSON ...
调用外部接口时快时慢,先查 DNS 和连接复用-柚熊闲记

调用外部接口时快时慢,先查 DNS 和连接复用

接口时快时慢,先排除 DNS 和连接复用。DNS 慢的特征是偶发几百毫秒、且集中在首次调用,可以本地缓存解析结果并设 TTL,或改用内网直连地址。连接复用看抓包有没有反复出现三次握手就能判断;H...
误 reset 或误删分支后,用 reflog 把提交找回来-柚熊闲记

误 reset 或误删分支后,用 reflog 把提交找回来

reflog 记录的是本地 HEAD 的每次移动,误操作后一般 90 天内都还能捞回来。先 git reflog 找到误操作前那一步的提交号,再 git reset --hard <提交号> 回到当时状态。如果是误删分支,用...
只把某一个提交搬到另一个分支-柚熊闲记

只把某一个提交搬到另一个分支

cherry-pick 会把指定提交的改动当作一个新提交打到当前分支。先切到目标分支,再 git cherry-pick <提交号>,可以连着给多个号按顺序应用。有冲突就按普通冲突改,改完 git add 再 git c...
给每个请求打 traceId,把全链路日志串起来-柚熊闲记

给每个请求打 traceId,把全链路日志串起来

入口处生成一个 traceId(网关或第一个中间件),之后所有日志都带上它,这是排查分布式问题最划算的投入。落地要点:traceId 放进 MDC 或请求上下文,让日志框架自动打印,别在每个方法手写参...
配置分环境管理,别把密钥提交进仓库-柚熊闲记

配置分环境管理,别把密钥提交进仓库

密钥进仓库等于泄露,事后删文件也没用,历史里还在。做法:配置按环境拆开,本地用 .env 并加进 .gitignore,仓库只放 .env.example,生产走配置中心或平台 secrets 注入。如果已经提交过,第...
单元测试依赖当前时间,怎么让它稳定可重复-柚熊闲记

单元测试依赖当前时间,怎么让它稳定可重复

直接调 datetime.now() 的代码没法稳定测试。做法是把它包一层,注入 Clock 或 now() 函数,测试时传固定时间——Python 用 freezegun 的 freeze_time、Java 用 Clock.fixed()、JS 用 vi.setSys...
Nginx upstream 长连接没生效,TIME_WAIT 猛涨-柚熊闲记

Nginx upstream 长连接没生效,TIME_WAIT 猛涨

只写 upstream 里的 server 是不够的,默认对后端走短连接,请求一多后端侧 TIME_WAIT 就猛涨。要显式做三件事:upstream 块里加 keepalive 参数(按后端实例规模配)、proxy_http_version 设为...
日志平台丢数据,从采集端开始逐段排查-柚熊闲记

日志平台丢数据,从采集端开始逐段排查

日志丢了别猜,从源头一段段对:应用是不是真写了这条日志(本地文件里直接 grep)、采集 agent 有没有读到(看 agent 自身日志和 offset)/传输链路是否限流或断开、最后存储端的查询条件对不...
🎬 今日经典电影推荐:《阿甘正传》-柚熊闲记

🎬 今日经典电影推荐:《阿甘正传》

一个智商只有 75 的人,一生只守住一条规则:答应过的事就去做。结果他跑过了半个美国,也跑过了整个二十世纪。今天的经典电影推荐来了—— 🎬 阿甘正传 (Forrest Gump, 1994) 导演: 罗伯特·...
今日AI动态简报(2026-09-22)-柚熊闲记

今日AI动态简报(2026-09-22)

【本期速览】本期共收录 8 条 AI 动态,集中在模型与工具发布、具身智能与终端产品、算力平台评估、数据中心监管四条线。 模型与开源方面:小米发布 MiMo-V2.6 Pro 与 Flash 两个全模态开源模型...
开机越来越慢,用事件查看器找出拖慢启动的程序-柚熊闲记

开机越来越慢,用事件查看器找出拖慢启动的程序

别靠肉眼猜启动项。任务管理器的「启动」页先看「启动影响」列,把标「高」的非必要项禁用。 要精确定量就打开事件查看器,进应用程序和服务日志 → Microsoft → Windows → Diagnostics-Perfo...
系统文件损坏导致各种异常,sfc 和 DISM 的修复顺序-柚熊闲记

系统文件损坏导致各种异常,sfc 和 DISM 的修复顺序

顺序反了会白跑一遍。sfc 是拿本地组件存储里的文件去比对修复,如果组件存储本身已损坏,sfc 修不动。 所以先用 DISM 从微软的源把组件存储修回来,成功后再跑 sfc /scannow。两条都必须用管理...
连不上到底是哪一层断的,用 tcpdump 抓包判断-柚熊闲记

连不上到底是哪一层断的,用 tcpdump 抓包判断

判断只看一件事:SYN 有没有被回应。 在客户端抓包,看到反复发 SYN 却收不到 SYN-ACK,说明包被丢在路上,去查安全组、防火墙和路由。 收到 SYN-ACK 但紧接着 RST,说明对端没有进程在监听或策...
程序卡住不响应,用 strace 看它停在哪一步系统调用-柚熊闲记

程序卡住不响应,用 strace 看它停在哪一步系统调用

分两种情况。进程还在但毫无响应,直接挂上去看它停在哪:strace -p 加 -T 打印每次调用耗时、加 -f 跟住子线程。 屏幕上长时间停着不动的那个调用就是卡点,常见是 read 卡在网络、futex 卡在...
watch 监听对象内部字段变化不触发,deep 该怎么用-柚熊闲记

watch 监听对象内部字段变化不触发,deep 该怎么用

watch 默认只比较引用,同一个对象只改内部字段不会触发回调。 监听 ref 包裹的对象要显式传 deep: true。 监听 reactive 对象本身天然就是深度监听,不用加 deep,但一旦用 getter 写法就退回...
自定义组件上的 v-model 该怎么实现-柚熊闲记

自定义组件上的 v-model 该怎么实现

Vue 3 把 v-model 拆成 modelValue 属性和 update:modelValue 事件两件事,组件里声明这两个就够了。props 不能直接改,改值必须 emit 出去。 要自定义参数名就写 v-model:title,组件里对应接...
事务里调远程接口,长事务怎么划边界-柚熊闲记

事务里调远程接口,长事务怎么划边界

铁律:事务里不做网络调用。远程接口的耗时不可控,会把数据库连接和行锁一起占住,高峰期足以把连接池拖死。 做法是把调用挪到事务外,先提交本地写库,再去调远程;远程失败走补偿,靠重试、...
更新数据库后缓存不一致,先删缓存还是先写库-柚熊闲记

更新数据库后缓存不一致,先删缓存还是先写库

用先更新数据库再删缓存,不要先删缓存。 先删的话,删完之后、写库之前有个空窗,并发读会把旧值重新灌回缓存,脏数据就一直挂着了。 先写库再删,最坏也只是读到稍早的值,下一次读就被纠正。...
接口被刷,用令牌桶限流并返回 429-柚熊闲记

接口被刷,用令牌桶限流并返回 429

单机用令牌桶:桶容量决定能容忍多少突发,填充速率决定长期平均 QPS。 多实例部署就得把令牌放进 Redis,用 Lua 脚本把取令牌和回填做成一步原子操作,否则并发下必然超发。 超限不要静默丢包...
文件已被跟踪后再写 .gitignore 没用,要先取消跟踪-柚熊闲记

文件已被跟踪后再写 .gitignore 没用,要先取消跟踪

.gitignore 只对还没被跟踪的文件生效,已经进了索引的文件照样会被提交。 正确做法是把它从索引里移除但保留磁盘上的文件:git rm --cached 加路径,这个 --cached 是关键,少了它就是连本地文...
提交信息按约定式写,方便回溯和生成变更日志-柚熊闲记

提交信息按约定式写,方便回溯和生成变更日志

格式是 type(scope): 描述。 type 用固定几个:feat 新功能、fix 修缺陷、docs 文档、refactor 重构、perf 性能、test 测试、chore 构建与杂项。 scope 写模块名。标题一行写完,控制在五十来个...
单元测试里把 HTTP 请求 mock 掉,不打真实网络-柚熊闲记

单元测试里把 HTTP 请求 mock 掉,不打真实网络

单元测试不打真实网络:真接口慢且不稳定,还会污染外部数据,失败原因也说不清。 Python 用 requests_mock 或 responses 把目标 URL 拦下返回固定响应,顺便断言调用参数对不对。 Node 用 nock...
镜像几个 G,用多阶段构建和 .dockerignore 瘦身-柚熊闲记

镜像几个 G,用多阶段构建和 .dockerignore 瘦身

体积大头一般是构建工具链和缓存被留在了运行镜像里。 用多阶段构建:前一阶段装依赖、跑构建,后一阶段只 COPY --from=builder 拿产物,运行镜像换成 alpine 或 slim 这类小基础镜像。 再检查 ...
给容器加 healthcheck,别让假活着的进程接流量-柚熊闲记

给容器加 healthcheck,别让假活着的进程接流量

容器显示 Up 不等于服务可用:主进程还活着,但应用已经连不上数据库或端口没在监听,照样会被挂到负载均衡后面接流量。 加 HEALTHCHECK,用 curl 或专门的探活接口定期探测,四个参数都要写:i...
Nginx 配双向认证,用客户端证书卡住访客-柚熊闲记

Nginx 配双向认证,用客户端证书卡住访客

双向认证是服务端反过来校验客户端证书。 先备齐 CA 证书、服务端证书和客户端证书。 Nginx 里用 ssl_client_certificate 指向 CA 证书链、ssl_verify_client on 强制校验,ssl_verify_depth 限...
🎬 今日经典电影推荐:《这个杀手不太冷》-柚熊闲记

🎬 今日经典电影推荐:《这个杀手不太冷》

一个从不在床上睡觉的杀手,一盆没有根的绿植,一个抱着牛奶敲门的女孩。三样东西凑在一起,就是这部电影全部的温度。今天的经典电影推荐来了—— 🎬 这个杀手不太冷 (Léon: The Professional,...
今日AI动态简报(2026-09-23)-柚熊闲记

今日AI动态简报(2026-09-23)

【本期速览】本期共收录 8 条 AI 动态,集中在模型迭代与安全、国产模型与云侧生态、AI Agent 落地三条线。 模型方面:Anthropic 发布 Claude Opus 5.5,称达到 Fable 5.1 级性能,相较于 Opus ...
映射的网络驱动器重启就掉,怎么让它持久保存-柚熊闲记

映射的网络驱动器重启就掉,怎么让它持久保存

重启就掉多半不是映射没保存,而是凭据没记住。到「控制面板 → 凭据管理器 → Windows 凭据」新增一条,地址填服务器机器名。 然后删掉旧映射重新连接,勾选「记住我的凭据」,命令行里加 /per...
误删文件,用「以前的版本」卷影副本找回-柚熊闲记

误删文件,用「以前的版本」卷影副本找回

前提是删除前「系统保护」已开启,否则没有还原点可选。右键文件 →「属性」→「以前的版本」,挑一个删除前的时间点,先「打开」确认内容再「还原」。 整盘恢复就右键盘符,同一页会列出该卷所...