Go语言技术文章
-
数据库 · Redis | 3星期前 | Redis · 分页 · 缓存设计 · 排行榜 · Sorted Set · ZREVRANK Redis Sorted Set 排行榜 同分排名 排行榜翻页 历史榜单
讲清 Redis Sorted Set 排行榜中同分排序与业务名次的区别,并给出并列排名、版本化翻页、周期键历史榜单和过期保留的实用设计。189 收藏 -
eBPF 验证器不仅检查指令数量,还会沿分支模拟寄存器、栈、指针类型和标量范围。宽范围循环、路径相关指针和无法合并的状态会迅速放大验证复杂度。本文从状态空间解释原因并给出排查与收敛方法。189 收藏 -
Java 的 Pattern Matching switch 可以沿着 sealed 类型层级做穷尽匹配。本文用订单事件模型拆开直接子类型、叶子类型、default、null 和新增实现后的编译影响。189 收藏 -
GitHub 为 Dependabot 组织级私有注册表新增 Anonymous 认证方式。本文说明它适合什么镜像、覆盖哪些仓库、如何重新创建配置,以及 github.com 与 GHES 3.24 的可用边界。189 收藏 -
这组原创9:16手机壁纸只围绕局部黄铜齿轮展开:主图使用暖金斜切光线并为锁屏时间保留顶部暗部,变体改用冷青环形光线和中下部主体。两张图均无文字、无水印、无设备外框,附完整中英文提示词、色彩变量与下载按钮。189 收藏 -
Go log/slog 用 Group 组织单条日志字段,用 WithGroup 和 With 复用公共字段,再用 GroupAttrs 接入动态 Attr 切片。本文按 request、user 和 order 场景说明字段层级与基准指标的检查方法。189 收藏 -
Go TLS 客户端默认使用主机信任根,不会凭空信任自签名根证书。本文解释 RootCAs 的来源,并给出保留系统根证书、追加私有根证书的安全写法。189 收藏 -
Go errors.Is 判断包装错误不生效时,优先检查 %w 是否保留错误链、哨兵错误是否复用,以及自定义 Is 是否只做稳定的浅匹配。189 收藏 -
Go filepath.Glob 返回空切片不一定是异常:模式写错才会返回 filepath.ErrBadPattern,而目录不存在、没有匹配项和部分文件系统错误可能都表现为空结果。本文给出清晰的判断与补查方式。189 收藏 -
systemd ProtectSystem 通过文件系统命名空间把服务写入权限收敛到明确目录,本文对比 true、full、strict,并说明 ReadWritePaths、StateDirectory 与常见写入失败边界。189 收藏 -
bytes.Buffer.Truncate 处理的是未读窗口:它保留前 n 个未读字节并丢弃后面的内容。本文区分 Read、Next、Truncate、Reset 的边界,说明如何消费前缀、截断尾部以及避免参数越界和切片失效。189 收藏 -
Service Worker 只缓存同源静态资源时,关键是同时检查请求 origin 和 Request.destination,排除接口、页面导航与跨源资源,再用 Cache.match、fetch 和 Cache.put 组成缓存优先策略。本文还说明 HTTPS、localhost、作用域和缓存版本更新的排查边界。189 收藏 -
Grafana Alloy 迁移 OpenTelemetry Collector 配置时,convert 转换、旧格式兼容运行和生产切换是三件不同的事。本文按组件映射、诊断报告和回退条件说明如何迁移为 River。189 收藏 -
Java HttpClient 的 connectTimeout 负责新连接建立,HttpRequest.timeout 负责请求响应等待。本文用 Java 代码和异常边界说明两者的作用域、连接复用影响与排查方法。189 收藏 -
介绍 Java CRC32C 如何对数组区间、流式读取和 ByteBuffer 分块持续计算校验值,重点说明实际长度、position、getValue 与 reset 的边界。189 收藏