Go语言技术文章
-
周期任务看起来每分钟执行一次,实际却可能因单次执行超时、未捕获异常或重复创建调度器而失控。本文拆解固定频率调度下的任务不重叠、异常终止和恢复路径,给出可验证的 Java 写法。387 收藏 -
parse_url() 不会替 URL 自动补上 80 或 443。本文用 PHP_URL_PORT、HTTP_HOST 和 SERVER_PORT 拆开缺失端口、显式默认端口与代理转发场景,给出可复现的判断代码和安全边界。387 收藏 -
Go 拼接 URL 时不要直接使用 filepath.Join:文件路径按操作系统规则处理,URL 需要保留 scheme、host、path、query 和编码边界。本文对比 filepath.Join、path.Join、url.JoinPath,并给出路径参数与查询参数的正确写法。387 收藏 -
Java 虚拟线程适合高并发、以 HTTP、JDBC 等 I/O 等待为主的任务编排,但不能替代 CPU 并行、连接池和下游限流。本文用代码和边界表说明如何选择。387 收藏 -
systemd 服务读不到 EnvironmentFile 时,先确认实际加载的 unit,再检查文件路径与格式,最后用 daemon-reload、restart、journalctl 和进程环境完成定位。387 收藏 -
Go 调低 GOMEMLIMIT 后 CPU 变高,通常是软内存上限收紧让 GC 更频繁。本文从 Go runtime 账本、堆目标、容器边界和 runtime/metrics 指标入手,区分 GC 压力、业务分配和外部内存风险,给出可回滚的定位清单。387 收藏 -
AI 推理延迟不能只看一个平均数:本文用 TTFT、TPOT/ITL 和端到端耗时拆开聊天、Agent、代码生成与批处理的观测口径,并给出排队、检索、prefill、decode 的定位方法。387 收藏 -
连接池复用能减少建连开销,但空闲连接可能已经失效。本文用 Redis PING 和 redis-py 示例说明健康检查、失效连接隔离、连接重建与业务重试的边界。387 收藏 -
PHP readonly 属性不是普通的只读提示,而是一次初始化后禁止重新绑定的语言约束。本文解释合法初始化、作用域、间接修改、对象内部可变性和克隆边界。387 收藏 -
Go 服务端 Handler 通常不需要手动关闭 http.Request.Body,HTTP Server 会在请求结束时负责收尾;真正必须由调用方关闭的是客户端 Response.Body。本文按生命周期拆开这两个容易混淆的责任边界。387 收藏 -
Go 校验 HMAC 签名时,不要把十六进制或 Base64 文本当普通字符串比较。本文说明如何重新计算 MAC、解码签名并使用 hmac.Equal 比较,同时处理编码错误、长度边界和请求鉴权中的常见误区。387 收藏 -
通过订单累计示例解释 MySQL 窗口函数 ROWS 与 RANGE 的边界差异,定位并列排序值、默认帧、NULL 和类型限制导致的结果异常。387 收藏 -
视觉表格识别前,先统一 xyxy 坐标、比例扩边和边界裁剪,再交给 Hugging Face image processor 做 resize、归一化等预处理。本文给出可复用代码和排查清单。387 收藏 -
文章 · 前端 | 1个月前 | 前端 · javascript · 性能排查 · 背压 TransformStream highWaterMark desiredSize Web Streams API
TransformStream 的背压不是只调一个 highWaterMark:输入侧看 writableStrategy,输出侧看 readableStrategy,并让 size(chunk) 与数据单位一致。本文用 pipeThrough、writer.ready 和 desiredSize 整理配置与排查方法。387 收藏 -
Go 测试出现 testexit、日志突然中断或清理回调未执行时,先区分 os.Exit、runtime.Goexit 与测试失败,再用子进程隔离验证退出码,并让 TestMain 保留 m.Run 的标准结果。387 收藏