多实例下 WebSocket 频繁连接中断?基于 Nginx ip_hash 的粘性会话与代理超时时间(proxy_read_timeout)配置
分析分布式微服务集群下由于反向代理未配置 Sticky Session 导致 WebSocket 链接在不同节点间飘移而断开的坑,提供核心 Nginx 配置。
Category
分析分布式微服务集群下由于反向代理未配置 Sticky Session 导致 WebSocket 链接在不同节点间飘移而断开的坑,提供核心 Nginx 配置。
吐槽生产环境每个业务接口都有 200ms 的 OPTIONS 耗时导致用户体验卡顿的白痴问题,给出后端网关一键缓存跨域预检的方法。
排查大量并发接口导致请求在网络层排队挂起的现象,分析虽然使用了 HTTP/2 但由于丢包导致 TCP 阻塞的深层原因及解决策略。
记录静态博客发布时由于协商缓存配置过低导致重复请求拖垮带宽的惨案,给出 nginx immutable 强制浏览器强缓存以配合散列文件名的配置。
分析国内单点主 DNS 导致海外权威解析延迟超 2s 的问题,给出基于 Cloudflare/AWS Route53 的海外解析链路优化与 TTL 设置方案。
吐槽为了纯文本推送非要架设双工 WS 的做法,详细解释 SSE 协议的数据流格式以及支持浏览器自带自动断线重连的简易 Node 实例。
记录生产环境因为网络切换导致 WebSocket 伪连接而无法下发通知的坑,分享带有离线消息队列和轮询 Fallback 的核心 JS 代码。
探讨移动端弱网加载大图出现 HTTP 连接长时间挂起的问题,给出 Nginx 最新的 HTTP/3 quic 监听及对应防火墙放行规则。
吐槽由于拉取拉取处理过慢导致消费组频发心跳超时触发 Rebalance 的事故,分享如何利用多线程批量提交与并发消费彻底解决消费堆积的深坑。
吐槽把 node_modules 一股脑打进 zip 压缩包导致冷启动时间高达数秒的问题,分享如何通过 Esbuild 树摇和依赖精简进行优化。
吐槽因为加载慢而导致页面大抖动的非专业行为,分享如何使用 `@font-face` 的 `size-adjust` 消除闪烁,并用 pyftsubset 对字体进行体积裁剪。
吐槽时区差异(UTC vs. Asia/Shanghai)导致的编译期时间跳变,以及客户端 Hydration 时因为时间串不一致引发的客户端闪烁白屏。
吐槽传统 Implicit Flow 导致 Access Token 暴露的巨大安全风险,分享如何配置 OAuth2 授权码流程加 PKCE 的安全模式与代码拦截。
吐槽那些过分依赖浏览器控制台而不会抓包的前端,分享在 SSR/SSG 构建期利用 curl 查看裸 HTML 以定位 Hydration 错误的实战。
排查移动端 LCP 评分红爆的问题,分享如何通过 link preload、图片 fetchpriority 属性以及内联 Critical CSS 来大幅提升首屏加载速度。
针对传统滑动窗口内存限流无法抗住分布式多节点并发的痛点,分享如何使用 Redis EVAL 保证操作原子性来实现令牌桶限流算法。
分享我们如何利用 Nginx upstream 模块的 max_fails 与 fail_timeout 配置实现简单的微服务高可用心跳容灾。
列举因为忽略客户端时区差异导致促销活动时间计算出错的大坑,给出基于 vanilla JS 进行本地时间格式化和时区校正的解决方案。