Go语言技术文章
-
用 MySQL JSON_TABLE 将订单 JSON 中的商品与批次嵌套数组展开成可查询的行,解释 NESTED PATH 的路径继承、行扩展、空数组补 NULL,以及 ON EMPTY 与 ON ERROR 的边界。322 收藏 -
Go 1.23 引入的 unique 包适合把可比较值规范化为可比较的 Handle。本文用一个小型标签池说明 unique.Make、Handle.Value 和垃圾回收之间的边界:句柄要保留多久、为什么比较更轻,以及何时不该把它当成永久缓存。322 收藏 -
用同一份 HTTP 请求验证 Request.CookiesNamed 的同名 Cookie 筛选、返回顺序、空切片和 Cookie 方法的单值差异,说明 Go 1.23 之后如何安全读取重复 Cookie。322 收藏 -
介绍兽音译者公开产品资料入口、Android包名和文字编码用途,说明它并非动物语言翻译器,也不能替代可靠的安全加密。322 收藏 -
用 Go net/http 为静态资源设置稳定 ETag,配合 If-None-Match 返回 304,减少未变化文件的重复传输,并说明 ServeContent、Seek、Range 与资源更新的边界。322 收藏 -
Go encoding/json 会对可编码 map 的键排序,适合在同一编码路径中生成稳定 JSON 字节用于签名测试;跨语言签名还需另行约定数字、转义和规范化规则。322 收藏 -
Linux kernel 参数用 sysctl -w 临时修改后,如何通过 /etc/sysctl.d/ 安全持久化?本文按备份、加载、覆盖检查和回滚说明完整流程。322 收藏 -
Redis ZRANGE 遇到相同 score 时不会按写入时间排序,而是继续比较 member。本文用排行榜和分页场景说明字典序规则,并给出可复现的二级排序设计。322 收藏 -
Go benchmark 的 allocs/op 偏高时,不要先猜编译器或垃圾回收;从测试夹具、循环内临时值、切片扩容、字符串转换和逃逸边界逐项拆分,才能定位真正的分配来源。322 收藏 -
go test -race 能发现共享变量数据竞争,是因为它在实际运行时记录普通读写,并依据 happens-before 关系判断并发访问是否缺少同步。本文用一个共享计数器说明报告结构,并比较 mutex、channel 与 atomic 的修复边界。322 收藏 -
人力资源外包更换服务商时,按合同边界、人员状态、社保缴费凭证和服务期间结算四条线核对,最后用差异表锁定责任人与关闭时间。322 收藏 -
制作雾蓝海岸手机壁纸时,把重要主体放在下半部,顶部保留低对比雾蓝天空,才能让锁屏时间和通知清楚可读。本文提供主图、暮色变体及可复用的中英文提示词。322 收藏 -
用 Go log/slog 在请求入口统一绑定 trace_id、request_id 和路由字段,再通过 context 传到业务函数,保持 JSON 日志可检索并避开敏感数据泄露。322 收藏 -
Go compress/gzip 默认会把连续 gzip 成员合并读取,第一次 io.EOF 不一定代表单个成员结束。本文用 Multistream(false)、Reset 和 bufio.Reader 区分成员边界、正常尾部与损坏数据。322 收藏 -
用 Python asyncio.TaskGroup 管理关联协程:任务失败时统一取消剩余任务,在上下文退出后用 ExceptionGroup 分层处理异常,并正确完成取消清理。322 收藏