go_weekly_2025-10-09

2025-10-08 00:00

原文链接

精选

1. qjs: Run JavaScript in Go

无需Cgo的JavaScript运行时,通过Wazero运行QuickJS WASM,支持Go与JS零拷贝值共享和双向函数调用。


2. How Cloudflare Found a Bug in Go’s arm64 Compiler

Cloudflare在Go arm64编译器中发现的罕见bug及其修复过程,展示了大规模使用时的调试经验。


3. How to Reproduce and Fix an I/O Data Race with Go and DTrace

使用DTrace复现和修复Go中涉及文件系统的数据竞争问题,提供具体的问题定位和解决方案。


4. yzma: Perform Local Inference with VLMs and LLMs

通过purego和ffi直接调用llama.cpp,实现Go本地视觉语言模型和大语言模型推理,无需CGo。


5. Lo v1.52.0: A Lodash-Style Library for Go 1.18+

为Go提供类似Lodash的实用工具方法,支持切片、映射等操作,新版改进了功能并提供了文档站点。


其它

1. Reverse Engineering Doesn’t Have to Be Hard

逆向工程Go恶意软件的入门教程,介绍基本技术方法,适合初学者学习。


2. Terminating Elegantly: A Guide to Graceful Shutdowns

针对Kubernetes中Go应用的优雅关闭指南,提供实用的实现技巧。


3. Killing O(n): How ‘Timing Wheels’ Expire 10 Million Keys Effortlessly in Go

使用时间轮算法在Go中高效处理大量键过期,显著提升性能。


4. Breaking Down Go’s sync Package

深入解析Go sync包的使用方法和内部机制,帮助开发者更好地处理并发。


5. PG Back Web 0.5: A Postgres Backup System with Web Interface

带Web界面的Postgres备份系统,支持定时备份、监控和webhook,兼容Postgres 18。


6. Ebitengine v2.9.0

2D游戏引擎大幅提升矢量图形渲染质量,为游戏开发提供更好支持。


7. Ginkgo 2.26

成熟测试框架新增JSON格式报告生成功能,兼容go test格式。