<?xml version="1.0" encoding="UTF-8"?><rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Go语言中文网 - Go周刊</title><link>https://studygolang.com/go/weekly</link><atom:link href="http://rsshub.rssforever.com/studygolang/go/weekly" rel="self" type="application/rss+xml"></atom:link><description>Go语言中文网 - Go周刊 - Powered by RSSHub</description><generator>RSSHub</generator><webMaster>contact@rsshub.app (RSSHub)</webMaster><language>en</language><lastBuildDate>Sat, 16 May 2026 13:34:34 GMT</lastBuildDate><ttl>5</ttl><item><title>Golang 用不到2000行代码实现一个零拷贝的消息队列</title><description>&lt;p&gt;极致性能：明确标注单机 140,000+ msg/s 的吞吐量。&lt;/p&gt;
&lt;p&gt;技术亮点：&lt;/p&gt;
&lt;p&gt;Zero-Copy：强调 Protobuf 二进制直存，消除序列化开销。&lt;/p&gt;
&lt;p&gt;Global Signal Hub：介绍基于 PSubscribe 的单连接唤醒引擎，亚毫秒级延迟。&lt;/p&gt;
&lt;p&gt;Event-Driven Push：解释如何通过事件驱动消除传统轮询延迟。&lt;/p&gt;
&lt;p&gt;Self-Healing：利用 Redis PEL 打造的自愈能力。&lt;/p&gt;
&lt;p&gt;代码精简：强调在 2000行代码 内实现了如此复杂的功能，展现工程美感。&lt;/p&gt;
&lt;p&gt;项目地址：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/chowyu12/gmq&quot;&gt;https://github.com/chowyu12/gmq&lt;/a&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/18661</link><guid isPermaLink="false">https://studygolang.com/topics/18661</guid><pubDate>Tue, 06 Jan 2026 01:58:24 GMT</pubDate><author>chowyu12hikerwu</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 205 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue205/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 代码编辑器排行&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/dunglas/frankenphp&quot;&gt;frankenphp v1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个现代的 PHP app server，Go 语言实现。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://gitlab.com/pygolo/py&quot;&gt;py v0.2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 扩展 Python，反之亦然。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/pdfcpu/pdfcpu&quot;&gt;pdfcpu v0.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言 PDF 处理器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/openfga/openfga&quot;&gt;openfga v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个高性能和灵活的授权/权限引擎。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/errata-ai/vale&quot;&gt;vale v2.30 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个语法感知的文本校对工具，它可以用于检查文本的拼写、风格和语法错误，并提供了快速和可扩展的特性。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/grpc/grpc-go/releases/tag/v1.40.0&quot;&gt;grpc-go 1.40.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;gRPC Go 的实现。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/boyter/scc&quot;&gt;scc v3.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;与 cloc，sloccount 和 tokei 类似的工具。用于计数许多编程语言中的代码行，空行，注释行和源代码的物理行。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/0Ez3TYRgupB6Ko_JpKfHJw&quot;&gt;Golang 的 websocket 使用和实现代码分析&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;websocket 实操，分享它使用和底层实现！&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/I2UmqcwEJnef9NIJvPRrCg&quot;&gt;TIOBE 2023 年 12 月编程语言榜单：年度编程语言预测&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 排第几了？&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/zXDvOoNLJDRR9Bu5CeZc7Q&quot;&gt;一文搞懂Go gRPC服务Handler单元测试&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在云原生时代和微服务架构背景下，HTTP和RPC协议成为服务间通信和与客户端交互的两种主要方式。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/Y6r6EWZtP_Lbz6OOCMgswQ&quot;&gt;grpc-go 从使用到实现原理全解析！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本期将从rpc背景知识开始了解，如何安装进行开发前的环境准备，protobuf文件格式了解，客户端服务端案例分享等，逐渐深入了解如何使用grpc-go框架进行实践开发。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://eli.thegreenplace.net/2023/sign-in-with-github-in-go/&quot;&gt;在Go中使用GitHub登录&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这篇文章主要讨论了如何在Go语言的Web应用程序中集成GitHub登录功能。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/zombiezen/go-sqlite&quot;&gt;go-sqlite&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 的实现，不过没有实现 database/sql 接口，而是另外一套 API。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/go-redsync/redsync&quot;&gt;redsync&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 Redis 的分布式互斥锁。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/go-co-op/gocron&quot;&gt;gocron&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;简单流畅的 Go cron 调度。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/bracesdev/errtrace&quot;&gt;errtrace&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 错误的堆栈跟踪替代方案。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/leodip/goiabada&quot;&gt;goiabada&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Goiabada 是一个用 Go 编写的 OAuth2/OpenID Connect 服务器。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/ubavic/wave&quot;&gt;wave&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个非常简单的合成器。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/gdamore/tcell&quot;&gt;tcell&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Tcell 是一个替代的终端包，在某些方面类似于 termbox，但在其他方面更好。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/google/osv.dev&quot;&gt;osv.dev&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;开源漏洞数据库和分类服务，谷歌出品。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/17049</link><guid isPermaLink="false">https://studygolang.com/topics/17049</guid><pubDate>Sun, 17 Dec 2023 14:20:36 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 204 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue204/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 14 周年。&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/redis/go-redis&quot;&gt;go-redis v9.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类型安全的 Redis Go 客户端。JSON 支持。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/caarlos0/env&quot;&gt;env v10.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;简单的 lib 可以将环境变量解析为结构体。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/uber-go/goleak&quot;&gt;goleak v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Uber 出品的 goroutine 泄露检测器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/spf13/cobra&quot;&gt;cobra v1.8.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个构建现代 CLI APP 的框架。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/fatih/color&quot;&gt;color v1.16 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;颜色文本输出包。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/nlpodyssey/spago&quot;&gt;spago v1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 的机器学习库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/dvZcAG1gXIbll_aQI8KYFg&quot;&gt;为什么使用Golang而非Rust开发桌面应用？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MoonGuard 团队选择 Golang 而不是 Rust 作为他们的 Krater 桌面应用程序，因为 Golang 中更容易进行内存管理、类型安全和 ORM 支持。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/uTnb9QQrFfs5jdmFmFzd7Q&quot;&gt;Go1.21.4 发布了：官方图片竟然用的 loong64&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方发布了 Go1.21.4 和 Go1.20.11，这是两个小版本，主要是 2 个安全更新，涉及 path/filepath 库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/PJJjOhhhF_3mteF3gK7JCg&quot;&gt;最好的 Go 框架就是不用框架？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;许多人建议你根本不应该（在 Go 中）使用框架。他们疯了吗？&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/vlpTUltiV_ZR8Ql95h5lBQ&quot;&gt;必须知道的 17 个Go开发库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;随着时间的推移，Go语言爱好者已经创建并共享了许多Go框架和库。这些库有不同的功能，从微服务开发到构建web应用程序。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/_iT9GAtn0hQXDQYW_PbPCA&quot;&gt;通过实例理解Web应用用户密码存储方案&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这篇文章中，我们就来说说Web应用的各种密码存储方案的优缺点，并通过实例来理解一下当前的主流存储方案。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/dolthub/doltgresql&quot;&gt;doltgresql&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;世界上第一个版本控制 SQL 数据库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/vauntdev/tqla&quot;&gt;tqla&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个小型轻量级文本解析器，包装了 Go 语言 text/template 标准库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/warrant-dev/warrant&quot;&gt;warrant&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种高度可扩展的集中式授权服务，用于定义、存储、查询、检查和审计应用程序授权模型和访问规则。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/jftuga/ttlMap&quot;&gt;ttlMap&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种 Go 语言 map，其中条目在给定时间段后过期。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/deepmap/oapi-codegen&quot;&gt;oapi-codegen&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;从 OpenAPI 3 规范生成 Go 客户端和服务器样板。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/darkhz/bluetuith&quot;&gt;bluetuith&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于 Linux的 TUI 蓝牙管理器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/mariocandela/beelzebub&quot;&gt;beelzebub&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个安全的低代码框架，利用 AI 进行系统虚拟化。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16914</link><guid isPermaLink="false">https://studygolang.com/topics/16914</guid><pubDate>Sun, 12 Nov 2023 12:52:59 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 203 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue203/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：考虑一个更好的 Go JSON 库 &amp;lt;&lt;a href=&quot;https://github.com/golang/go/discussions/63397&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/golang/go/discussions/63397&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.reddit.com/r/golang/comments/17dvp7c/what_is_the_best_ide_for_golang/&quot;&gt;Go 语言最好的 IDE 是哪个？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Reddit 上的一个问题，你觉得是哪个？&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://blog.scottlogic.com/2023/10/18/the-state-of-webassembly-2023.html&quot;&gt;WebAssembly 2023 调查结果&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 是 WASM 项目中第四大最受欢迎的语言。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/go-echarts/go-echarts&quot;&gt;go-echarts v2.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Golang 可爱的图表库。想将条形图，线形图，饼图或其他图表放在一起吗？该库能实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/reugn/go-quartz&quot;&gt;go-quartz v0.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小型、零依赖的调度库，启发自 Java 的 Quartz。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/bits-and-blooms/bloom&quot;&gt;bloom v3.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的 Bloom filters 实现。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/fsnotify/fsnotify/releases/tag/v1.6.0&quot;&gt;fsnotify v1.7.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文件系统事件通知。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/treeverse/lakeFS&quot;&gt;lakeFS v1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将对象存储转换为类似 Git 的存储库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://dev.to/chasefleming/building-a-counter-app-with-htmx-go-fiber-and-elem-go-9jd&quot;&gt;使用 htmx、Go Fiber 和 elem-go 构建计数器应用程序&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;三个库的使用。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/r5_zuEX1PyJ9FXW9Uth6Lg&quot;&gt;Go 语言如何获取 CPU 利用率&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文主要介绍在 Linux 中如何获取 CPU 利用率。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/ubSfSAT7kVmnCAZly13F0Q&quot;&gt;通过实例理解Go Web身份认证的几种方式&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这篇文章中，我就通过Go示例和大家一起探讨一下当前Web应用开发中几种常见的主流身份认证方式，帮助自己和各位读者迈出Web应用开发修炼之路的第一步。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://colobu.com/2023/10/22/how-to-use-pipe-in-Go-exec-Command/&quot;&gt;如何在Go语言中实现Unix风格的进程管道？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你觉得如何实现？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://upstash.com/blog/upgradable-rwlock-for-go&quot;&gt;Go 的可升级读写锁&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这篇博文中，我们将探讨Go中可升级读写锁的实现。我们将通过给出现实世界用例中的具体示例来讨论我们为什么需要它，并在博文中讨论潜在的陷阱。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/chasefleming/elem-go&quot;&gt;elem-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类型安全的 Go 库，用于创建和操作超文本标记语言元素（使用 htmx 助手）。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/aziis98/go-fsrouter&quot;&gt;go-fsrouter&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个简单的文件系统路由器库，启发自 Next.js。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/alexedwards/scs&quot;&gt;scs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;HTTP Session 管理。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/Zi0P4tch0/RadioGoGo&quot;&gt;RadioGoGo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 驱动的 CLI， 通过时尚的 TUI 浏览全球无线电波。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/sachaos/viddy&quot;&gt;viddy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;现代的 Watch 命令。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/Tufin/oasdiff&quot;&gt;oasdiff&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;命令行和 Go 包，用于比较和检测 OpenAPI 规范中的重大更改。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16877</link><guid isPermaLink="false">https://studygolang.com/topics/16877</guid><pubDate>Sun, 29 Oct 2023 13:47:56 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 202 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue202/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：让大家久等了&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/cosmtrek/air&quot;&gt;air v1.47.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 应用程序的实时重新加载。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/vektra/mockery&quot;&gt;mockery v2.36 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;提供了轻松为 Go 接口生成 mock 的功能。它删除了使用 mock 所需的样板代码。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/spf13/viper&quot;&gt;viper v1.17 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个功能强大且灵活的 Go 应用程序配置解决方案。v1.17 需要 Go 1.19 并添加了log/slog支持。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/sashabaranov/go-openai&quot;&gt;go-openai v1.16.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Golang SDK，包括 ChatGPT、GPT-3、GPT-4 等，增加了一些示例：&amp;lt;&lt;a href=&quot;https://github.com/sashabaranov/go-openai#other-examples&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/sashabaranov/go-openai#other-examples&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/charmbracelet/mods&quot;&gt;mods v1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;命令行中的 AI。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/carlmjohnson/requests&quot;&gt;requests v0.23.5&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;HTTP 客户端库，还带有用于构建自定义 http 传输的工具，包括用于测试的请求记录器和重放器。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/zbV2UwHYvgsuwnXR2Vr04Q&quot;&gt;Go项目目录该怎么组织？官方终于出指南了！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这篇文章中，我们就来看看这份官方指南，看看官方推荐的Go项目目录布局是什么样子的。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/edD9VBH5UcR23GdLruisfg&quot;&gt;怎么回事？Go 又发布版本更新了：Go1.21.3&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方发布了 Go1.21.3 和 Go 1.20.10，上一版本发布才几天，可见又是安全更新。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/4h0wT9Z9QsoMmWGQGJw0XA&quot;&gt;编译Go应用的黑盒挑战：无源码只有.a文件，你能搞定吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文就来从技术角度来探讨一下这些 hack 方法，但并不推荐使用！&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/9HRnjKZxCkAoOe1rnihPBA&quot;&gt;Go和C++通用性能优化黑魔法——PGO！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文会介绍 PGO 的原理，以及 Go/C++ 语言进行 PGO 的实践。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://hjr265.me/blog/adding-icons-for-go-built-windows-executable/&quot;&gt;为 Go 构建的 Windows 可执行文件添加图标&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;开发 Windows 程序的可以看看，基于 &amp;lt;&lt;a href=&quot;https://github.com/akavel/rsrc&amp;amp;gt&quot;&gt;https://github.com/akavel/rsrc&amp;amp;gt&lt;/a&gt;; 库。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gokrazy/gokrazy&quot;&gt;gokrazy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将 Go 程序转成可在 Raspberry Pi 3、Pi 4、Pi Zero 2 W 或 amd64 PC 设备上运行。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://gitlab.com/greyxor/slogor&quot;&gt;slogor&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个色彩丰富的 slog 处理程序。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/DynamiteMC/Dynamite&quot;&gt;Dynamite&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 编写的 Minecraft 服务器软件。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/a-h/templ&quot;&gt;templ&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种用于在 Go 中编写超文本标记语言用户界面的语言。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/cvilsmeier/sqinn-go&quot;&gt;sqinn-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;SQLite 驱动，纯 Go 实现。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/xataio/pgroll&quot;&gt;pgroll&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PostgreSQL 零停机迁移变得容易。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://tour.ardanlabs.com/tour/eng/list&quot;&gt;Go Tour&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;终极 Go 教程，英文版。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/mylxsw/aidea-server&quot;&gt;aidea-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一款集成了主流大语言模型以及绘图模型的 APP，采用 Flutter + Golang 开发。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/webws/embedding-knowledge-base&quot;&gt;embedding-knowledge-base&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 基于 golang 和 chatgpt qdrant 实现的 AI 知识库 cli。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16850</link><guid isPermaLink="false">https://studygolang.com/topics/16850</guid><pubDate>Sun, 22 Oct 2023 13:52:21 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 201 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue201/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：终端的 JSON 查看器 &amp;lt;&lt;a href=&quot;https://fx.wtf/&amp;amp;gt&quot;&gt;https://fx.wtf/&amp;amp;gt&lt;/a&gt;;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://wails.io/zh-Hans/&quot;&gt;Wails v2.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;构建跨平台的桌面应用。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/Shpota/goxygen&quot;&gt;goxygen v0.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分分钟生成一个全栈 Web 项目（Go，Angular/React/Vue），现在支持 Go1.21。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/alecthomas/participle&quot;&gt;participle v2.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的解析器（Parser）。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/charmbracelet/lipgloss&quot;&gt;lipgloss v0.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;漂亮的终端布局的风格定义。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/jhillyerd/enmime&quot;&gt;enmime v1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;enmime 是 Go 的 MIME 编码和解码库，专注于生成和解析 MIME 编码的电子邮件。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/pemistahl/lingua-go&quot;&gt;lingua-go v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最准确的Go自然语言检测库，长短文本均适用。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/antonmedv/fx&quot;&gt;Fx v30.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;终端 JSON 查看器。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/go-resty/resty&quot;&gt;Resty v2.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的简单 HTTP 和 REST 客户端库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/VMzhyySny60zABnxlzlVjQ&quot;&gt;Golang高性能编程实践&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 中高性能编程是一个经久不衰的话题，本文尝试从实践及源码层面对 Go 的高性能编程进行解析。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://tonybai.com/2023/09/23/p2p-rtc-implementation-with-go-and-webrtc-data-channel/&quot;&gt;使用Go和WebRTC data channel实现端到端实时通信&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;近期，一项目恰用到了RTC技术，我就顺便翻阅了一些资料，并用Go建立了一个端到端数据通信的小demo，这里给大家分享一下。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://tonybai.com/2023/09/10/understand-go-forward-compatibility-and-toolchain-rule/&quot;&gt;聊聊Go语言的向前兼容性和toolchain规则&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文就和大家详细聊聊Go语言的向前兼容性以及Go 1.21中新引入的toolchain的使用规则。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://www.dolthub.com/blog/2023-09-08-much-ado-about-nil-things/&quot;&gt;关于nil的事情：更多的陷阱&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;之前，我写了一篇关于困扰Go新手的陷阱的文章。这些都是我在使用go-mysql-server时个人学到的每一课，go-mysql-server是完全用Go编写的MySQL的直接替代品。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/zmb3/spotify&quot;&gt;spotify&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Spotify Web API 的 Go 封装。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/rednafi/httpurr&quot;&gt;httpurr&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在终端快速查看 HTTP 状态码信息。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/leaanthony/u&quot;&gt;u&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将 “unset” 状态添加到 Go 的类型。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/zalando/skipper&quot;&gt;skipper&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于服务组合的 HTTP 路由器和反向代理。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/go-slog/awesome-slog&quot;&gt;awesome-slog&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;slog 包相关的文章。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/eliben/static-server&quot;&gt;static-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于提供静态文件的简单、零配置 HTTP 服务器 CLI。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/johnfercher/maroto&quot;&gt;maroto&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种创建 PDF 的 maroto 方式。Maroto 受到 Bootstrap 的启发，使用 gofpdf。快速简单。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16761</link><guid isPermaLink="false">https://studygolang.com/topics/16761</guid><pubDate>Sun, 24 Sep 2023 12:54:51 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 200 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue200/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 项目的代码库生成器&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/antonmedv/expr&quot;&gt;expr v1.15.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的表达式语言。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/AlexxIT/go2rtc&quot;&gt;go2rtc v1.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;支持各种协议的流媒体应用程序。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/juicedata/juicefs&quot;&gt;juicefs v1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 redis 和 S3 构建的分布式 POSIX 文件系统。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/johnkerl/miller&quot;&gt;miller v6.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文本数据处理的瑞士军刀，Go 实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/StackExchange/dnscontrol&quot;&gt;dnscontrol v4.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于维护 DNS 区域的系统。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/rabbitstack/fibratus&quot;&gt;fibratus v2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Windows 内核勘探和追踪的现代工具。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/osrg/gobgp&quot;&gt;gobgp v3.18 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;BGP 的 Go 实现。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/7nK4whfh0Owwhmq_67_eYg&quot;&gt;盘点 Go 语言的那些日志库：你用了哪个？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在本文中，将介绍Go语言中最流行和最优秀的日志库，并给出每个库的使用示例代码。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/2tFBe6LH84dZnOcfkgX32w&quot;&gt;探索 Go1.21 中的 slices 包：原理，特点和示例&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;slices 标准库是 Go 1.21 新增的一个包，它提供了许多对切片（slices）进行常见操作的泛型函数，可以适用于任何元素类型的切片。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/bOvXuDl-h1YTa4i1LlHqWQ&quot;&gt;Go 1.21 是不是还没用上？新版又来了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go Team 发布了 Go1.21.1 和 Go1.20.8，这是两个小版本，主要涉及安全更新。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/dOroy7XZk4SWFcl2PZtzzw&quot;&gt;微服务回归单体，代码行数减少75%，性能提升1300%&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;QQ 浏览器搜索 —— 基础架构团队出品。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/a2LSIrPSTjo5zlWWiEpjUA&quot;&gt;吵翻了！到底该选 Rust 还是 Go，成2023年最大技术分歧&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;虽然 Rust 和 Go 在语法和风格上差别很大，但它们都是构建软件的一流工具。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/lotusdblabs/lotusdb&quot;&gt;lotusdb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 编写的最先进的键值存储，速度极快，兼容 LSM 树和 B+ 树。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/pion/turn&quot;&gt;turn&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于构建 TURN 客户端和服务器的 API。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/ShindouMihou/siopao&quot;&gt;siopao&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Golang 的简化文件操作。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://autostrada.dev/&quot;&gt;autostrada&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 项目的代码库生成器。一个站点，可让你从各种选项中进行选择（webapp与JSON API、SQLite与Postgres-添加身份验证、安全cookie、会话等），然后下载从这些选项构建的自定义代码库以继续构建应用程序。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/avamsi/climate&quot;&gt;climate&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;CLI Mate 旨在让在 Go 中创建 CLI 变得简单（而且有趣！），类似于 python-fire。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://codeberg.org/gothub/gothub&quot;&gt;gothub&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 编写的 GitHub 替代前端。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16699</link><guid isPermaLink="false">https://studygolang.com/topics/16699</guid><pubDate>Sun, 10 Sep 2023 12:42:06 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 199 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue199/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：一图掌握 Go1.21 的新特性&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/go/issues/61897&quot;&gt;新提案：新包 iter&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;迭代用，rsc 提出的。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/tinygo-org/tinygo/releases/tag/v0.29.0&quot;&gt;tinygo 0.29.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;支持 Go1.21。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/qax-os/excelize&quot;&gt;Excelize 2.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于处理 Excel/XLSX 文档的库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/tetratelabs/wazero&quot;&gt;wazero v1.5.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;零依赖的 WebAssembly 运行时库。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/Shopify/toxiproxy&quot;&gt;toxiproxy v2.6.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;模拟混乱网络条件的 TCP 代理。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v1.9.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/pdfcpu/pdfcpu&quot;&gt;pdfcpu v0.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言 PDF 处理器。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://betterstack.com/community/guides/logging/best-golang-logging-libraries/&quot;&gt;Go 日志包：前 8 个库的比较&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;zap、zerolog、slog 等。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/BW8buklwMCi_0M6AK0H0iA&quot;&gt;Go设计模式之责任链模式&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;设计模式掌握下。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/2Lx1XsgpDskZrxpdW7Ki1Q&quot;&gt;Go：异或运算的妙用&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过对两个相同长度的二进制数进行逐位比较，若对应位的值不同，结果为 1, 否则结果为 0。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://tonybai.com/2023/08/30/how-to-build-with-only-archive-in-go/&quot;&gt;编译Go应用的黑盒挑战：无源码只有.a文件，你能搞定吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文就来从技术角度来探讨一下这些hack方法，但并不推荐使用！&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://tonybai.com/2023/09/01/slog-a-new-choice-for-logging-in-go/&quot;&gt;slog正式版来了：Go日志记录新选择！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 1.21 正式版包含的。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/zknill/sqledge&quot;&gt;sqledge&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将 postgres 复制到 SQLite。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/IBM/fp-go&quot;&gt;fp-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 函数式编程库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/platypusguy/jacobin&quot;&gt;jacobin&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个不仅仅是用 Go 编写的最小JVM，能够运行 Java 17 个类。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/morrisxyang/xreflect&quot;&gt;xreflect&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;简单易用的反射工具库，支持设置嵌套结构体字段，函数调用等。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/webws/go-moda&quot;&gt;go-moda&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个基于 Go 语言的通用 http grpc 开发框架。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://miro.com/app/board/uXjVMBkmPPQ=/&quot;&gt;Go1.21 可视化指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;思维导图掌握 Go1.21 新特性，还有 Go1.18 ~ Go1.20 的。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/alexellis/arkade&quot;&gt;arkade&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;面向开发人员工具的开源市场。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/docker/compose&quot;&gt;compose&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Docker 定义和运行多容器应用程序。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16668</link><guid isPermaLink="false">https://studygolang.com/topics/16668</guid><pubDate>Sun, 03 Sep 2023 12:43:17 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 198 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue198/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go1.21 发布&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/dgraph-io/badger&quot;&gt;BadgerDB v4.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;BadgerDB 是一个用纯 Go 编写的可嵌入，持久和快速键值（KV）数据库。 它是 Dgraph（快速，分布式图数据库）的基础数据库。它打算成为 RocksDB 等非基于 Go 的键值存储的高性能替代品。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/go-playground/validator&quot;&gt;validator v10.15.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;该验证器基于标签对结构和单个字段实现值验证。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/charmbracelet/pop&quot;&gt;pop v0.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过终端发送邮件。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/openfga/openfga&quot;&gt;openfga v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个高性能和灵活的授权/权限引擎。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/avast/retry-go&quot;&gt;retry-go v4.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;简单的重试机制包。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/go-kratos/kratos&quot;&gt;kratos v2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;B 站开源的 Go 微服务框架。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/6dLtjHbtDRekVHC8G_Rv9w&quot;&gt;Go 每日一库之 zap 高性能设计与实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;zap 是 Uber 开源的 Go 高性能日志库，性能远超于标准库和其他开源日志库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/YIz1s5eSXy3t4feSWxJiAg&quot;&gt;Go中url.ParseRequestURI和url.Parse函数的踩坑记&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;实际工作中遇到的问题。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/FLW0v_3qZOi8GjB3dtDavA&quot;&gt;Go 2永远不会给Go 1带去破坏性变化&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;rsc 说不会破坏。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/am9dfFLnRE51ETwEnsOu2w&quot;&gt;Go每日一库之 vegeta — http压力测试工具库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;今天给大家推荐的是一个对HTTP接口做压力测试的工具：vegeta。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://dev.to/mokiat/proper-http-shutdown-in-go-3fji&quot;&gt;在 Go 中正确关闭 HTTP&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;直到今天，我仍然遇到在Go中优雅地关闭HTTP服务器时遇到问题的代码。这就是为什么我决定写一篇关于这个的文章。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://colobu.com/2023/08/18/go1-21-generics/&quot;&gt;Go 1.21 中的泛型推断&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 1.21 已经发布了，带来了一系列的改进，例如更好的泛型类型推断（本文的内容）;新的内置函数min&lt;code&gt;,max和clear&lt;/code&gt;;以及标准库中的几个新软件包（maps&lt;code&gt;,slices&lt;/code&gt;,cmp&lt;code&gt;,log/slog和testing/slogtest&lt;/code&gt;)。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/ebitengine/oto&quot;&gt;oto&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在多个平台上播放声音的低级库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/iamkoch/ensure&quot;&gt;ensure&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于场景的 Go 测试框架。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/lomsa-dev/gonull&quot;&gt;gonull&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于轻松处理可为空值的Go包。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/swiftcarrot/queryx&quot;&gt;queryx&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;支持数据库自动管理的 Go ORM。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/here-Leslie-Lau/mongo-plus&quot;&gt;mongo-plus&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;简易的mongodb库。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.jaminologist.com/gophercon-uk-2023-the-ultimate-review-were-so-back/&quot;&gt;GopherCon UK 2023&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;终极回顾 - 我们回来了！&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://changelog.com/gotime/288&quot;&gt;Go 播客第 288 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;深入了解 Go 的堆栈。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://aicodeconvert.com/&quot;&gt;开源的代码转换工具（作者自荐）&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;支持：自然语言转代码，描述需求就生成对应的代码；把代码一键转换为另一种代码语言实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/giftDad/protoc-gen-validate&quot;&gt;protoc-gen-validate&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;基于proto文件的注解，为每个 message 生成 validate 函数。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/Kubernetes-Learning-Playground/multi-cluster-informer&quot;&gt;multi-cluster-informer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于golang实现的k8s多集群多资源的简易informer监听。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16646</link><guid isPermaLink="false">https://studygolang.com/topics/16646</guid><pubDate>Sun, 27 Aug 2023 12:49:02 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 197 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue197/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：go env&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://google.qualtrics.com/jfe/form/SV_4Vi4bNaMQhQdqSi?s=b&quot;&gt;Go 开发者调查开始&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;官方的调查。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/TypicalAM/goread&quot;&gt;goread v1.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个漂亮的可以在终端中阅读你的 RSS 提要！&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/golang/go/issues/61637&quot;&gt;提案：database/sql 增加新的 scan&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这个 Scan 即将整行扫描为一个值的方法。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/beevik/ntp&quot;&gt;ntp v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于查询你选择的网络时间协议服务器的当前时间。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/elastic/go-elasticsearch&quot;&gt;ElasticSearch Go 8.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;ElasticSearch Go 8.7 官方客户端发布。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/peterbourgon/ff&quot;&gt;ff v3.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;该库对 flag.FlagSet 进行了扩展，支持按照命令行、配置文件、环境变量的顺序进行读取。这次的更新，支持从 yaml 配置格式读取配置。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/cidtQEAfuFWuYveKFbFvKQ&quot;&gt;GoLand 2023.2 发布：有 AI 助手&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;改进了与 Go 模块的集成，添加了用于将函数参数迁移到方法接收器（反之亦然）的重构，提供了 Kafka 监控插件，并支持 &lt;a href=&quot;http://error.is/&quot;&gt;error.Is&lt;/a&gt; 和 &lt;a href=&quot;http://error.as/&quot;&gt;error.As&lt;/a&gt;，还有“新的 AI 助手插件”，因为毕竟是 2023 年了。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://www.ardanlabs.com/blog/2023/07/getting-friendly-with-cpu-caches.html&quot;&gt;得到友好的 CPU 缓存&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;帮助 Go 开发者理解 CPU 缓存的原理和重要性，以及如何利用它们来提升程序的性能和质量。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/Wj4Vr0W-cl79Ss5VVSDr_w&quot;&gt;抽丝剥茧，记一次 Go 程序性能优化之旅&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;可以看看。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/Hq_jF5LdaM5bOwDlLCw7uA&quot;&gt;Go 语言 iota 的神奇力量&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文将带着大家深入探讨 iota 的神奇力量，包括 iota 的介绍和应用场景以及使用技巧和注意事项。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/FkqCidcHlH2cadtsSft-ig&quot;&gt;Go 项目分层下的最佳 error 处理方式&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文将探讨 Go 项目分层下的最佳 error 处理方式。准备好了吗？准备一杯你最喜欢的饮料或茶，随着本文一探究竟吧。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/QEBdspMhEBcCwgHouS9cKQ&quot;&gt;Go 每日一库之比标准库更快 hash 算法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;该库是 go 语言实现的 xxHash 算法，比标准库性能更高，最终生成一个 64 位的整型 hash 值。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/bYob9smOpmTZyrxBeIAEVg&quot;&gt;Go 语言的安全守护者&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为了帮助开发者发现和修复这些漏洞，Go 团队在 2021 年 11 月发布了一个新的工具：Govulncheck，Go 语言的安全守护者。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/nikolaydubina/llama2.go&quot;&gt;llama2.go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;LLaMA-2 Go 接口。还有另外一个 &amp;lt;&lt;a href=&quot;https://github.com/tmc/go-llama2&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/tmc/go-llama2&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://godocs.io/git.sr.ht/~jamesponddotco/imgdiet-go&quot;&gt;imgdiet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;imgdiet 包利用 C 的 [libvips] 图像处理库及其 Go 绑定 [govips] 提供了简单快速的图像处理和压缩解决方案。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/roadrunner-server/roadrunner&quot;&gt;roadrunner&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个开源（MIT 许可）高性能 PHP 应用程序服务器、负载均衡器和进程管理器。它支持作为服务运行，并且能够在每个项目的基础上扩展其功能。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/sqlc-dev/sqlc&quot;&gt;sqlc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;从 SQL 生成类型安全代码。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/risor-io/risor&quot;&gt;risor&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;面向 Go 开发人员和 DevOps 的快速灵活的脚本语言。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/deep-project/moss&quot;&gt;moss&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;一款简单轻量的内容管理系统。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/lxzan/gws&quot;&gt;gws&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;高吞吐低消耗用户友好的 websocket server &amp;amp; client。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://pkg.go.dev/golang.org/x/tools/cmd/gonew&quot;&gt;gonew&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个实验性的工具，目的是为了探索如何使用项目模板来简化 Go 开发者的工作流程。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/nickfiggins/tstat&quot;&gt;tstat&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;提供了一种友好的方式来查询 Go 测试输出和覆盖配置文件。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/itchyny/bed&quot;&gt;bed&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的二进制编辑器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/cuishuang/explain-source-code-by-chatgpt&quot;&gt;explain-source-code-by-chatgpt（作者自荐）&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;让 chatgpt 讲解 go 源码中每一个文件，变量，struct 和 func 的作用。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/StudyPlace-io/Golang-Concurrency-Pattern-Demo&quot;&gt;Golang-Concurrency-Pattern-Demo&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;提供各种常见的并发模式 demo。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/chenmingyong0423/go-optioner&quot;&gt;go-optioner&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;一个根据结构体定义自动生成函数选项模式（functional options pattern）代码的工具。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16582</link><guid isPermaLink="false">https://studygolang.com/topics/16582</guid><pubDate>Sun, 06 Aug 2023 05:42:45 GMT</pubDate><author>polarismaliyan</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 196 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue196/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：生成 SDK&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://tip.golang.org/doc/go1.21&quot;&gt;Go 1.21 RC3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;8 月份就要正式发布 Go1.21 了。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/beevik/ntp&quot;&gt;ntp v1.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于查询你选择的网络时间协议服务器的当前时间。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/IBM/sarama&quot;&gt;sarama v1.40 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Sarama 是 Apache Kafka 0.8 及更高版本的 Go 库。最初由 Shopify 创建，现在 IBM 似乎已经接管了控制权，因为 Shopify 希望将来与 librdkafka 绑定。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/uber-go/ratelimit&quot;&gt;Rate Limiter v0.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;该实现基于请求之间经过的时间来重新填充桶，而不是要求间隔时钟离散地填充桶。Uber 出品。&lt;/p&gt;
&lt;p&gt;5、[cmd/compile: overhaul inliner](cmd/compile: overhaul inliner)&lt;/p&gt;
&lt;p&gt;Go 内联计划大修。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/YJp2jxuBwwbPBaMWlDZG9g&quot;&gt;配图清新的Protobuf 编码&amp;amp;避坑指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Protobuf 是一个强大而高效的数据序列化工具。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/AnrV7aDW3uDZc2VZqPGvnA&quot;&gt;GoLang闭包，注意！这里有蹊跷&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;某业务因为一行闭包错误使用的代码，引起了一次“血案”。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://research.swtch.com/coro&quot;&gt;Russ cox 打算在 goroutine 的基础上增加 coroutine 包&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这篇文章是一个关于协程（coroutines）的深入探讨，它从历史和理论的角度，分析了协程的本质和实现方式。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://unidoc.io/post/golang-pdf-library-guide/&quot;&gt;Go PDF库指南： 如何选择正确的PDF库？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这篇文章是一个关于使用Go语言处理PDF文件的指南，它介绍了 unidoc 这个开源的 Go PDF 库，以及它的主要特性和功能。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://dev.to/aurelievache/learning-go-by-examples-introduction-448n&quot;&gt;Go 系列教程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过例子学习 Go，英文的。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/xDjUsdkceox5bn3QNkgfGg&quot;&gt;go channel应用系列之控制协程数量&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;给大家介绍一下如何利用 Go 中的缓冲 channel 来控制协程的数量。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/Vy0c1l6LB-nrqK1CS5pR5A&quot;&gt;jsonparser 为什么比 encoding/json 快 10 倍 ?&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;jsonparser 是一个开源 JSON 包，号称比标准库 JSON 包性能高 10 倍 (具体情况取决于具体的负载大小和数据情况)，内存分配优化到 0。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/hashicorp/memberlist&quot;&gt;memberlist&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于实现分布式系统中的成员管理和故障检测的库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/func25/mongofunc&quot;&gt;mongofunc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为 MongoDB 提供一个更强大和灵活的功能，扩展其查询和操作能力。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/tableflowhq/tableflow&quot;&gt;tableflow&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于在 Go 中处理表格数据的库，它可以让用户使用流式的 API，对表格数据进行各种转换，过滤，聚合，排序，分组等操作。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/charmbracelet/pop&quot;&gt;pop&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过终端发送邮件。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/stefanmaric/g&quot;&gt;g&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;简单地 Go 多版本管理。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/wizsk/goshare&quot;&gt;goshare&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于共享文件的小型 cli 工具，具有漂亮的界面。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/cemister/scaffolder&quot;&gt;scaffolder&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于生成Go代码的工具，它可以根据用户提供的模板和配置文件，自动创建一些常用的代码结构，如接口，结构体，方法，测试等。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16545</link><guid isPermaLink="false">https://studygolang.com/topics/16545</guid><pubDate>Sun, 23 Jul 2023 13:46:55 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 195 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue195/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 终极教程 &amp;lt;&lt;a href=&quot;https://tour.ardanlabs.com/tour/list&amp;amp;gt&quot;&gt;https://tour.ardanlabs.com/tour/list&amp;amp;gt&lt;/a&gt;;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/tetratelabs/wazero&quot;&gt;wazero v1.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;零依赖的 WebAssembly 运行时库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/jaypipes/ghw&quot;&gt;ghw v0.12.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;硬件检查和发现库(无需ROOT权限)。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/cilium/ebpf&quot;&gt;ebpf v0.11.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 实现的 eBPF 库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/progrium/macdriver&quot;&gt;MacDriver 0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于使用 Apple/Mac API 和 Frameworks 的工具包。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/sashabaranov/go-openai&quot;&gt;go-openai v1.13 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Golang SDK，包括 ChatGPT、GPT-3、GPT-4 等。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/hybridgroup/gobot&quot;&gt;gobot v2.1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 编程语言的 IOT 框架（机器人框架）。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/gorilla/mux&quot;&gt;mux&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这个项目现在复活了。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/cAN25v39nPZnDAOwR7K8iQ&quot;&gt;Go 1.20.6 发布：好吧，这也发布一个版本~&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;同时还发布了 Go1.19.11。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/p-PI-HDX-9iatdKU_uRSIw&quot;&gt;7月编程语言排行：Go 要稳坐前十太难了？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;TIOBE 公布了 2023 年 7 月的编程语言排行榜。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://tonybai.com/2023/07/16/the-guide-of-go-testing-with-testify-package/&quot;&gt;使用testify包辅助Go测试指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;如何更好地利用testify来辅助我们的Go测试？&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://colobu.com/2023/06/29/replace-std-map-faster/&quot;&gt;替换标准库的map实现，SwissTable更快？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在最新的一期Go开发团队的每周会议中，他们讨论了Google3再评估SwissTable的性能，或许值得跟进，替换标准库的map。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://gitlab.com/pygolo/py&quot;&gt;py&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 扩展 Python，反之亦然。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/openfaas/faasd&quot;&gt;faasd&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;轻量级 FaaS 引擎。想想没有 Kubernetes 的 OpenFaas。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/alivanz/go-simd&quot;&gt;go-simd&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;非常小众，但以 ARM 为中心的 SIMD 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/josharian/impl&quot;&gt;impl&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为实现接口实现所有方法的 stub。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/boot-go/boot&quot;&gt;boot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 配置与依赖注入。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/Cyphrme/Coze&quot;&gt;Coze&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种加密的 JSON 消息传输规范，专为人类可读性而设计。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.youtube.com/watch?v=vInn3KNF1x4&quot;&gt;在 VSCode 中调试 CLI 程序&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;油管视频。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://changelog.com/gotime/284&quot;&gt;Go 播客第 284 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GopherCon EU 2023。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16516</link><guid isPermaLink="false">https://studygolang.com/topics/16516</guid><pubDate>Sun, 16 Jul 2023 13:07:48 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 194 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue194/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 1.21 execution tracing&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/alecthomas/chroma&quot;&gt;chroma v2.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 实现的通用语法高亮库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/goreleaser/goreleaser&quot;&gt;GoReleaser v1.19 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;尽可能快速、轻松地交付 Go 二进制文件。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/ThreeDotsLabs/watermill&quot;&gt;Watermill v1.3.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个可有效处理消息流的 Go 库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/centrifugal/centrifugo&quot;&gt;Centrifugo v5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;可扩展的实时消息服务器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://docs.pingcap.com/tidb/v7.2/release-7.2.0&quot;&gt;TiDB v7.2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;兼容 MySQL 的分布式 HTAP 数据库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v1.5.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品，这个版本底层提供了对 SQLite 的实验性支持。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/caarlos0/env&quot;&gt;env v9.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;简单的 lib 可以将环境变量解析为结构体。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/Shpota/goxygen&quot;&gt;goxygen v0.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分分钟生成一个全栈 Web 项目（Go，Angular/React/Vue），现在支持 Go1.20。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/kelindar/column&quot;&gt;column v0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的具有位图索引的高性能、列式、内存存储库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/xYnzVz2FDX-rNCgfKwOgAQ&quot;&gt;C++/Go 调用约定的原理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在计算机科学中，调用约定是一种定义子过程从调用处接受参数以及返回结果的方法的约定。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://blog.felixge.de/waiting-for-go1-21-execution-tracing-with-less-than-one-percent-overhead/&quot;&gt;Go 1.21 execution tracing开销从20%下降到不到1%&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;发生了什么？&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://itnext.io/observer-pattern-in-go-483dd8c077de&quot;&gt;Go实现的观察者模式&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;英文版。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/7kFkeRJygydnNoBRtiaSkw&quot;&gt;Go 语言 iota 的神奇力量&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;当你深入研究官网库、开源库或者任何一个 &lt;code&gt;Go&lt;/code&gt; 项目时，你都会发现 &lt;code&gt;iota&lt;/code&gt; 这个神奇的标识符无处不在。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/BBDFQLjQGVAs5WbzhONj2Q&quot;&gt;Go 每日一库之一个快速构建应用程序的脚手架&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;该工具的最大功能就是能够通过一个命令来创建项目。包括目录结构、快速创建mvc层的各个文件等。不用开发者再一一的建立对应文件，极大的提高了研发效率。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/oldNARBchfUbXZmrRFu6BQ&quot;&gt;Go 每日一库之 fastcache 高性能设计与实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;fastcache 是一个线程安全并且支持大量数据存储的高性能缓存组件库。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/uber/mock&quot;&gt;mock&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;之前是 golang 组织下的，不维护了，建议使用 Uber fork 的。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/glycerine/zygomys&quot;&gt;zygomys&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Lisp 解析器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/gurukami/typ&quot;&gt;typ&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;空类型、安全原始类型转换和取值。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.gophercon.com/agenda&quot;&gt;GopherCon&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;日程已经敲定，GopherCon India 也要来了。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/axllent/mailpit&quot;&gt;mailpit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为开发人员提供带有 API 的电子邮件和 SMTP 测试工具。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://betterprogramming.pub/what-i-learned-at-gopherconeu-2aae6bed50f4&quot;&gt;我在GopherConEU 2023大会上的见闻&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一文了解 GopherConEU 2023。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://preslav.me/2023/06/28/podcasts-for-golang-developers/&quot;&gt;Go 开发者播客大全&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;可惜没有中文的。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/stealthrocket/timecraft&quot;&gt;Timecraft&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;执行 WebAssembly 模块的软件运行时，具有沙盒、任务编排和时间机器的能力。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://go-traps.appspot.com/&quot;&gt;Go 陷阱大全&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;各种代码示例。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16474</link><guid isPermaLink="false">https://studygolang.com/topics/16474</guid><pubDate>Sun, 09 Jul 2023 14:14:13 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 193 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue193/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go1.21 RC 发布&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/pemistahl/lingua-go&quot;&gt;lingua-go v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最准确的Go自然语言检测库，长短文本均适用。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/create-go-app/cli&quot;&gt;cli v4.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过运行一个 CLI 命令，创建一个具有后端、前端和部署自动化的项目。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/codenotary/immudb&quot;&gt;immudb v1.5.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于系统和应用程序的轻量级高速不可变数据库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/thomiceli/opengist&quot;&gt;opengist v1.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;由 Git 驱动的自我托管的 Pastebin，GitHub Gist 开源替代方案。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/mongodb/mongo-go-driver&quot;&gt;MongoDB Go Driver 1.12 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的 Go 驱动，官方出品。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/quic-go/quic-go&quot;&gt;quic-go v0.36 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 的 QUIC 实现。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/jpy4cQ0anUrBUPUcb-9G_g&quot;&gt;Go1.21 RC 发布了！！！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;不要怀疑，为什么没见到 RC1，直接 RC2 了？因为打完 go1.21rc1 后发现了一个 bug，然后修复了，所以直接发布 RC2。（实际上 go 仓库是能看到 RC1 tag 的）&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/2BQdYDUDeCpL12S_R1UNPA&quot;&gt;写给go开发者的gRPC教程-metadata&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;和在普通HTTP请求中一样，gRPC提供了在每一次RPC中携带上下文的结构：metadata。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/VJ0iBpezlMs-8Ja-FdoW2w&quot;&gt;布隆过滤器 - 实现和特征&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 描述。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/2PBPX2jKhvotW5N3zutVig&quot;&gt;用 Go 基于 epoll 实现一个最小化 IO库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go圈有很多款异步的网络框架:evio,nbio,gnet,cloudwego/netpoll......&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/9tyiEA7tUZXo_so7-CXfaw&quot;&gt;Go1.21 速览：go.mod 的 Go 版本号将会约束 Go 程序构建，要特别注意了！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这次 Go1.21 的更新中，正式将多年前引入 go.mod 的 Go 行的版本声明使用了起来。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/distribworks/dkron&quot;&gt;dkron&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分布式、容错作业调度系统。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/objectbox/objectbox-go&quot;&gt;objectbox-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;嵌入式 Go 数据库，SQLite、gorm 等的快速替代品。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/morrisxyang/errors&quot;&gt;errors&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;Go 优雅的错误处理。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/janpfeifer/gonb&quot;&gt;gonb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Jupyter 的 Go Notebook 内核。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/hionay/tailer&quot;&gt;tailer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;tailer 是一个 CLI 工具，用于在命令输出停止时插入行。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;http://code.sd/books/migration-to-go/&quot;&gt;migration-to-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;免费电子书：迁移到 Go。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/vanus-labs/vanus&quot;&gt;vanus&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个具有处理能力的无服务器事件流系统。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/Duffney/effortless-golang&quot;&gt;开源电子书 Effortless Golang&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;英文的，目前还没写完。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16453</link><guid isPermaLink="false">https://studygolang.com/topics/16453</guid><pubDate>Sun, 02 Jul 2023 12:48:44 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 192 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue192/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：初始化大 map 的性能  &amp;lt;&lt;a href=&quot;https://www.dolthub.com/blog/2023-06-16-static-map-initialization-in-go/&amp;amp;gt&quot;&gt;https://www.dolthub.com/blog/2023-06-16-static-map-initialization-in-go/&amp;amp;gt&lt;/a&gt;;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/elliotchance/pie&quot;&gt;pie v2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;操作 slice 和 map 的方便库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v1.4.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/Shpota/goxygen&quot;&gt;goxygen v0.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分分钟生成一个全栈 Web 项目（Go，Angular/React/Vue）。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/mvdan/sh&quot;&gt;sh v3.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个支持 Bash 的 Shell 解析器、格式化器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/dolthub/dolt&quot;&gt;dolt v1.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于数据的 Git。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/cloudwego/hertz&quot;&gt;hertz v0.6.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Golang 微服务 HTTP 框架。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/onsi/ginkgo&quot;&gt;Ginkgo v2.11 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;现代的测试框架。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/qntZV3IsFekj0QVW_sd68Q&quot;&gt;mimetype：一文读懂 Go 文件类型检测库的原理和用法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个快速的 Golang 库，用于根据 magic number 来检测媒体类型和文件扩展名。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/b50n3nqdmo8OHdPoal89AA&quot;&gt;Go：pprof新增的火焰图实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;新增了一个选项。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/TX8LZZcuF1J7DNJtb_4sKg&quot;&gt;用 Go 语言讲解死锁、活锁、饥饿、自旋锁&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;图文讲解。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://colobu.com/2023/06/18/a-generic-sortedmap-in-go/&quot;&gt;一个泛型的有序 Go Map 实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 内建的 map类 型对于插入的元素并没有保持它们的插入顺序，遍历的时候也故意设置成随机的。因此，如果我们想让map保持元素的插入顺序，需要借助第三方的库才行，今天就给大家介绍一个这样的库 OrderedMap。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/mohamedattahri/pgfs&quot;&gt;pgfs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 库，它在 Postgres 上使用大对象实现 fs.FS 接口。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/imdario/mergo&quot;&gt;mergo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个帮助合并 Go 结构体和 map 的库，自 2013 年以来一直在使用。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/rosedblabs/rosedb&quot;&gt;rosedb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个基于 &lt;a href=&quot;https://riak.com/assets/bitcask-intro.pdf&quot;&gt;Bitcask&lt;/a&gt; 存储模型，轻量、快速、可靠的 KV 存储引擎。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/anywherelan/awl&quot;&gt;awl&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个网状 VPN 项目，它可以让你轻松地连接到你的任何设备（在 IP 协议层面），无论它们在哪里。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/pgrok/pgrok&quot;&gt;pgrok&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;穷人的 ngrok - 通过 SSH 远程端口转发的多租户 HTTP/TCP 反向隧道解决方案。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/trufflesecurity/trufflehog&quot;&gt;trufflehog&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于发现和验证凭证的工具，它可以扫描git仓库、GitHub 组织或者其他源，寻找可能泄露的敏感信息，如 AWS 密钥、密码、令牌等。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16440</link><guid isPermaLink="false">https://studygolang.com/topics/16440</guid><pubDate>Sat, 24 Jun 2023 16:07:45 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 191 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue191/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：父亲节快乐！！！&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/hybridgroup/gocv&quot;&gt;gocv v0.33.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 OpenCV 4+ 的计算机视觉包。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/rfjakob/gocryptfs&quot;&gt;gocryptfs v2.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 编写的加密 overlay 文件系统。官方网站：&lt;a href=&quot;https://nuetzlich.net/gocryptfs&quot;&gt;https://nuetzlich.net/gocryptfs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/bits-and-blooms/bloom&quot;&gt;bloom v3.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的 Bloom filters 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/vektra/mockery&quot;&gt;mockery v2.29 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;提供了轻松为 Go 接口生成 mock 的功能。它删除了使用 mock 所需的样板代码。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/caddyserver/certmagic&quot;&gt;certmagic v0.18 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为任意 Go 程序自动加上 HTTPS，Caddy 使用的一个库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/dundee/gdu&quot;&gt;gdu v5.25 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;带控制台接口的磁盘使用分析器。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/VRASxwbNbz4ZvpPspXTdww&quot;&gt;Go 1.21.0 带来了什么新特性？min 和 max 内置函数解析&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 1.21.0 是 Go 语言的最新版本，它将在 2023 年 8 月发布，会带来了一些语言和工具的变化。其中一个值得关注的变化是增加了两个新的内置函数 min 和 max，用来对任意可比较类型进行最小值和最大值的操作。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/rgecHCCgBEpSC3lOQMn9Lg&quot;&gt;Go协程池(1): 线程vs协程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Goroutine(也叫协程)运行在用户态，由Go runtime管理。而操作系统线程同时处于用户态和内核态。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/ghJiTvJxYzLKTFs5gZga5w&quot;&gt;写给go开发者的gRPC教程-错误处理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;系列教程。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/9OjvKLEei9HjmGcsA4fq7w&quot;&gt;Go语言反射编程指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;反射是一种编程语言的高级特性，它允许程序在运行时检视自身的结构和行为。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/dUqK0-1RYtZTadHWf0s3sw&quot;&gt;Gin 框架是如何处理 panic 的？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文我们介绍下recover在gin框架中的应用。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://tonybai.com/2023/06/13/understand-go-gc-overhead-behind-the-convenience/&quot;&gt;Go GC：了解便利背后的开销&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go语言的垃圾回收机制（Garbage Collection，简称 GC）是其重要的运行机制之一，它可以帮助开发人员避免手动管理内存的复杂性和错误，为开发者带来开发上的便利，使开发者可以更专注于业务逻辑的实现。然而，GC的便利性背后也带来了一定的系统开销，作为成熟的Go开发者，我们需要了解GC带来的开销和优化方法，以帮助我们更好的了解和使用Go语言。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://www.cnblogs.com/t102011/p/17457120.html&quot;&gt;从源码分析 Go 语言使用 cgo 导致的线程增长&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;TDengine Go 连接器 &lt;a href=&quot;https://github.com/taosdata/driver-go%EF%BC%8C%E4%BD%BF%E7%94%A8&quot;&gt;https://github.com/taosdata/driver-go，使用&lt;/a&gt; cgo 调用 &lt;a href=&quot;http://taos.so/&quot;&gt;taos.so&lt;/a&gt; 中的 API，使用过程中发现线程数不断增长，本文从一个 cgo 调用开始解析 Go 源码，分析造成线程增长的原因。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/geziyor/geziyor&quot;&gt;geziyor&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个快速的网络爬虫框架。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/flyingmutant/rapid&quot;&gt;rapid&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个现代的基于属性的测试库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/matt1484/spectagular&quot;&gt;spectagular&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;结构体标签解析。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gotestyourself/gotestsum&quot;&gt;gotestsum&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 ’go test’ 的运行器，它可以输出适合人类阅读的格式，也可以输出 JUnit XML 格式用于 CI 集成，还可以输出测试结果的摘要。它既适合本地开发，也适合自动化测试。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/joweich/fractals&quot;&gt;fractals&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个使用 goroutines 的快速曼德博集合渲染器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/lesismal/go-websocket-benchmark&quot;&gt;go-websocket-benchmark&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Golang Websocket 百万连接测试。作者自荐，&amp;lt;&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues/103&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/polaris1119/golangweekly/issues/103&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/CloudOrc/SolidUI&quot;&gt;SolidUI&lt;/a&gt;（作者自荐），非 Go 项目&lt;/p&gt;
&lt;p&gt;AI生成可视化原型设计和编辑平台，支持2D，3D模型，结合LLM(Large Language Model) 快速编辑。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/JamesYYang/tc-filter&quot;&gt;tc-filter&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;一个基于ebpf tc实现的linux网络包过滤器。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16427</link><guid isPermaLink="false">https://studygolang.com/topics/16427</guid><pubDate>Sun, 18 Jun 2023 08:39:12 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 190 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue190/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：When，自然语言解析时间，可惜不支持中文 &amp;lt;&lt;a href=&quot;https://github.com/olebedev/when&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/olebedev/when&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/Shpota/goxygen&quot;&gt;goxygen v0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分分钟生成一个全栈 Web 项目（Go，Angular/React/Vue）。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/johnkerl/miller&quot;&gt;miller v6.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文本数据处理的瑞士军刀，Go 实现。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/tetratelabs/wazero&quot;&gt;wazero v1.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;零依赖的 WebAssembly 运行时库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/reugn/go-quartz&quot;&gt;go-quartz v0.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小型、零依赖的调度库，启发自 Java 的 Quartz。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/bufbuild/connect-go&quot;&gt;connect-go v1.8.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个更好的 gRPC。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v1.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/sashabaranov/go-openai&quot;&gt;go-openai v1.10 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Golang SDK，包括 ChatGPT、GPT-3、GPT-4 等。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/rxxQhrVk3_4ZvTjsIJbstw&quot;&gt;Go1.21.0 新特性：不需要循环 delete map 元素了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;内置函数 clear。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/XykWqJFM3LpGAa1Z8d15HA&quot;&gt;Go1.20.5 发布：更新了什么？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;同时发布的还有 Go1.19.10。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/BmkECfpBlRoFedlh8B6-XA&quot;&gt;Go 这么不稳？TIOBE 6 月榜单发布！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;稳定进入前 10 还是挺难的。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/cjQyDdIgcdzj7LOeZf21bQ&quot;&gt;收藏！！！一图掌握 Go 中 IO 包的关系&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在知乎上看到这样一个问题：Golang的IO库那么多，我该怎么选。今天就跟大家聊聊这个问题。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/olebedev/when&quot;&gt;when&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个自然语言日期/时间解析器，可以使用可插拔的规则和合并策略。它可以识别和处理类似于 “on next wednesday at 2:25 p.m.” 的文本，并将其转换为 time.Time 类型。它支持英语、俄语和巴西葡萄牙语的规则，也可以自定义规则和选项。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://gitlab.com/fruitygo/pnutmux&quot;&gt;pnutmux&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个使用正则表达式匹配和处理 HTTP 请求的 Web 框架。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/AfterShip/email-verifier&quot;&gt;email-verifier&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用 Go 语言编写的电子邮件验证库，可以在不发送任何邮件的情况下验证电子邮件地址的有效性和可达性。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/grpc-ecosystem/grpc-gateway&quot;&gt;grpc-gateway&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;gRPC 到 JSON 代理生成器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://gitee.com/mqyqingkong/goipc&quot;&gt;goipc&lt;/a&gt; （作者自荐）&lt;/p&gt;
&lt;p&gt;一个轻量的 IPC 组件。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/JamesYYang/ringbuf&quot;&gt;ringbuf&lt;/a&gt; （作者自荐）&lt;/p&gt;
&lt;p&gt;一个 RingBuffer 的 Go 实现，基于 channel。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://changelog.com/gotime/278&quot;&gt;Go Time 第 278 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 项目的文件和文件夹。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/abdullah-alaadine/local-git-contributions-visualizer&quot;&gt;local-git-contributions-visualizer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;扫描本地 Git 仓库并生成一个可视化的贡献图。这个工具对于使用多个Git服务（如 Github 和 Gitlab）的开发者很有用，它可以让他们看到他们在不同平台上的贡献情况，即使没有网络连接也可以。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/codenoid/batch-image-generator&quot;&gt;batch-image-generator&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;批量图片生成器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/studygolang/conference/tree/master/2023&quot;&gt;GopherChina 2023&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PPT 下载。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/moqsien/gvc&quot;&gt;gvc&lt;/a&gt; （作者自荐）&lt;/p&gt;
&lt;p&gt;一个功能丰富的全平台辅助开发工具。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/apicat/apicat&quot;&gt;apicat&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go + Vue + openapi 实现的一套开源接口管理工具，支持 openapi 导入导出。afocus 推荐。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/1Panel-dev/1Panel&quot;&gt;1Panel&lt;/a&gt;（作者自荐）&lt;/p&gt;
&lt;p&gt;开源的 Linux 服务器运维管理面板。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16407</link><guid isPermaLink="false">https://studygolang.com/topics/16407</guid><pubDate>Sun, 11 Jun 2023 13:23:10 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 189 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue189/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 实现的模拟器 &amp;lt;&lt;a href=&quot;https://github.com/maxpoletaev/dendy&amp;amp;gt&quot;&gt;https://github.com/maxpoletaev/dendy&amp;amp;gt&lt;/a&gt;;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/JohannesKaufmann/html-to-markdown&quot;&gt;html-to-markdown v1.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 将 HTML 转换为 Markdown。它使用 &lt;a href=&quot;https://github.com/PuerkitoBio/goquery&quot;&gt;HTML 解析器&lt;/a&gt;来尽可能避免使用 regexp。这样可以避免某些奇怪的情况，并允许将其用于完全未知输入的情况。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://joker-lang.org/&quot;&gt;joker v1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的 Clojure 解释器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/beego/beego&quot;&gt;Beego v2.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Web 框架。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/foxcpp/maddy&quot;&gt;maddy v0.7.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;SMTP email 服务器。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/-HXqQQcMr1CA4c6SS51yLQ&quot;&gt;为什么取消了Go1.21，而采用了Go1.21.0的版本命名规则&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你支持这种方式吗？&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/spUKBQB_Ig6ANabbP4FG8g&quot;&gt;Go 标准库中隐藏了一个文件类型识别的宝贝&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文件类型识别是在很多应用场景中都需要用到的功能，本文介绍标准库的方法。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/tOlhhT2Abmv2_QSJTqXqSQ&quot;&gt;filetype: 一个基于 Go 语言的文件类型鉴别神器&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 语言的第三方库，可以根据文件的魔数（magic numbers）签名来推断文件的类型和 MIME 类型。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/AsytcOBg0XpTnPzDq7iEhQ&quot;&gt;channel 的 15 条规则和底层实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文主要分析 channel 的内部实现中的数据结构和算法。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/yXbEMTsZEgLWZuZgrFPXSg&quot;&gt;Go 每日一库之 redis官网推荐的go版本的分布式锁：redsync&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;给大家推荐的是基于 redis 的 Go 版本的分布式锁工具：redsync。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/paypal/junodb&quot;&gt;junodb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;JunoDB 是 PayPal 自行开发的安全、一致且高度可用的键值存储，可在任何规模下提供低（数毫秒的）延迟。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/carlmjohnson/versioninfo&quot;&gt;versioninfo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;从 runtime/debug.ReadBuildInfo() 解析版本信息的包。这里有一个篇介绍文章：&amp;lt;&lt;a href=&quot;https://blog.carlmjohnson.net/post/2023/golang-git-hash-how-to/&amp;amp;gt;%E3%80%82&quot;&gt;https://blog.carlmjohnson.net/post/2023/golang-git-hash-how-to/&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/tompston/gut&quot;&gt;gut&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个将 Golang 结构体转换为 Typescript 接口的工具。这个库也有类似功能：&amp;lt;&lt;a href=&quot;https://github.com/gzuidhof/tygo&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/gzuidhof/tygo&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/quic-go/quic-go&quot;&gt;quic-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 的 QUIC 实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/jlaffaye/ftp&quot;&gt;ftp&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;ftp 客户端。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.grank.io/&quot;&gt;grank&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;搜索 Go 库，查看 star 排行、依赖等信息。源码是 Go 语言实现的：&amp;lt;&lt;a href=&quot;https://github.com/hullarb/grank&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/hullarb/grank&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/loeffel-io/ls-lint&quot;&gt;ls-lint&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个非常快速的目录和文件名检查器，用于前端项目。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/maxpoletaev/dendy&quot;&gt;dendy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的 NES/Famicom 模拟器。&lt;/p&gt;
&lt;p&gt;4、 &lt;a href=&quot;https://github.com/trzsz/trzsz-ssh&quot;&gt;trzsz-ssh&lt;/a&gt; （作者投稿）&lt;/p&gt;
&lt;p&gt;Go 实现的 ssh 客户端（千行左右的代码），已实现 ssh 客户端常用的基本功能。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16387</link><guid isPermaLink="false">https://studygolang.com/topics/16387</guid><pubDate>Sun, 04 Jun 2023 13:19:42 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 188 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue188/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：golangweekly&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/go/discussions/60227&quot;&gt;增强 http.ServeMux 路由&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个讨论，你支持吗？&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v1.2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/charmbracelet/vhs&quot;&gt;vhs v0.5.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;CLI 屏幕录制工具。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/RoaringBitmap/roaring&quot;&gt;roaring v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;位图数据结构的 Go 实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/duke-git/lancet&quot;&gt;lancet v2.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个全面、高效、可复用的 Go 语言工具函数库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/bufbuild/buf&quot;&gt;buf v1.19 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种新的 Protobuf 处理库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/8Lez8I2K4F81V9wm8CvEhw&quot;&gt;Go 官方 23 年 Q1 调查报告：你关心的都在这里&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方博客发布了 2023 年第一季度 Go 开发者调查报告。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://betterstack.com/community/guides/logging/go/zap/&quot;&gt;Zap 日志库综合指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;由 Uber 开发并专为 Go 应用程序设计的结构化日志记录包。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/Jy2wxqZYNMpQe7s1jtIR1g&quot;&gt;Go 空结构体：零内存的魔力&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 语言中，有一种特殊的用法可能让许多人感到困惑，那就是空结构体 struct{}。在本文中，我将对 Go 空结构体进行详解，准备好了吗？准备一杯你最喜欢的饮料或茶，随着本文一探究竟吧。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/IzWFop2a2hdDBGbCzFuUjg&quot;&gt;GoLand官博：为什么不用Go开发操作系统？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文整理自 GoLand 官方博客的一篇文章：《OS in Go? Why Not?》，探讨了为什么像 C 这样的编程语言在 OS 开发中占据优势，以及是否可以使用 Go 编写 OS。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/N7_-WNBsTpTc4X8qTQw-Nw&quot;&gt;Go1.22 可能会解决循环变量的问题，你支持吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言也不是完美的，它有一些设计上的缺陷或者不足，其中之一就是循环变量作用域问题。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/Neuc_hiVsVE83d47e40l6w&quot;&gt;XML 处理，Go 标准库太简单了怎么办？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;今天介绍一个基于官方 xml 库的增强库：etree，它是一个轻量级的纯 Go 包，它可以用于以元素树的形式表示 XML 文档。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/go-python/gopy&quot;&gt;gopy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将 Go 语言的包编译成 Python 模块，从而在 Python 应用中使用 Go 语言的功能。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/pawelgaczynski/gain&quot;&gt;gain&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个高性能的 io_uring 网络框架。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/StackExchange/dnscontrol&quot;&gt;dnscontrol&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于维护 DNS 区域的系统。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/openfga/openfga&quot;&gt;openfga&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个高性能和灵活的授权/权限引擎。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gitleaks/gitleaks&quot;&gt;gitleaks&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;保护密钥。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/robherley/snips.sh&quot;&gt;snips.sh&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个基于 SSH 的无密码、匿名的 pastebin 服务，可以用来分享代码片段、文本文件或命令输出。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/Workiva/go-datastructures&quot;&gt;go-datastructures&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;高性能的和线程安全的 Go 数据结构的集合。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/nvim-neotest/neotest&quot;&gt;neotest&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于与 NeoVim 中的测试交互的可扩展框架。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16380</link><guid isPermaLink="false">https://studygolang.com/topics/16380</guid><pubDate>Sun, 28 May 2023 13:38:42 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 187 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue187/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 2023 Q1 调查结果&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/hybridgroup/gobot&quot;&gt;gobot v2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 编程语言的 IOT 框架（机器人框架）。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/magefile/mage&quot;&gt;Mage v1.15 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Mage 是使用 Go 的类似 make/rake 的构建工具。您编写普通的 go 函数，Mage 会自动将它们用作类似于 Makefile 的可运行目标。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://stackoverflow.blog/2023/05/08/the-2023-developer-survey-is-now-live/&quot;&gt;Stackoverflow 2023 用户调查开启&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 爱好者可以为 Go 参与调查。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://go.dev/blog/survey2023-q1-results&quot;&gt;Go 官方 2023 Q1 调查结果&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;果然泛型不是讨论的焦点。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/KUkzHS4Yfad3l_CnU49lLg&quot;&gt;使用增强版 singleflight 合并事件推送，效果炸裂！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最近在工作中对 Go 的 singleflight 包做了下增强，解决了一个性能问题，这里记录下，希望对你也有所帮助。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/ohpshzrYkERbpioPfb-CvA&quot;&gt;从一次 PR 经历谈谈 Go 和 MySQL 的时区问题&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你有遇到吗？&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://colobu.com/2023/05/03/write-the-traceroute-tool-in-Go/&quot;&gt;使用Go实现traceroute工具&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;traceroute 是一种用于诊断网络连接问题的实用程序，它可以确定两台计算机之间的网络路径和网络时延。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://colobu.com/2023/05/13/send-IP-packets-in-Go/&quot;&gt;几种使用Go发送IP包的方法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文尝试介绍几种收发IP packet的方式。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/DustinJSilk/dinero.go&quot;&gt;dinero.go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个将 dinero.js 移植到 Go 语言的库。dinero.js 是一个用于创建、计算和格式化货币值的 JavaScript 库，它提供了一些方便的方法来处理不同的货币和精度。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/opensaucerer/barf&quot;&gt;barf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个构建 RESTful API 的框架。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/henomis/lingoose&quot;&gt;lingoose&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 框架，用于使用管道开发基于 LLM 的应用程序。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/timakin/bodyclose&quot;&gt;bodyclose&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;检查 http Response.Body 是否关闭的 linter。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/stealthrocket/wzprof&quot;&gt;wzprof&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个基于 &lt;a href=&quot;https://github.com/tetratelabs/wazero&quot;&gt;Wazero&lt;/a&gt; 的 WebAssembly 的性能分析工具，它可以收集 CPU 和 内存 的使用情况，并生成与 pprof 兼容的分析报告。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/contribsys/faktory&quot;&gt;faktory&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个语言无关的持久化后台任务服务器。它可以用于将后台任务分发到一个或多个机器上，并提供了一个简单的 API 来推送和获取任务。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/errata-ai/vale&quot;&gt;vale&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个语法感知的文本校对工具，它可以用于检查文本的拼写、风格和语法错误，并提供了快速和可扩展的特性。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/charmbracelet/mods&quot;&gt;mods&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;命令行中的 AI。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16363</link><guid isPermaLink="false">https://studygolang.com/topics/16363</guid><pubDate>Sun, 21 May 2023 14:28:45 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 186 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue186/cover.jpg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：可视化 Go 的程序调用 &amp;lt;&lt;a href=&quot;https://github.com/ofabry/go-callvis&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/ofabry/go-callvis&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/Permify/permify&quot;&gt;permify v0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;开源的授权服务。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/hashicorp-forge/hermes&quot;&gt;hermes v0.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文档管理系统。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/drakkan/sftpgo&quot;&gt;SFTPGo 2.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的功能齐全的 SFTP 服务器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/charmbracelet/bubbletea&quot;&gt;bubbletea 0.24.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;强大 TUI 框架。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/rqlite/rqlite/releases/tag/v7.15.0&quot;&gt;rqlite v7.16.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;轻量的、分布式关系数据库。更新很频繁呀。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/uber-go/dig&quot;&gt;dig v1.17 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于反射的依赖注入工具包，Uber 出品。&lt;/p&gt;
&lt;p&gt;、&lt;a href=&quot;https://xuri.me/excelize/zh-hans/releases/v2.7.1.html&quot;&gt;Excelize 发布 2.7.1&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言编写的用于操作 Office Excel 文档基础库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/AEsNXL27xUbDvNo_L2WxAQ&quot;&gt;Go testing 里的巧妙设计&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;换个角度来学习一下&lt;code&gt;testing&lt;/code&gt;领域巧妙的设计，开阔眼界是为了举一反三。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/kWpQSJNWoOqV64Ol1sIeow&quot;&gt;Go 高性能 - 无锁编程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种并发编程技术，主要用于消除多线程编程中锁操作带来的性能损耗。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/gLuHJRtCVX4KLgY8AV1C6Q&quot;&gt;TIOBE 5 月榜单：Go 前十没守住&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;排第 12 名。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gabriel-vasile/mimetype&quot;&gt;mimetype&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 magic 数的用于媒体类型和文件扩展名检测的快速的 Go 库，支持 170+ 格式。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/milvus-io/milvus&quot;&gt;milvus&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的向量数据库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/nlpodyssey/spago&quot;&gt;spago&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 的机器学习库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/topfreegames/pitaya&quot;&gt;pitaya&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;可扩展的游戏服务器框架。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/quarkcms/quark-go&quot;&gt;quark-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;兼容 Gin、Hertz、Fiber、Zero、Echo 等框架的管理后台脚手架。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/lxzan/uRouter&quot;&gt;uRouter&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个由 Go 编写的通用的、高度可定制化的 web router 抽象。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/deatil/go-array&quot;&gt;go-array&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;go-array 是一个 go 数组数据获取库，简单易用。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/go-graphics/go-gui-projects&quot;&gt;go-gui-projects&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go GUI 相关项目。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/dolthub/dolt&quot;&gt;dolt&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于数据的 Git。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/zhenorzz/goploy&quot;&gt;goploy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Web 部署系统工具。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/ischenliang/quickly-picture-bed&quot;&gt;quickly-picture-bed&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 Koa2 + Vue3.x + Vite3.x + typescript 开发的轻量级快捷图片管理系统、图床系统。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/go-zoox/chatgpt-for-chatbot-feishu&quot;&gt;chatgpt-for-chatbot-feishu&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;快速将 ChatGPT 接入飞书，作为私人工作助理或者企业员工助理。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/trzsz/trzsz-go&quot;&gt;trzsz-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;兼容 tmux 的 rz / sz，有进度条，支持目录传输，支持拖动上传。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/wenlng/gonacli&quot;&gt;gonacli&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个快速使用 Go 语言编写 NodeJS Addon 扩展的开发工具。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/mqy527/mobile-memory-clean&quot;&gt;mobile-memory-clean&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个针对Android手机的内存/进程清理程序。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16350</link><guid isPermaLink="false">https://studygolang.com/topics/16350</guid><pubDate>Sun, 14 May 2023 14:15:32 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 185 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue185/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Grafana Pyroscope 解决 Go 内存泄露 &amp;lt;&lt;a href=&quot;https://grafana.com/blog/2023/04/19/how-to-troubleshoot-memory-leaks-in-go-with-grafana-pyroscope/&amp;amp;gt;%E3%80%82&quot;&gt;https://grafana.com/blog/2023/04/19/how-to-troubleshoot-memory-leaks-in-go-with-grafana-pyroscope/&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;5.1 假期各种调休，打断了工作节奏，周刊也停更了好几期，现在回来了。&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/tetratelabs/wazero&quot;&gt;wazero 1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;零依赖的 WebAssembly 运行时库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/rqlite/rqlite/releases/tag/v7.15.0&quot;&gt;rqlite v7.15.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;轻量的、分布式关系数据库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/dominikbraun/graph&quot;&gt;graph v0.20 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;图数据结构的 Go 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/kyleconroy/sqlc/releases/tag/v1.18.0&quot;&gt;sqlc v1.18.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;从 SQL 生成类型安全 Go 代码。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/prest/prest&quot;&gt;pREST v1.3&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;低代码，简化和加速开发即时，实时，高性能的任何 Postgres 应用程序。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/go-testfixtures/testfixtures&quot;&gt;testfixtures v3.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似于 Ruby-on Rails 用于 Go 的测试，针对真实数据库编写测试。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/sashabaranov/go-openai&quot;&gt;go-openai 1.9.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Golang SDK，包括 ChatGPT、GPT-3、GPT-4 等。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/rfjakob/gocryptfs&quot;&gt;gocryptfs v2.3.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 编写的加密 overlay 文件系统。官方网站：&lt;a href=&quot;https://nuetzlich.net/gocryptfs&quot;&gt;https://nuetzlich.net/gocryptfs&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/x90GxeUdHLMTr17pgDMNBA&quot;&gt;惊！Go文件后缀新提案：.go 可变成 .ʕ◔ϖ◔ʔ&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;玩笑下？&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/xpjNOwn1kNICQE4TmjpQZg&quot;&gt;为什么 defer 的执行顺序和注册顺序不同？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;defer 语句的执行顺序是 后进先出，和数据结构中的 Stack (栈) 一样。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/QFr_Pgt9GzOG3zlgcXEVwQ&quot;&gt;Go 语言中没有枚举类型，但是我们可以这样做&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你怎么做的？&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/jcpjBGNGD09cXRO9zYgtag&quot;&gt;Go 1.20.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;劳动节期间，Go 又发新版了。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/yycu10nLvpC0XiRemSy3lA&quot;&gt;Go 单元测测时尽量用 fake object&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;单元测试是软件开发的一个重要部分，它有助于在开发周期的早期发现错误，帮助开发人员增加对生产代码正常工作的信心，同时也有助于改善代码设计。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/adrianbrad/queue&quot;&gt;queue&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;线程安全、泛型的多队列实现（堵塞队列、优先队列、环形队列）。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/showa-93/go-mask&quot;&gt;go-mask&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个简单的、可定制的 Go 库，用于屏蔽敏感信息。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/aymanbagabas/go-udiff&quot;&gt;go-udiff&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个微型 Go diff 库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/redis/rueidis&quot;&gt;rueidis&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个快速的 Redis 客户端。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/binwiederhier/ntfy&quot;&gt;ntfy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 PUT/POST 将推送通知发送到你的手机或 PC。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://changelog.com/gotime/273&quot;&gt;Go Time 第 273 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 中使用领域驱动设计。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/gtramontina/ooze&quot;&gt;ooze&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 变异测试工具。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://www.youtube.com/watch?v=GipAZwKFgoA&quot;&gt;强大的装饰器模式&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在线编码视频教程（英文）。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/go-jet/jet&quot;&gt;jet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;具有代码生成和自动查询结果数据映射的类型安全 SQL 构建器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/hashicorp-forge/hermes&quot;&gt;hermes&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文档管理系统。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/AlexxIT/go2rtc&quot;&gt;go2rtc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;支持各种协议的流媒体应用程序。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16342</link><guid isPermaLink="false">https://studygolang.com/topics/16342</guid><pubDate>Sun, 07 May 2023 13:50:52 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 184 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue184/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：最小的 Go 二进制（5KB），文章链接：&amp;lt;&lt;a href=&quot;https://totallygamerjet.hashnode.dev/the-smallest-go-binary-5kb&amp;amp;gt&quot;&gt;https://totallygamerjet.hashnode.dev/the-smallest-go-binary-5kb&amp;amp;gt&lt;/a&gt;;&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;好久没有出题目了，上次有人问起，那本周就出一道题目。&lt;/p&gt;
&lt;p&gt;以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

func main() {
var x = []int{0, 5: 1, 2}
println(len(x))
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：3；B：6；C：7；D：8&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://carlosbecker.com/posts/goreleaser-v1.17&quot;&gt;GoReleaser v1.17 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;尽可能快速、轻松地交付 Go 二进制文件。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://blog.ferretdb.io/ferretdb-1-0-ga-opensource-mongodb-alternative/&quot;&gt;FerretDB 1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品，1.0 正式发布。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/sashabaranov/go-openai&quot;&gt;go-openai 1.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Golang SDK，包括 ChatGPT、GPT-3、GPT-4 等。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/superseriousbusiness/gotosocial&quot;&gt;GoToSocial 0.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用 Golang 编写的 ActivityPub 社交网络服务器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/gobwas/ws&quot;&gt;ws 1.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小型的 WebSocket 库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/mvdan/gofumpt&quot;&gt;gofumpt 0.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个严格的 gofmt 工具。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/drakkan/sftpgo&quot;&gt;SFTPGo 2.4.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的功能齐全的 SFTP 服务器。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/FL2MKlfLe59qC5rfSIOoqw&quot;&gt;Go1.20.3 发布了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方发布了 Go 1.20.3 和 Go 1.19.8，这是两个小版本，主要涉及 4 个安全更新。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/Qyp35Q6UjtZHfwkDUWbEog&quot;&gt;Go 开发命令行程序指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这篇文章中，整理出一份使用 Go 语言编写 CLI 程序的指南，供大家参考。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/SVMj-PvI1l-oSlxI4zaNcw&quot;&gt;GoLand 2023.1 正式发布，看有哪些新功能&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GoLand 2023 的第一个版本 GoLand 2023.1 正式发布，新版本引入了漏洞检查器和更好的 gRPC 代码导航，并使重命名重构可用于接收器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/e-QNv5-Ip2EcDp-S6CuXEg&quot;&gt;如何用一个端口同时暴露 HTTP1/2、gRPC 协议？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文我们将介绍 Apache Dubbo 灵活的多协议设计原则，基于这一设计，在 Dubbo 框架底层可灵活的选用 HTTP/2、HTTP/REST、TCP、gRPC、JsonRPC、Hessian2 等任一 RPC 通信协议，同时享用统一的 API 与对等的服务治理能力。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://blog.jetbrains.com/zh-hans/go/2023/01/03/comprehensive-guide-to-testing-in-go/&quot;&gt;Go 测试综合指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文将涵盖关于 Go 测试的所有须知事项。 我们将从一个简单的测试函数开始，通过更多工具和策略帮助您掌握 Go 中的测试。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/caarlos0/env&quot;&gt;env&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个简单的零依赖库，用于将环境变量解析为结构体。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/thomiceli/opengist&quot;&gt;opengist&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;由 Git 驱动的自我托管的 Pastebin，GitHub Gist 开源替代方案。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/gotzmann/llama.go&quot;&gt;llama.go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;llama.go 就像纯 Go 版本的 llama.cpp，LLaMA 的 Go 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/erni27/imcache&quot;&gt;imcache&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于泛型的内存 cache。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/tiktoken-go/tokenizer&quot;&gt;tokenizer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是 OpenAI 分词器的纯 Go 实现。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/donuts-are-good/bearclaw&quot;&gt;bearclaw&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;快速、简单的网站生成器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://changelog.com/gotime/272&quot;&gt;Go 播客第 272 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GPT-4 人生中最大的一次工作面试。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://pprof.me/&quot;&gt;pprof.me&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在线 pprof 文件性能瓶颈分析。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://goquick.dev/&quot;&gt;goquick&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 项目模板生成器。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/dwisiswant0/chatgptui&quot;&gt;chatgptui&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 语言编写的 ChatGPT 文本用户界面（TUI）模式。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16303</link><guid isPermaLink="false">https://studygolang.com/topics/16303</guid><pubDate>Sun, 16 Apr 2023 13:05:57 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 183 期 —— Go1.0 正式发布 11 周年了</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue183/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：swiss&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/tetratelabs/wazero&quot;&gt;wazero 1.0.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;零依赖的 WebAssembly 运行时库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://docs.pingcap.com/tidb/v7.0/release-7.0.0&quot;&gt;TiDB 7.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的分布式数据库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/terrastruct/d2&quot;&gt;d2 v0.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 实现的图表脚本语言，可以将文本转换为图表。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/MontFerret/ferret&quot;&gt;ferret 0.18发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个声明式的 Web 爬虫系统，既可以单独使用，也可以嵌入其他 Go 项目使用。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/gofiber/fiber/releases/tag/v2.43.0&quot;&gt;fiber 2.43.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种 Express 风格的、基于 fasthttp 的 HTTP web 框架。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/cloudwego/hertz&quot;&gt;hertz 0.6.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Golang 微服务 HTTP 框架。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/elastic/go-elasticsearch&quot;&gt;ElasticSearch Go 8.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;ElasticSearch Go 8.7 官方客户端发布。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/lG-sswO8i6w_6sMztvyOjw&quot;&gt;为什么 Go 不支持 []T 转换为 []interface&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 中，如果 interface{} 作为函数参数的话，是可以传任意参数的，然后通过类型断言来转换。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/PzfiMXiYjfGQFHW_0hTS4A&quot;&gt;Golang反射学习：手写一个RPC&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文主要为了在对golang反射学习后做一个小练习，使用100行代码实现一个通用的RPC服务。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://blog.pickme.lk/how-to-get-profiling-right-with-go-813ff89d4757&quot;&gt;如何用 Go 进行正确的性能剖析？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一篇英文文章。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://www.groundcover.com/blog/grpc-monitoring&quot;&gt;gRPC 监控对高性能系统的重要性&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你的 gRPC 有监控吗？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/BHrxHQrMKZrhb34hR3La5w&quot;&gt;gin框架中Context的Get、Query、Param函数都是从哪里获取数据的？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在使用gin框架处理一次请求的过程中，可以通过Context结构体提供的方法获取或设置一个指定key的值。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/y6lppalSRwLhCjS9yQYuUQ&quot;&gt;Go Mutex：保护并发访问共享资源的利器&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文将着重介绍 Go 的 Mutex 并发原语，它是一种锁类型，用于实现共享资源互斥访问。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/dolthub/swiss&quot;&gt;swiss&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;HashTable 实现。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/boyter/gocodewalker&quot;&gt;gocodewalker&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;遍历目录的方便库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/lmittmann/tint&quot;&gt;tint&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;写不同颜色的日志。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/fzipp/pathfind&quot;&gt;pathfind&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在二维多边形地图上寻找路径。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/nats-io/nats.go&quot;&gt;nats.go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;NATS 的 Golang 客户端，云原生消息系统。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/colega/zeropool&quot;&gt;zeropool&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的零分配类型安全池，sync.Pool 的替代品。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/Cyphrme/Coze&quot;&gt;Coze&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;加密的 JSON 信息传递规范，为人类可读性而设计。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/dominikh/gotraceui&quot;&gt;gotraceui&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 执行跟踪（execution trace）前端。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/songzhibin97/gkit&quot;&gt;gkit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;致力于提供微服务以及单体服务的可用性基础组件工具集合。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16275</link><guid isPermaLink="false">https://studygolang.com/topics/16275</guid><pubDate>Sun, 02 Apr 2023 13:43:34 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 182 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue182/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 项目布局&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://ebitengine.org/en/documents/2.5.html&quot;&gt;Ebitengine 2.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2D 的游戏引擎。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/alecthomas/participle&quot;&gt;participle 2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的解析库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/rogchap/v8go&quot;&gt;v8go 0.9.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 中执行 JavaScript。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/alecthomas/chroma&quot;&gt;chroma 2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 实现的通用语法高亮库。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/knadh/listmonk&quot;&gt;listmonk 2.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;具有现代仪表板的高性能，自托管通讯和邮寄列表管理器。Go + Vue 构建。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/go-micro/go-micro&quot;&gt;micro v4.10 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;微服务框架。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://blog.gitea.io/2019/07/gitea-1.9.0-is-released/&quot;&gt;Gitea 1.19 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Gitea 是一个开源社区驱动的轻量级代码托管解决方案，后端采用 &lt;a href=&quot;https://golang.org/&quot;&gt;Go&lt;/a&gt; 编写，采用 &lt;a href=&quot;https://github.com/go-gitea/gitea/blob/master/LICENSE&quot;&gt;MIT&lt;/a&gt; 许可证。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/charmbracelet/wish&quot;&gt;wish 1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;让在 Go 中构建基于 SSH 的应用变得更容易。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/charmbracelet/log&quot;&gt;log 0.2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个小巧、色彩丰富的 Go 日志库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/vdVZYEy5LznQSHI6klaCIg&quot;&gt;Go每日一库之Pie ：一个高性能、类型安全的slice操作库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在Go语言中，对slice和map是我们最常用的数据结构。比如，计算两个切片的交集、差集；判断切片中的元素是否都满足某个条件的等。我推荐大家使用这个包。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/anZrAc7Ir4QoUeID919VxQ&quot;&gt;Go是一门面向对象编程语言吗&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;很多人第一次接触Go，他们中的很多是来自像Java, Ruby这样的OO(面向对象)语言阵营的，他们学习Go之后的第一个问题便是：Go是一门OO语言吗？在这篇博文中，我们就来探讨一下。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://tonybai.com/2023/03/22/global-variable-in-go/&quot;&gt;聊聊Go语言的全局变量&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;C语言是Go语言的先祖之一，Go继承了很多C语言的语法与表达方式，这其中就包含了全局变量，虽然Go在其语法规范中并没有直接给出全局变量的定义。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://appliedgo.com/blog/go-project-layout&quot;&gt;唯一的、必须的、永恒的 Go 项目布局&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;是否有借鉴作用？&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/sashabaranov/go-openai&quot;&gt;go-openai&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Golang SDK，包括 ChatGPT、GPT-3、GPT-4 等。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/r3labs/sse&quot;&gt;sse&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;服务器事件发送服务端和客户端。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/nbd-wtf/go-nostr&quot;&gt;go-nostr&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;nostr 协议的 Go 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/cloudwego/dynamicgo&quot;&gt;dynamicgo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于原始字节流的高性能+动态化 Go 数据处理。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/dkorunic/betteralign&quot;&gt;betteralign&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个检测结构体是否可以占用更少内存的工具。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/dkfbasel/hot-reload&quot;&gt;hot-reload&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 Docker 的热重载开发。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/maxatome/go-testdeep&quot;&gt;go-testdeep&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;极度灵活的 golang 深度对比，扩展 go 测试包，测试 HTTP APIs，提供测试套件.&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16234</link><guid isPermaLink="false">https://studygolang.com/topics/16234</guid><pubDate>Sun, 26 Mar 2023 13:17:10 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 181 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue181/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：ChatGPT + Golang&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/go/issues/56345#issuecomment-1470506816&quot;&gt;slog&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;结构化日志库将要进入标准库了。结构化日志指南：&amp;lt;&lt;a href=&quot;https://betterstack.com/community/guides/logging/logging-in-go/&amp;amp;gt;%E3%80%82&quot;&gt;https://betterstack.com/community/guides/logging/logging-in-go/&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/go-task/task/releases/tag/v3.22.0&quot;&gt;task v3.22.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个任务运行/构建工具，旨在比 GNU Make 更简单，更易于使用。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/mgechev/revive&quot;&gt;revive v1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个旨在提供更多结构和可配置性的 Golint 的替代品。它的速度据说有数倍提升。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/chromedp/chromedp&quot;&gt;chromedp 0.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;驱动浏览器的 Go 语言库，支持 Chrome DevTools 协议。抓取动态网页利器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/hajimehoshi/oto&quot;&gt;oto 2.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;支持多平台的播放声音的低级库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/kataras/iris&quot;&gt;iris 12.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个社区驱动的 Go 语言 Web 框架。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/fatih/color&quot;&gt;color 1.15 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;颜色文本输出包。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/hashicorp/golang-lru&quot;&gt;golang-lru 2.0.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;LRU 算法的实现。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v0.9.3&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/deckarep/golang-set&quot;&gt;golang-set 2.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言的简单通用集合（Set）类型。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/6yE_yNTJjsOBB2r2mhZiAA&quot;&gt;Go 语言中接口嵌入接口&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在一个接口里面嵌入另一个接口，是 Go 语言里最简单的一种嵌入方式，因为接口只定义了抽象能力，并没有为类型定义新的数据和行为。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/ana40LV9CEqkLzMnwTn8rA&quot;&gt;踩坑记：gRPC 异常响应&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;前些天接到一个 Oncall，来自 Lark 的胡同学反馈，用 gRPC 官方的 python 客户端请求 Kitex gRPC Server，有时收到的 response 为 None。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/9iiWzbPm_P0WzL7jlbQ2lQ&quot;&gt;Go每日一库之使用 Singleflight 优化你的代码&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;有很多方法可以优化代码以达到提高程序运行效率，减少进程数就是其中之一。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://tonybai.com/2023/03/15/an-intro-of-go-subtest/&quot;&gt;一文搞懂Go subtest&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在本文中，我将结合日常开发中了解到的关于subtest的认知、理解和使用的问题，和大家一起聊聊 subtest。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gomarkdown/markdown&quot;&gt;markdown&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Markdown 解析器和 HTML 显示器。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/loopholelabs/scale&quot;&gt;scale&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;高性能 WebAssembly 函数运行时。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/ryanc414/dynamodbav&quot;&gt;dynamodbav&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;DynamoDB 的 Marshal/Unmarshal 实用程序。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/go-sonic/sonic&quot;&gt;sonic&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 博客平台。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/radovskyb/watcher&quot;&gt;watcher&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 包，用于在不使用文件系统事件的情况下监控文件或目录更改。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/flipt-io/flipt&quot;&gt;flipt&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个开源的、自托管的功能标志解决方案。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/felixge/traceutils&quot;&gt;traceutils&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于解码和编码 runtime/trace 文件的代码以及有用的功能。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/ko-build/ko&quot;&gt;ko&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;构建和部署 Go 应用。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16220</link><guid isPermaLink="false">https://studygolang.com/topics/16220</guid><pubDate>Sun, 19 Mar 2023 08:55:48 GMT</pubDate><author>polarisstarlion</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 180 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/issue180/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Gopher&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/43xceloGQUS1-RehqR2nnQ&quot;&gt;Go 1.20.2 发布了~&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方发布了两个小版本：Go1.20.2 和 Go1.19.7，主要是因为有一个安全问题。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://sessionize.com/gophercon-uk-2023&quot;&gt;GopherCon UK 2023&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将在伦敦举行，时间是 8 月 16 日到 18 日。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/golang/glog&quot;&gt;glog 包发布 1.1.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是类似谷歌 C++ 的 glog 包，支持 level 的纯 Go 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/wailsapp/wails&quot;&gt;wails 2.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 和 Web 技术创建桌面应用程序。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/rqlite/rqlite/releases/tag/v7.14.0&quot;&gt;rqlite v7.14.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;轻量的、分布式关系数据库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/pressly/goose&quot;&gt;goose v3.10 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;数据库迁移工具。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/onsi/ginkgo&quot;&gt;Ginkgo 2.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;现代的测试框架。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/wader/fq&quot;&gt;fq 0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似 jq，但用于二进制文件。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/ClickHouse/clickhouse-go&quot;&gt;clickhouse-go 2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;clickhouse 官方 go 客户端 API  库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/isf_jtTNSFVEih-FPvnyaw&quot;&gt;Go/Rust 挑战 Java/Python 地位&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在线学习平台 O&#39;Reilly 最新发布了 2023 年度技术趋势报告，基于该平台  280 万 的用户数据，以 了解开发人员的兴趣所在。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/APY4gUCWq2OJu0AKdstA8w&quot;&gt;冲冲冲！Go 冲进排行榜前 10 了~&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;TIOBE 公布了 2023 年 3 月的编程语言排行榜。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/sCmnDOQ12Rr-UYiITh2eyQ&quot;&gt;Go 语言中结构体嵌入结构体？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言并不支持传统意义上的继承，相反，它提倡通过组合来扩展类型的功能，但有时想要类似继承的功能，这通过嵌入实现。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/cohesivestack/valgo&quot;&gt;valgo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于泛型的校验库，跟其他不同的是，通过写函数实现，而不是 tag。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/txaty/gool&quot;&gt;gool&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通用 goroutine 池：提交、映射、异步。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/deckarep/golang-set&quot;&gt;golang-set&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言的简单通用集合（Set）类型。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/sanbornm/go-selfupdate&quot;&gt;go-selfupdate&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 应用自更新。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/abiosoft/ishell&quot;&gt;ishell&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;创建交互式 cli 的应用。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/olahol/melody&quot;&gt;melody&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的极简 Websocket 框架，基于 gorilla/websocket 创建。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/SilverRainZ/go-ssaviz&quot;&gt;go-ssaviz&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过 Graphviz 可视化 Go SSA 函数。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/8ff/viterbi&quot;&gt;viterbi&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的卷积编码器和维特比（Viterbi）解码器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/kopia/kopia&quot;&gt;kopia&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;跨平台的备份工具。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/zeromicro/cds&quot;&gt;cds&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为 ClickHouse 准备的数据同步工具。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/1340691923/ElasticView&quot;&gt;ElasticView&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个简单好用的ElasticSearch可视化客户端，支持连接6，7，8版本的ES，不妨一试。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16203</link><guid isPermaLink="false">https://studygolang.com/topics/16203</guid><pubDate>Sun, 12 Mar 2023 14:07:58 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 179 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/issue179/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Google 出品的分布式应用 Go 框架 weaver。&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/pdfcpu/pdfcpu&quot;&gt;pdfcpu v0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言 PDF 处理器。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/sourcegraph/conc&quot;&gt;conc v0.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;结构更佳的 Go 并发库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/unrolled/render&quot;&gt;render 1.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;轻松 Render JSON，XML，二进制数据和 HTML 模板响应。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/johnkerl/miller&quot;&gt;miller 6.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文本数据处理的瑞士军刀，Go 实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/bufbuild/buf&quot;&gt;buf 1.15 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种新的 Protobuf 处理库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://research.swtch.com/telemetry-opt-in&quot;&gt;Russ Cox 妥协&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;透明遥测加入Go工具链后默认是关闭的。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/HoyK9I1gbCM_umzSczZj-w&quot;&gt;Redis 官方 Go 客户端来了！！！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你用的是哪个呢？&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/Uuj28VWosfcG9Kxqpa4Hcg&quot;&gt;Hello Word: 一款用Go开发的学习英语单词工具&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;背单词工具。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/_ryLiStjLwguHgmpdcURbw&quot;&gt;如何用go实现一个ORM&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;好用的生产工具常常能够对生产力产生飞跃式的提升。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/75qJIfG0lGnohWegDAeqxA&quot;&gt;2023 年的 Rust 与 Go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文译自《Rust vs Go in 2023》&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/xX9AK9rEREpBdfhJWCramg&quot;&gt;5 分钟之内跑起来一个完整的 Go Gin 项目&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 开源项目，构建后台管理系统。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/IzwdHve2YsDshzTtg_in0g&quot;&gt;Go BIO/NIO探讨(6)：IO多路复用之select&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;深入探索 Go 网络编程。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/ServiceWeaver/weaver&quot;&gt;weaver&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;编写分布式应用程序的 Go 框架，Google 出品。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/ConsenSys/gnark&quot;&gt;gnark&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个快速的 zk-SNARK 库，提供高级 API 来设计电路。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/karlkeefer/pngr&quot;&gt;pngr&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Web APP 较完整的例子。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/dominikbraun/graph&quot;&gt;graph&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;图数据结构的 Go 实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/ProtonMail/gluon&quot;&gt;gluon&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go IMAP server 库。这里有一篇介绍文章：&amp;lt;&lt;a href=&quot;https://proton.me/blog/gluon-imap-library&amp;amp;gt;%E3%80%82&quot;&gt;https://proton.me/blog/gluon-imap-library&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/mjl-/mox&quot;&gt;mox&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个现代的、全功能的开源安全邮件服务器，低维护、自托管。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/go-macaron/macaron&quot;&gt;macaron&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;模块化的 Web 框架。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/rakyll/openai-go&quot;&gt;openai-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenAI 的 Go 客户端库。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/eko/authz&quot;&gt;authz&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个授权后端项目，支持RBAC和ABAC权限设置，带有用户界面。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://tinygo.org/docs/reference/lang-support/stdlib/&quot;&gt;stdlib&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;被 TinyGo 支持的标准库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://build-your-own.org/database/&quot;&gt;database&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;构建你自己的数据库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/akrylysov/algnhsa&quot;&gt;algnhsa&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;AWS Lambda net/http 适配服务。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/Forest33/warthog&quot;&gt;warthog&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;跨平台的 gPRC GUI 客户端。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16184</link><guid isPermaLink="false">https://studygolang.com/topics/16184</guid><pubDate>Sun, 05 Mar 2023 13:51:37 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 178 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/issue178/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go 实现的纸牌游戏：&amp;lt;&lt;a href=&quot;https://github.com/brianstrauch/solitaire-tui&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/brianstrauch/solitaire-tui&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gin-gonic/gin/releases/tag/v1.9.0&quot;&gt;Gin 1.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go HTTP 框架。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/vbauerster/mpb&quot;&gt;mpb v8.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在终端为 Go 命令行应用程序显示进度条。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/cshum/imagor&quot;&gt;imagor v1.4.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 和 libvips 编写的高性能图像处理服务器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/elliotchance/pie&quot;&gt;pie 2.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;操作 slice 和 map 的方便库。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/golang/go/issues/58650&quot;&gt;新提案：类型推断的一个通用方案&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;泛型中的类型推断。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/QBD11TUQFdZ-11hJ2FiJJw&quot;&gt;10 秒改 struct 性能直接提升 15%，产品姐姐都夸我好棒&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;内存对齐。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/-UULL4IiBiiXOu5PtskPzQ&quot;&gt;「Go框架」深入理解iris中的mvc之原理篇&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MVC，古老的架构，但一直流行着。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/S5Z3whsnbthcz2VESqc17w&quot;&gt;选择“网红语言”值不值？使用Go和Rust的数据库公司七年经验总结&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PingCAP CTO 谈当初选择 Go 与 Rust 的得失。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/p7CxNIk0YI_cS3pebUWAOg&quot;&gt;深入探究 Go 中的 array 与 slice&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这篇文章我们将讨论 Go 语言中数组与切片(slice)，深入探究它们的内部结构以及为什么它们表现不一样，即使它们能做类似的事情。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/2Pw8fsnjvu9-uTzf4Imojg&quot;&gt;一文告诉你如何判断Go接口变量是否相等&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;来自读者的一个问题。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/charmbracelet/log&quot;&gt;log&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个小巧、色彩丰富的 Go 日志库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/sosedoff/pgweb&quot;&gt;pgweb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PostgreSQL 跨平台 Go 客户端。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/brianstrauch/solitaire-tui&quot;&gt;solitaire-tui&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;终端的克朗代克纸牌游戏，Go 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/zhufuyi/sponge&quot;&gt;sponge&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;支持快速生成网络和微服务代码的微服务框架。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/psilva261/opossum&quot;&gt;opossum&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的浏览器。真丑。。。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/charmbracelet/soft-serve&quot;&gt;soft-serve&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个可自我托管的命令行 Git 服务器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/charmbracelet/vhs&quot;&gt;vhs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你的 CLI 家庭录像机。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/SpectoLabs/hoverfly&quot;&gt;hoverfly&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;面向开发人员和测试人员的轻量级服务虚拟化/API 模拟工具。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/Rican7/define&quot;&gt;define&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个命令行字典（词库）应用程序，可以访问多个源。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/evilmartians/lefthook&quot;&gt;efthook&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;适用于任何类型项目的快速而强大的 Git Hook 管理器。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16170</link><guid isPermaLink="false">https://studygolang.com/topics/16170</guid><pubDate>Sun, 26 Feb 2023 11:49:15 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 177 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/issue177/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：ZincSearch&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/enYkz_1aYZlbASFpliBpcA&quot;&gt;Go 1.20.1 发布了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方发布了 Go1.20.1 和 Go1.19.6，这是两个小版本，主要涉及到安全更新，一共修复了 4 个 Bug。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/variadico/noti&quot;&gt;noti 3.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;监听进程并触发通知。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/prabhatsharma/zinc&quot;&gt;ZincSearch 0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;全文搜索引擎，可作为 elasticsearch 的替代品，之前叫做 Zinc。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/cshum/imagor&quot;&gt;imagor v1.4.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 和 libvips 编写的高性能图像处理服务器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/tinygo-org/tinygo&quot;&gt;tinygo 0.27.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这是一个基于 LLVM 的、用于一些特定小场景的 Go 编译器，比如 WebAssembly、Microcontrollers 和 命令行工具等。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://threedots.tech/post/watermill-1-2/&quot;&gt;Watermill v1.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;事件驱动应用开发框架。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://istio.io/latest/news/releases/1.17.x/announcing-1.17/&quot;&gt;istio 1.17发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;服务网格领头羊。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/Ok2j0YFLqzGRztEc1Mh70w&quot;&gt;写给 Go 开发者的 gRPC 教程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一篇 Protobuf 的基础教程，以及一篇 &lt;a href=&quot;https://mp.weixin.qq.com/s/kKCP4y-JDjSMi2dbV9Gj9Q&quot;&gt;通信模式&lt;/a&gt; 的文章。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/gV4m9tNsgJkeXKnV1upOIw&quot;&gt;net 库的非阻塞支持&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在涉及到 Accept/Read/Write 之类的操作时，Go net 库默认使用了非阻塞的方式去实现，这样提高了性能，但给编程增加了额外的复杂度。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://blog.pratimbhosale.com/building-a-url-shortener-using-go-and-sqlite&quot;&gt;使用 Go 和 Sqlite 建立一个短网址服务&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一篇介绍性文章。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/tTor7j3MNO3Fph67rF_xLA&quot;&gt;DDD 在 Go 中的落地 | 如何在业务中使用领域事件？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在实际的建模中，一般会通过事件风暴的形式，来发现、提取领域事件。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/ebitengine/purego&quot;&gt;purego&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;非 CGO 方式调用 C 函数。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/sugawarayuuta/sonnet&quot;&gt;sonnet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;另一款以速度见长的 JSON 解析器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/diazoxide/entrefine&quot;&gt;entrefine&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Entgo 的扩展，用于生成带有 CRUD 操作的简化管理仪表板，所有这些都基于你的模式定义。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/jedib0t/go-pretty&quot;&gt;go-pretty&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在终端上漂亮地打印表格、列表和文本。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/mvdan/gofumpt&quot;&gt;gofumpt&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;更严格的 gofmt。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/natesales/q&quot;&gt;q&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个微型命令行 DNS 客户端，支持 UDP、TCP、DoT、DoH、DoQ 和 ODoH。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/hybridgroup/tinyglobo&quot;&gt;tinyglobo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个小气球飘进了伟大的大世界，拖着一个用 TinyGo 编程的 RP2040。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/mattn/algia&quot;&gt;algia&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;nostr 协议的 CLI 客户端。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/no-src/gofs&quot;&gt;gofs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个开箱即用的基于 Go 的跨平台文件同步工具。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16152</link><guid isPermaLink="false">https://studygolang.com/topics/16152</guid><pubDate>Sun, 19 Feb 2023 14:09:14 GMT</pubDate><author>polarisxiangbei</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 176 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://github.com/polaris1119/golangweekly/raw/master/docs/imgs/issue176/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：生成 mock 代码。&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;好久没出题了，本期来一道。&lt;/p&gt;
&lt;p&gt;以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import &quot;fmt&quot;

func main() {
    a := [&#39;9&#39;]int32{
        &#39;0&#39;: &#39;1&#39;,
        &#39;1&#39;: &#39;2&#39;,
    }
    fmt.Println(len(a))
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：2；B：9；C：10；D：57&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/raviqqe/muffet&quot;&gt;muffet 2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 中的快速网站链接检查器。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/batchcorp/plumber&quot;&gt;plumber 2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;瑞士军刀 CLI 工具，用于与 Kafka、RabbitMQ 和其他消息系统交互。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/kevwan/tproxy&quot;&gt;tproxy 0.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分析 TCP 连接的工具。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/ffuf/ffuf&quot;&gt;ffuf 2.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;快速的网络模拟器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/traefik/yaegi&quot;&gt;Yaegi 0.15.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个优雅的 Go 解释器。可以用于其他应用程序中的脚本编写，交互式 shell 或快速原型制作。你可以将其用作 REPL 或将其嵌入到自己的应用中。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/vektra/mockery&quot;&gt;mockery 2.19 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;提供了轻松为 Go 接口生成 mock 的功能。它删除了使用 mock 所需的样板代码。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/golang/go/issues/57433&quot;&gt;golang.org/x/exp/slices&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 1.21 版本中将挪入标准库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/UJA3S8WIeC5wQXbvhE1I6g&quot;&gt;一文读懂 Go 主流 Web 框架中路由的实现原理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文总结了3中路由的实现。路由本质上就是将请求的路径和对应的处理函数一一对应。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/wjhRDbclCUQt3h3fqKRoEA&quot;&gt;slog：Go官方的结构化日志包开发的怎么样了？该如何使用？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;熟悉 Go 的同学都知道 Go 语言标准库 log 有许多痛点，比如没有日志分级、没有结构化（没有 JSON 格式）、扩展性差等，为了解决这些问题 Go 官方推出了结构化日志包 slog，目前这个库正在开发阶段。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://tonybai.com/2023/02/08/some-changes-in-go-1-20/&quot;&gt;Go 1.20中值得关注的几个变化&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;按照惯例，我们依旧首先来看看 Go 语法层面都有哪些变化，这可能也是多数 Gopher 们最为关注的变化点。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://thedevelopercafe.com/articles/introduction-to-wails-build-desktop-apps-with-go-project-structure-17ee3f7fcdf7&quot;&gt;基于 Wails 构建桌面应用&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Wails 是一个使用 Go 编程语言开发桌面应用程序的框架。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/jordan-bonecutter/goption&quot;&gt;goption&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;仿照 Rust 的可选型。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/radondb/radon&quot;&gt;radon&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;RadonDB 是一个开源的云原生 MySQL 数据库，用于构建全球可扩展的云服务。不过好久没更新了。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/arp242/follow&quot;&gt;follow&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似 tail -f 命令的 Go 库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/traefik/mocktail&quot;&gt;mocktail&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 testify.mock 生成 mock 代码。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://docs.google.com/presentation/d/1MD_Vlb9d32aMDPu9MOlyVO796mK1Y6GrRcXOl63C7g4/edit#slide=id.p&quot;&gt;5 步让你的代码更快更高效&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;《Efficient Go》作者演讲 PPT。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/joho/godotenv&quot;&gt;godotenv&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;从 .env 加载环境变量。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/janpfeifer/gonb&quot;&gt;gonb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的全功能的 Jupyter 笔记本内核。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://blog.felixge.de/go-arm64-function-call-assembly/&quot;&gt;Go arm64 Function Call Assembly&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go ARM64 相关资料。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/returntocorp/semgrep&quot;&gt;semgrep&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;多种语言的轻量级静态分析。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/knipferrc/fm&quot;&gt;fm&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于终端的文件管理器。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16136</link><guid isPermaLink="false">https://studygolang.com/topics/16136</guid><pubDate>Sun, 12 Feb 2023 12:09:23 GMT</pubDate><author>polariseuibieur894</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 175 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue175/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go1.20 发布&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;Go 2023 调查问卷，期待你的参与：&amp;lt;&lt;a href=&quot;https://google.qualtrics.com/jfe/form/SV_bNnbAtFZ0vfRTH8?s=t&amp;amp;gt;%E3%80%82&quot;&gt;https://google.qualtrics.com/jfe/form/SV_bNnbAtFZ0vfRTH8?s=t&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://thenewstack.io/developers-most-likely-to-learn-go-and-rust-in-2023-survey-says/&quot;&gt;调查显示 2023 年开发者最想学习 Go 和 Rust&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;JetBrains 发起的调查。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://sessionize.com/gophercon-uk-2023&quot;&gt;GopherCon UK 2023 8 月举行&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;演讲者已经确定。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/mmcdole/gofeed&quot;&gt;gofeed 1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;RSS、Atom 和 JSON Feed 解析器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/yuin/goldmark&quot;&gt;goldmark 1.5.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;拥有易于扩展且与 CommonMark 兼容的优势。写过一篇文章专门介绍这个库。&lt;a href=&quot;https://mp.weixin.qq.com/s/8wz4U2DakVsU4tMoO-ultA&quot;&gt;专为 Gopher 准备的 Markdown 教程&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/onsi/ginkgo&quot;&gt;Ginkgo 2.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;现代的测试框架。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/grafana/tempo&quot;&gt;tempo 2.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个开放源代码，易于使用的大规模分布式跟踪后端。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v0.9.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/wader/fq&quot;&gt;fq 0.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似 jq，但用于二进制文件。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/caarlos0/env&quot;&gt;env 7.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;简单的 lib 可以将环境变量解析为结构体。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/59cxPFHWcdnUxKyRyo8SKw&quot;&gt;sourcegraph 出品的并发库 conc 详解&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;每个公司都有类似的轮子，与以往的库比起来，多了泛型，代码写起来更优雅，不需要 interface, 不需要运行时 assert, 性能肯定更好。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/8qzRRuNZSx1Diify6R4Ifw&quot;&gt;Go BIO/NIO探讨(4)：net/http 在 tcp conn 上的处理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;原文解读。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/jsdGV31yT5AR07BzRovWVw&quot;&gt;为什么 Go 不支持 []T 转换为 []interface&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 中，如果 interface{} 作为函数参数的话，是可以传任意参数的，然后通过类型断言来转换。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/GZ2HxJAxpZXiu_YKnzoVlw&quot;&gt;Go 1.20正式发布，最后一个支持Win7、Win8等旧系统的版本&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方正式发布了 Go1.20，相关的变化可以查看官方的 Releas Notes。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/redis/go-redis&quot;&gt;go-redis&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类型安全的 Redis Go 客户端。最新版本 V9（目前还在 RC 版本），是一个大版本。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/smallnest/rpcx&quot;&gt;rpcx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言的 RPC 服务治理框架，快、易用却功能强大。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/stephenafamo/bob&quot;&gt;bob&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;SQL 工具包。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/dexidp/dex&quot;&gt;dex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;OpenID Connect（OIDC）身份和具有可插拔连接器的 OAuth 2.0 提供程序。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://cupogo.dev/&quot;&gt;cupogo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个新的 Go Weekly 新闻。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/martinrue/cadet&quot;&gt;cadet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;创建简单的 HTTP-RPC 服务器。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16122</link><guid isPermaLink="false">https://studygolang.com/topics/16122</guid><pubDate>Sun, 05 Feb 2023 14:41:30 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 174 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue174/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：goread&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/panjf2000/gnet&quot;&gt;gnet 2.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/qax-os/excelize&quot;&gt;Excelize 2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于处理 Excel/XLSX 文档的库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/montanaflynn/stats&quot;&gt;stats 0.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;没有外部依赖，经过良好测试，可以使用平均值、总和、百分位数、标准差等概念。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/elliotchance/pie&quot;&gt;pie 2.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;操作 slice 和 map 的方便库。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/reugn/go-streams&quot;&gt;Go-streams v0.9.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;流处理库。提供简单明了的 DSL 以建立数据管道。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/valyala/fasthttp&quot;&gt;FastHTTP 1.44 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 快速的 HTTP 包。为高性能而调优。 热路径中的零内存分配。 比 net/http 快 10 倍。有兴趣可以研究为什么能做到快这么多。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/Shopify/sarama&quot;&gt;sarama v1.38 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Sarama 是 Apache Kafka 0.8 及更高版本的 Go 库。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/onsi/ginkgo&quot;&gt;Ginkgo 2.7 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;现代的测试框架。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/ClickHouse/clickhouse-go&quot;&gt;clickhouse-go 2.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;clickhouse 官方 go 客户端 API  库。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/HbFVODpDEzEZ047kv-LYbg&quot;&gt;Go1.20 新特性：context 支持自定义取消原因&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你想要的，它支持了。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/CGyoY_iJUyn8wZqs1Y--mQ&quot;&gt;一文读懂 Go Http Server 原理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;俗话说万事开头难，但用 Go 实现一个 Http Server 真不难，简单到什么程度？起一个 Server，并且能响应请求，算上包名、导入的依赖，甚至空行，也就只要 15 行代码。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/PIgfkdXK8wwQ6WpbVDjNMQ&quot;&gt;Go 1.19.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方发布了 Go1.19.5，同步发布的还有 Go1.18.10，这是两个小版本。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/Xt6P7ZADfjkRDsSxYX0u_w&quot;&gt;Go 与 TLS 1.3&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;如何加快基于 TLS 安全通信的海量连接的建连速度？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/gh3qi-NorkPC1gQLiuNwHQ&quot;&gt;Go BIO/NIO探讨(2)：net库对socket/bind/listen/accept的封装&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go内置的 net/http中使用了Blocking IO，主要体现在两层 for 循环。但真的是这样吗？&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/life4/enc&quot;&gt;enc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GnuPG 的替代品，生成和下载密钥，加密、解密和签署文本和文件。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/ngrok/ngrok-go&quot;&gt;ngrok-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;库形式的 ngrok 代理，适合直接集成到 Go 应用程序中。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/TypicalAM/goread&quot;&gt;goread&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个漂亮的可以在终端中阅读你的 RSS 提要！&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/dgryski/awesome-go-style&quot;&gt;awesome-go-style&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 风格指南集。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/noborus/ov&quot;&gt;ov&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个终端分页器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/KlothoPlatform/klotho&quot;&gt;klotho&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将普通代码转换为云端原生代码的命令行工具。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/abhinav/doc2go&quot;&gt;doc2go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个命令行工具，可以从你的 Go 代码中生成静态 HTML 文档。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16097</link><guid isPermaLink="false">https://studygolang.com/topics/16097</guid><pubDate>Sun, 15 Jan 2023 13:32:05 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 173 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue173/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：晚上学习 Golang&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/vscode-go/releases/tag/v0.37.0&quot;&gt;vscode-go 0.37.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;可报告你的依赖项中的已知漏洞，基于官方的这个数据库：&amp;lt;&lt;a href=&quot;https://go.dev/security/vuln/&amp;amp;gt;%E3%80%82&quot;&gt;https://go.dev/security/vuln/&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/charmbracelet/wish&quot;&gt;wish 1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;让在 Go 中构建基于 SSH 的应用变得更容易。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/yuin/gopher-lua&quot;&gt;gopher-lua 1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 实现的 Lua VM 和编译器。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/graph-gophers/graphql-go&quot;&gt;graphql-go 1.5.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;注重易用性的 GraphQL 服务器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/fyne-io/fyne&quot;&gt;fyne 2.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 Material Design 的 Go 跨平台 GUI。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/johnkerl/miller&quot;&gt;miller 6.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文本数据处理的瑞士军刀，Go 实现。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB v0.8.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/schollz/progressbar&quot;&gt;progressbar 3.13 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;线程安全的 process bar。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/gofiber/fiber/releases/tag/v2.34.0&quot;&gt;fiber 2.41.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一种 Express 风格的、基于 fasthttp 的 HTTP web 框架。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/wader/fq&quot;&gt;fq 0.2 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似 jq，但用于二进制文件。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/VrfqAB4LKCaPpQ1djgN5cg&quot;&gt;2022 年 Go 语言盘点&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;泛型落地，无趣很好，稳定为王。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/lgHVrhZ5GVJ65FrQDsRgow&quot;&gt;详解全网最快 Go 泛型跳表&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一套类似 C++ 中 STL 的容器和算法库。其中有序的 Map 用跳表实现，并优化到极致性能。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/V9MqbVFSQqkMdEthuEcKdQ&quot;&gt;Go1.20 RC2 发布：正式版快要来了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 1.20 正式版本预计将于 2023 年 2 月份发布。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/n-2T7Bzj-Yr5Pfz6ns5gHg&quot;&gt;最全Go select底层原理，一文学透高频用法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文基于 Go1.18.1 版本的源码，讲解 select 访问 Channel 在编译期和运行时的底层原理。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/VjP9Bv46x7NP6uQ7cbsqmg&quot;&gt;Go BIO/NIO探讨(1)：Gin框架中如何处理HTTP请求&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最近看到字节跳动开源了 Go 语言的 Hertz，声称使用了 Non-blocking IO 网络库 Netpoll，所以性能非常强大。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/sourcegraph/conc&quot;&gt;conc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;结构更佳的 Go 并发库。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/adhocteam/pushup&quot;&gt;pushup&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于在 Go 中开发面向页面的现代 Web 框架。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/thomasjungblut/go-sstables&quot;&gt;go-sstables&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;排序字符串表(sst)的 Go 实现。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://codeberg.org/anaseto/goal&quot;&gt;goal&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的嵌入脚本数组编程语言。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://tomthorogood.net/writing/announcing-passit/&quot;&gt;passit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个设计精良的 Go 密码生成工具包。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/slashbaseide/slashbase&quot;&gt;slashbase&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 Go 实现的运行于浏览器内的数据库 IDE 和 CLI，支持 PostgreSQL 和 MongoDB。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://www.youtube.com/playlist?list=PL2ntRZ1ySWBfiSJSt-zPRbVSMDfK0EwQC&quot;&gt;GopherCon 2022 大会演讲视频全集&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;YouTube 视频。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/coroot/coroot&quot;&gt;coroot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;微服务架构的监控与诊断工具。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16080</link><guid isPermaLink="false">https://studygolang.com/topics/16080</guid><pubDate>Sun, 08 Jan 2023 15:12:45 GMT</pubDate><author>polaris</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 172 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue172/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：2023 元旦快乐&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;停更了两期，这次赶在 2022 年最后一天更新下。大家 2023 年元旦快乐！&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/go/issues/57433&quot;&gt;提案：slices 将加入标准库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;具体会在 Go1.21，终于要加入了。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://altafino.com/blog/how-to-use-the-openai-chat-api-in-golang/&quot;&gt;Go 中可以使用 Chat API？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;具体库：&amp;lt;&lt;a href=&quot;https://github.com/openai/go-openai&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/openai/go-openai&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/5tfAHD3lYbktJ6Cy93CpCw&quot;&gt;用爱发电太难：招募不到维护者，Go流行的Web工具包归档了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;流行的开源 Go 语言 Web 工具包 Gorilla&amp;nbsp;宣布已正式归档。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/5HfZ2TrnUl2pfBft5-CAJg&quot;&gt;一起用Go做一个小游戏（上）&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一共三篇，另两篇：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&quot;https://mp.weixin.qq.com/s/UXpekTlUcK6nxKOYGZfP2A&quot;&gt;一起用Go做一个小游戏（中）：飞机大战&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&quot;https://mp.weixin.qq.com/s/Hw2GFSTY9Sgv2SPgYypreQ&quot;&gt;一起用Go做一个小游戏（下）&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/QQjOyYkDfuxIxHl6k6qkRA&quot;&gt;一文彻底理解Go语言栈内存/堆内存&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文将从6个方向层层递进，帮助大家彻底理解Go语言的栈内存和堆内存。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/FB2hLqoJojdP7UXQfaV9jA&quot;&gt;微服务税和更简单的 grpc mock&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;现在稍微有一点规模的公司基本都上微服务了，后端工程师在大小公司打杂的话都会碰到因为是微服务。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/02Dtj94yOjy2WTLko-5JXQ&quot;&gt;Go为什么能成功？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你觉得是什么原因？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/TjqeSK9PNCkJAdeik2U_wA&quot;&gt;Go 程序打成 rpm 包，也太简单了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;收藏以备不时之需。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/SA2Me6QGkzxLAfhmQ0eWmA&quot;&gt;有趣的 Go HttpClient 超时机制&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;我是既写 Java 又写 Go 的小楼，在写 Go 的过程中我经常对比这两种语言的特性，踩了不少坑，也发现了不少有意思的地方，今天就来聊聊 Go 自带的 HttpClient 的超时机制。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://thedevelopercafe.com/articles/logging-in-go-with-slog-a7bb489755c2&quot;&gt;官方试验日志库 slog&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;试用教程。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://bitly.com/blog/why-we-write-everything-in-go/&quot;&gt;为什么我们用 Go 开发一切&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;国外的一篇文章。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://mp.weixin.qq.com/s/2_xALNnPcHgZD7smWxzPcA&quot;&gt;Go：讲一个故事说明使用汇编语言的必要性&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;配合 ChatGPT 写成的文章。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/thomasjungblut/go-sstables&quot;&gt;go-sstables&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;排序字符串表 (sst) 的 Go 实现。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://codeberg.org/anaseto/goal&quot;&gt;goal&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的嵌入脚本数组编程语言。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/terrastruct/d2&quot;&gt;d2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 Go 实现的图表脚本语言，可以将文本转换为图表。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/answerdev/answer&quot;&gt;answer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 构建知识问答社区。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/wenlng/go-captcha&quot;&gt;go-captcha&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;行为验证码生成库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/curzodo/plugo&quot;&gt;plugo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 插件库。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://nicetomap.com/golang-1.19-standard-library&quot;&gt;Golang 1.19 标准库可视化&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似思维导图。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/coroot/coroot&quot;&gt;coroot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;微服务架构的监控与诊断工具。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/gobackup/gobackup&quot;&gt;gobackup&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;数据备份领域的“瑞士军刀”。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/turbot/steampipe&quot;&gt;steampipe&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个基于 Go 的用于API查询的 SQL 控制台。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/cloudflare/gokey&quot;&gt;gokey&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的一个简单的 vaultless 密码管理器。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://gosamples.dev/generics-cheatsheet/&quot;&gt;Go Generics cheatsheet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;泛型速查表。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://www.hello-algo.com/&quot;&gt;开源的图解算法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;还是基于各种常见语言的实现。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16062</link><guid isPermaLink="false">https://studygolang.com/topics/16062</guid><pubDate>Sat, 31 Dec 2022 11:38:59 GMT</pubDate><author>polarishuanglishi</author><category>Go周刊</category></item><item><title>学习周刊-总第84期-关于手机号的正则校验应该用严格校验，还是宽松校验呢</title><description>&lt;h3&gt;0 ，前言&lt;/h3&gt;
&lt;p&gt;周刊维护在：&lt;a href=&quot;https://github.com/eryajf/learning-weekly&quot;&gt;https://github.com/eryajf/learning-weekly&lt;/a&gt;  欢迎投稿，推荐或自荐项目 /文章 /博客，请提交 issue 。&lt;/p&gt;
&lt;p&gt;周刊核心为运维周刊，还会侧重Go语言生态，Vue相关技术生态的项目，以及 GitHub 上优秀项目或经验。&lt;/p&gt;
&lt;p&gt;你也可以在我的博客 &lt;a href=&quot;https://wiki.eryajf.net/learning-weekly/&quot;&gt;https://wiki.eryajf.net/learning-weekly/&lt;/a&gt; 查看汇总周刊。&lt;/p&gt;
&lt;h3&gt;1，优秀项目&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/http-party/http-server&quot;&gt;http-server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一个 js 实现的 http 透明代理。方便本地开发调试，也可用于生产 pod 代理。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/http-party/http-server#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/Kaiyiwing/qwerty-learner&quot;&gt;qwerty-learner&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/86ae7415aad2c7cf.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/Kaiyiwing/qwerty-learner#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/x-mirrors/gcr.io&quot;&gt;gcr.io&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：利用&amp;nbsp;&lt;a href=&quot;https://github.com/x-actions/python3-cisctl&quot;&gt;Github Action&lt;/a&gt;&amp;nbsp;同步 Google/Quay 等容器镜像到 &lt;a href=&quot;http://hub.docker.com/&quot;&gt;hub.docker.com&lt;/a&gt;，实现曲线加速被墙&amp;nbsp;&lt;a href=&quot;https://www.xiexianbin.cn/kubernetes&quot;&gt;kubernetes&lt;/a&gt;&amp;nbsp;和&amp;nbsp;&lt;a href=&quot;https://www.xiexianbin.cn/cloud-native&quot;&gt;云原生&lt;/a&gt;&amp;nbsp;的相关镜像问题。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/x-mirrors/gcr.io#readme&quot;&gt;README&lt;/a&gt;，&lt;a href=&quot;https://mirrors.kb.cx/&quot;&gt;在线查询使用&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/johnkerl/miller&quot;&gt;miller&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：Miller 类似于 awk、sed、cut、join 和 sort，用于 CSV、TSV 和表格 JSON 等名称索引数据。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/918986c0c1b64d5d.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/johnkerl/miller#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;2，优秀文章&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developer.aliyun.com/article/1064528&quot;&gt;如何打造一个能自动回复的钉钉机器人&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;这篇文章基于 Python 实现的一个钉钉群聊机器人对话功能&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.zhihu.com/question/333400359&quot;&gt;手机号正则到底是要宽松呢还是严谨呢, 你喜欢哪种?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;有意思的问题，里边的答案耐人寻味。看完之后，我认同高赞的回答，我选择宽松校验。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;3，优秀博客&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://32e.co/&quot;&gt;茶水栈&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：redis 专栏与 k8s 文章。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://blog.diqigan.cn/&quot;&gt;Seven&#39;s blog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：内容不错，值得阅读。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;http://www.9ong.com/archives.html&quot;&gt;TsingChan&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：PHP 方向的开发者，博客内容整理非常多。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
</description><link>https://studygolang.com/topics/16041</link><guid isPermaLink="false">https://studygolang.com/topics/16041</guid><pubDate>Fri, 16 Dec 2022 10:35:26 GMT</pubDate><author>eryajf</author><category>Go周刊</category></item><item><title>学习周刊-总第83期-几个chatGPT相关的项目与两个短链项目</title><description>&lt;h3&gt;0 ，前言&lt;/h3&gt;
&lt;p&gt;周刊维护在：&lt;a href=&quot;https://github.com/eryajf/learning-weekly&quot;&gt;https://github.com/eryajf/learning-weekly&lt;/a&gt;  欢迎投稿，推荐或自荐项目 /文章 /博客，请提交 issue 。&lt;/p&gt;
&lt;p&gt;周刊核心为运维周刊，还会侧重Go语言生态，Vue相关技术生态的项目，以及 GitHub 上优秀项目或经验。&lt;/p&gt;
&lt;p&gt;你也可以在我的博客 &lt;a href=&quot;https://wiki.eryajf.net/learning-weekly/&quot;&gt;https://wiki.eryajf.net/learning-weekly/&lt;/a&gt; 查看汇总周刊。&lt;/p&gt;
&lt;h3&gt;1，优秀项目&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/wong2/chat-gpt-google-extension&quot;&gt;chat-gpt-google-extension&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：显示 ChatGPT 响应和 Google 搜索结果的浏览器扩展，支持 Chrome/Edge/Firefox。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/5b86f7ad87808970.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/wong2/chat-gpt-google-extension#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/869413421/wechatbot&quot;&gt;wechatbot&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：最近chatGPT异常火爆，本项目可以将个人微信化身GPT机器人。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/119c9c3112b36bbc.jpg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/869413421/wechatbot#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/eryajf/chatgpt-dingtalk&quot;&gt;chatgpt-dingtalk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：最近chatGPT异常火爆，本项目可以将GPT机器人集成到钉钉群聊中。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/2ad746f6fce04369.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/eryajf/chatgpt-dingtalk#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/barats/ohUrlShortener&quot;&gt;ohUrlShortener&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：适合中小型社区网站使用的企业级短链接服务系统，支持短链接生产、查询及 302 转向，并自带点击量统计、独立 IP 数统计、访问日志.
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/00887474769cb30b.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/barats/ohUrlShortener#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/jwma/jump-jump&quot;&gt;jump-jump&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：又一个短链服务，功能相对上边那个简单一些，不过 UI 相对优雅一点。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/b071a25b7e2dd6d8.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/jwma/jump-jump#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/wolf-joe/ts-dns&quot;&gt;ts-dns&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：灵活快速的 DNS 分组转发器。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/554fe2dfd914b6ae.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/wolf-joe/ts-dns#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;2，优秀文章&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://hindung.cn/posts/26/&quot;&gt;K8s client-go初始化的几种方法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://blog.51cto.com/u_15197573/5333515?articleABtest=1#_21&quot;&gt;client-go 入门学习&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;很不错的入门文章&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;3，优秀博客&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://cnxiaobai.com/&quot;&gt;MemoryStory&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：作者博客内容很丰富，值得学习。同时还有公开的&lt;a href=&quot;https://file.cnxiaobai.com/&quot;&gt;网盘&lt;/a&gt;，有一些常用的开发工具。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://www.linux98.com/&quot;&gt;cplinux98&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：运维，golang，整理的挺不错。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://lienze.tech/#&quot;&gt;李恩泽&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：运维及其他，内容很丰富&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
</description><link>https://studygolang.com/topics/16040</link><guid isPermaLink="false">https://studygolang.com/topics/16040</guid><pubDate>Fri, 16 Dec 2022 10:34:47 GMT</pubDate><author>eryajf</author><category>Go周刊</category></item><item><title>学习周刊-总第82期-两个生成与解析二维码的go三方库</title><description>&lt;h3&gt;0 ，前言&lt;/h3&gt;
&lt;p&gt;周刊维护在：&lt;a href=&quot;https://github.com/eryajf/learning-weekly&quot;&gt;https://github.com/eryajf/learning-weekly&lt;/a&gt;  欢迎投稿，推荐或自荐项目 /文章 /博客，请提交 issue 。&lt;/p&gt;
&lt;p&gt;周刊核心为运维周刊，还会侧重Go语言生态，Vue相关技术生态的项目，以及 GitHub 上优秀项目或经验。&lt;/p&gt;
&lt;p&gt;你也可以在我的博客 &lt;a href=&quot;https://wiki.eryajf.net/learning-weekly/&quot;&gt;https://wiki.eryajf.net/learning-weekly/&lt;/a&gt; 查看汇总周刊。&lt;/p&gt;
&lt;h3&gt;1，优秀项目&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/mylxsw/wizard&quot;&gt;wizard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一款开源的文档管理工具，支持 Markdown/Swagger/Table 类型的文档。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/2b70641563dfa690.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/mylxsw/wizard#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/skip2/go-qrcode&quot;&gt;skip2/go-qrcode&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一个能够生成与解析二维码的 go 库。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/skip2/go-qrcode#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/yeqown/go-qrcode&quot;&gt;yeqown/go-qrcode&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：又一个生成与解析二维码的 go 库，功能更加丰富，支持往二维码中嵌入 logo 等能力。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/12/b138d0e7f840ee16.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/yeqown/go-qrcode#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/MirrorX-Desktop/MirrorX&quot;&gt;MirrorX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一个使用&amp;nbsp;&lt;a href=&quot;https://github.com/rust-lang/rust&quot;&gt;Rust&lt;/a&gt;&amp;nbsp;构建的远程桌面控制软件。配合完全开源的客户端与服务端、原生支持的端到端加密，用户可以构造快速且安全的远程控制网络，并且完全处于用户控制之下。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/3f15489665581fa6.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/MirrorX-Desktop/MirrorX/blob/master/README_CN.md&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/tal-tech/alarm-dog&quot;&gt;alarm-dog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一个通用的统一告警平台，提供配置化、流程化、标准化的能力。可以选择对接日志中心日志类监控、实时计算类的监控能力，各业务方也可以直接在代码中埋点上报告警，同时我们团队也可以定制化开发既能满足业务需求又能快速复用告警平台的监控系统，实现监控告警全场景覆盖。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/cd4095ae34e407b9.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/tal-tech/alarm-dog#readme&quot;&gt;README&lt;/a&gt;, &lt;a href=&quot;https://www.yuque.com/tal-tech/alarm-dog&quot;&gt;官方文档&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;2，优秀文章&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.cnblogs.com/wztshine/p/16295775.html&quot;&gt;cmd命令及bat批处理入门&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;很不错的入门文章，内容整理很全面&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://blog.csdn.net/ZNWhahaha/article/details/81324200&quot;&gt;Jenkins 关于从Unity中自动生成安卓包，Jenkins显示成功但并无apk文件生成的问题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.cnblogs.com/zndxall/p/9188300.html&quot;&gt;bat/cmd将命令执行的结果赋值给变量&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;3，优秀博客&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://pinlyu.com/&quot;&gt;频率&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：爱美食 / 纪录片 / 夜猫子。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://www.frytea.com/&quot;&gt;煎茶&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：内容丰富，值得学习。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
</description><link>https://studygolang.com/topics/16039</link><guid isPermaLink="false">https://studygolang.com/topics/16039</guid><pubDate>Fri, 16 Dec 2022 10:33:45 GMT</pubDate><author>eryajf</author><category>Go周刊</category></item><item><title>学习周刊-总第80期-两个前端代码生成项目与一个go语言时间库</title><description>&lt;h3&gt;0 ，前言&lt;/h3&gt;
&lt;p&gt;周刊维护在：&lt;a href=&quot;https://github.com/eryajf/learning-weekly&quot;&gt;https://github.com/eryajf/learning-weekly&lt;/a&gt;  欢迎投稿，推荐或自荐项目 /文章 /博客，请提交 issue 。&lt;/p&gt;
&lt;p&gt;周刊核心为运维周刊，还会侧重Go语言生态，Vue相关技术生态的项目，以及 GitHub 上优秀项目或经验。&lt;/p&gt;
&lt;p&gt;你也可以在我的博客 &lt;a href=&quot;https://wiki.eryajf.net/learning-weekly/&quot;&gt;https://wiki.eryajf.net/learning-weekly/&lt;/a&gt; 查看汇总周刊。&lt;/p&gt;
&lt;h3&gt;1，优秀项目&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/build-admin/buildadmin&quot;&gt;buildadmin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：CRUD代码生成、内置WEB终端，基于Vue3.x(setup)+ThinkPHP6+TypeScript+Vite+Pinia+Element Plus，自适应多端，同时提供Web和Server端、自动注册路由、无限级菜单权限节点、全局数据回收站、字段级修改保护等集颜值、实用、敏捷于一身的后台管理系统。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/ddef028c0b037a96.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/build-admin/buildadmin#readme&quot;&gt;README&lt;/a&gt;, &lt;a href=&quot;https://doc.buildadmin.com/&quot;&gt;官方文档&lt;/a&gt;, &lt;a href=&quot;https://demo.buildadmin.com/#/admin/testBuild&quot;&gt;在线演示&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/jinzhu/now&quot;&gt;now&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：又一个 go 时间库，作者是大名鼎鼎的 jinzhu，另一个优秀的库是 carbon。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/jinzhu/now#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/JakHuang/form-generator&quot;&gt;form-generator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：✨Element UI 表单设计及代码生成器
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/4dbf5f15bc62febd.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/JakHuang/form-generator#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/fenixsoft/awesome-fenix&quot;&gt;awesome-fenix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：这是一部以“如何构建一套可靠的分布式大型软件系统”为叙事主线的开源文档，是一幅帮助开发人员整理现代软件架构各条分支中繁多知识点的技能地图。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://icyfenix.cn/&quot;&gt;在线阅读&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;2，优秀文章&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://blog.csdn.net/henryhu712/article/details/89226902&quot;&gt;Nginx https 反向代理 http 的配置实例&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.zhangbj.com/p/808.html&quot;&gt;Linux yum 安装 OpenResty&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;3，优秀博客&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://www.iots.vip/&quot;&gt;Alliot&#39;s blog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：运维，以及效率工具方面。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
</description><link>https://studygolang.com/topics/16037</link><guid isPermaLink="false">https://studygolang.com/topics/16037</guid><pubDate>Fri, 16 Dec 2022 10:23:50 GMT</pubDate><author>eryajferyajf</author><category>Go周刊</category></item><item><title>学习周刊-总第79期-homebrew桌面版与一个类似jumpserver登陆界面的ssh登陆工具</title><description>&lt;h3&gt;0 ，前言&lt;/h3&gt;
&lt;p&gt;周刊维护在：&lt;a href=&quot;https://github.com/eryajf/learning-weekly&quot;&gt;https://github.com/eryajf/learning-weekly&lt;/a&gt;  欢迎投稿，推荐或自荐项目 /文章 /博客，请提交 issue 。&lt;/p&gt;
&lt;p&gt;周刊核心为运维周刊，还会侧重Go语言生态，Vue相关技术生态的项目，以及 GitHub 上优秀项目或经验。&lt;/p&gt;
&lt;p&gt;你也可以在我的博客 &lt;a href=&quot;https://wiki.eryajf.net/learning-weekly/&quot;&gt;https://wiki.eryajf.net/learning-weekly/&lt;/a&gt; 查看汇总周刊。&lt;/p&gt;
&lt;h3&gt;1，优秀项目&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/upscayl/upscayl&quot;&gt;upscayl&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：AI 提升图片清晰度的软件，支持 Linux，Mac，Windows 多平台。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/10/4cb110bf49af844a.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/upscayl/upscayl#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/hellof2e/quark-design&quot;&gt;quark-design&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：哈啰开源的一套企业级跨框架 UI 设计语言，支持 Vue、React、Angular 等各类框架/无框架。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/hellof2e/quark-design/blob/main/README.zh-CN.md&quot;&gt;README&lt;/a&gt;, &lt;a href=&quot;https://quark-design.hellobike.com/#/&quot;&gt;官网&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/brunophilipe/Cakebrew&quot;&gt;Cakebrew&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：Mac 电脑 homebrew 工具的桌面端，能够方便地查看已安装的和能够安装的软件列表。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/e5e77a341b5acecc.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/brunophilipe/Cakebrew#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/yinheli/sshw&quot;&gt;sshw&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一款实现了类似 jumpserver 登陆界面的终端 ssh 工具。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/11/f5875b0cf87146ab.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/yinheli/sshw#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;2，优秀文章&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.cnblogs.com/wongbingming/p/16079232.html&quot;&gt;Go 1.18 系列篇（三）：一文掌握 Go 工作区模式&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;学习一个新的知识点：&lt;code&gt;go.work&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.cnblogs.com/chenyishi/p/10943352.html&quot;&gt;jenkins pipeline中获取shell命令的标准输出或者状态&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.rancher.cn/docs/rancher2.5/monitoring-alerting/expression/_index/#pod-cpu-%E5%88%A9%E7%94%A8%E7%8E%87&quot;&gt;k8s 集群监控指标查询语句&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;如题&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;3，优秀博客&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://ssbostan.medium.com/&quot;&gt;Saeid Bostandoust&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：运维开发工程师，博客内容不错&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;http://book.webjun.com/&quot;&gt;网君电子书&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：网站汇集了大量免费的电子书&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
</description><link>https://studygolang.com/topics/16036</link><guid isPermaLink="false">https://studygolang.com/topics/16036</guid><pubDate>Fri, 16 Dec 2022 10:21:20 GMT</pubDate><author>eryajfxiangbei</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 170 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue170/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Gopher 图片集&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;本期是一道关于 math 包的 Inf 的题目。以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import (
    &quot;fmt&quot;
    &quot;math&quot;
)

func main() {
    // Inf returns positive infinity if sign &amp;amp;gt;= 0, negative infinity if sign &amp;amp;lt; 0.
    x := math.Inf(1)
    switch {
    case x &amp;amp;lt; 0, x &amp;amp;gt; 0:
        fmt.Println(x)
    case x == 0:
        fmt.Println(&quot;zero&quot;)
    default:
        fmt.Println(&quot;something else&quot;)
    }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：+Inf； B：zero； C：something else； D：doesn&#39;t compile&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/go/issues/53435&quot;&gt;1.20 将支持 Wrap 多个错误&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一起的还有 Unwrap 的支持。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://news.ycombinator.com/item?id=33757306&quot;&gt;HN 热议&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你喜欢或不喜欢 Go 什么？&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/knadh/listmonk&quot;&gt;listmonk 2.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;具有现代仪表板的高性能，自托管通讯和邮寄列表管理器。Go + Vue 构建。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/johnkerl/miller&quot;&gt;miller 6.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文本数据处理的瑞士军刀，Go 实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/uber-go/zap&quot;&gt;zap 1.24 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Uber 出品的日志库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/rabbitstack/fibratus&quot;&gt;fibratus 1.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Windows 内核勘探和追踪的现代工具。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/valyala/fasthttp&quot;&gt;FastHTTP 1.43 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 快速的 HTTP 包。为高性能而调优。 热路径中的零内存分配。 比 net/http 快 10 倍。有兴趣可以研究为什么能做到快这么多。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/-VOPPLP48b0NOdysjNs4ZA&quot;&gt;快收藏！最全Go语言实现设计模式（下）&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文继续列出Go语言实现的经典设计模式示例，每个示例都精心设计，力求符合模式结构，可作为日常编码参考，同时一些常用的设计模式融入了开发实践经验总结，帮助大家在平时工作中灵活运用。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/yohyILv2d9-qrhqtoM5gvQ&quot;&gt;用 Go 语言，如何编写一个能玩的国际象棋引擎？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2016 年，AlphaGo 一连战胜多位人类职业围棋选 手，从此一炮而红，各种下棋机器人近几年也层出不穷。那么，你是否想过要自己做一个呢？&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/fRfpBTWt4dwqfQJ0cWizIA&quot;&gt;盘点那些 Go 的最佳应用场景&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;如果你想知道什么样的应用程序可以使用 Golang，请按照本文了解 Golang 开发的最佳场景。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/vB9ElJCfgZeQHtB596XHpA&quot;&gt;Go 服务自动收集线上问题现场&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;对于&amp;nbsp;&lt;code&gt;pprof&lt;/code&gt;，相信熟悉 Go 语言的程序员基本都不陌生，一般线上的问题都是靠它可以快速定位。但是实际项目中，很多时候我们为了性能都不会开启它，但是出了问题又要靠它来分析。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/nQ2SxT8dtRWjbDQccBaY1Q&quot;&gt;从鹅厂实例出发！分析Go Channel底层原理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文是基于 Go1.18.1源码的学习笔记。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/IvL24_7iuuRp9Y3dljHaHQ&quot;&gt;GoLand 迎来五周年，同时发布 2022.3：有彩蛋&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GoLand 2022.3 是 2022 系列的最后一个版本，提供了性能增强以及针对泛型和 Go 工作区的新功能。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/keith-turner/ecoji&quot;&gt;ecoji&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将数据编码（和解码）为表情符号。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/casbin/casnode&quot;&gt;casnode&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 和 React 驱动的论坛系统。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/robertkrimen/otto&quot;&gt;otto&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 JavaScript 解释器。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/skeema/skeema&quot;&gt;skeema&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MySQL/MariaDB 的声明式纯 SQL 模式管理。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/Masterminds/semver&quot;&gt;semver&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分析、排序和检查语义版本号。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/MariaLetta/free-gophers-pack&quot;&gt;free-gophers-pack&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Gopher 图片合集。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/16008</link><guid isPermaLink="false">https://studygolang.com/topics/16008</guid><pubDate>Sun, 04 Dec 2022 13:41:48 GMT</pubDate><author>polarisli621020</author><category>Go周刊</category></item><item><title>学习周刊-总第76期-Vue3右键菜单组件和数据库备份管理平台</title><description>&lt;h3&gt;0 ，前言&lt;/h3&gt;
&lt;p&gt;周刊维护在：&lt;a href=&quot;https://github.com/eryajf/learning-weekly&quot;&gt;https://github.com/eryajf/learning-weekly&lt;/a&gt;  欢迎投稿，推荐或自荐项目 /文章 /博客，请提交 issue 。&lt;/p&gt;
&lt;p&gt;周刊核心为运维周刊，还会侧重Go语言生态，Vue相关技术生态的项目，以及 GitHub 上优秀项目或经验。&lt;/p&gt;
&lt;p&gt;你也可以在我的博客 &lt;a href=&quot;https://wiki.eryajf.net/learning-weekly/&quot;&gt;https://wiki.eryajf.net/learning-weekly/&lt;/a&gt; 查看汇总周刊。&lt;/p&gt;
&lt;h3&gt;1，优秀项目&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/lra/mackup&quot;&gt;mackup&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：Mac 应用配置备份软件。&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/lra/mackup#readme&quot;&gt;README&lt;/a&gt;ec&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/xfy520/vue3-menus&quot;&gt;vue3-menus&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：Vue3.0 原生实现完全自定义右键菜单组件。提供在项目中右键菜单的能力。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/10/ba37a65eaa145467.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/xfy520/vue3-menus#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/noovertime7/gin-mysqlbak&quot;&gt;gin-mysqlbak&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一款分布式高性能的备份系统，支持 mysql、ElasticSearch 备份，多集群任务统一，数据集中存储
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/10/1e1ed28a2d20c039.jpg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/noovertime7/gin-mysqlbak#readme&quot;&gt;README&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;项目地址：&lt;a href=&quot;https://github.com/aoaostar/toolbox&quot;&gt;toolbox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;项目说明：一个在线工具箱的项目源码。
&lt;img src=&quot;http://t.eryajf.net/imgs/2022/10/ea724d920d723a81.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/li&gt;
&lt;li&gt;相关文章：&lt;a href=&quot;https://github.com/aoaostar/toolbox#readme&quot;&gt;README&lt;/a&gt;, &lt;a href=&quot;https://tool.aoaostar.com/&quot;&gt;在线体验&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;2，优秀文章&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://yusank.space/posts/conn-pool/&quot;&gt;Go 语言实现连接池&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;写的很通俗，值得阅读学习&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://colobu.com/2021/06/28/dive-into-go-module-2/&quot;&gt;深入Go Module之讨厌的v2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;当你的库版本达到&lt;code&gt;v2.x&lt;/code&gt;，那么引用者就需要在引用path后加个v2，所以，如果你有一个go的开源仓库，那么不要把版本打到超过v2。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.zeonll.com/code/work/2022-05-15-bypass-monitor-syst/&quot;&gt;资损监控系统搭建（二）:基于消息的实时旁路资损监控系统设计&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;不太常见的维度的文章&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3&gt;3，优秀博客&lt;/h3&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://blog.azhubaby.com/&quot;&gt;Azhubaby Blog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：技术思考，内容不错&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;https://www.uncoverman.com/&quot;&gt;夜航船夫&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：个人成长，效率工具，工作生活&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;博客地址：&lt;a href=&quot;http://stromxu.com/&quot;&gt;stromXu的个人小站&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;简单说明：golang相关内容，整理的不错&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
</description><link>https://studygolang.com/topics/15939</link><guid isPermaLink="false">https://studygolang.com/topics/15939</guid><pubDate>Sat, 29 Oct 2022 02:03:19 GMT</pubDate><author>eryajfmengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 152 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue152/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：golangweekly&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;上期题目，以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import &quot;fmt&quot;

func main() {
m := map[string]int{&quot;uno&quot;: 1}
p := &amp;amp;amp;m[&quot;uno&quot;]
*p = 2
fmt.Println(m[&quot;uno&quot;])
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：1；B：2；C：panic；D：不能编译&lt;/p&gt;
&lt;p&gt;正确答案：D，该题正确率 36%。错误：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;cannot take address of m[&quot;uno&quot;] (map index expression of type int)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;本期题目。以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import &quot;fmt&quot;

func main() {
const c = 8
a := &amp;amp;amp;c
*a = 12
fmt.Println(*a)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：8；B：不能编译；C：12&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/six-ddc/plow&quot;&gt;plow 1.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实时 Web UI 和终端显示的高性能 HTTP 基准测试工具。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/sirupsen/logrus&quot;&gt;Logrus 1.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;功能丰富的结构化 Logger。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/rqlite/rqlite&quot;&gt;rqlite 7.6.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 SQLite 分布式关系数据库。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/xo/usql&quot;&gt;usql 0.10 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;数据库的通用 cli 工具，可以认为是数据库的瑞士军刀。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://go.dev/doc/gc-guide&quot;&gt;GC 指南&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 官方的 GC 指南。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/cG5R6J4PW6OEGSIK6z02UA&quot;&gt;相比高人气的Rust、Go，为何 Java、C 在工具层面进展缓慢？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最受欢迎的高人气编程语言（2022）：Rust，Typescript，Python，Go，C#，Kotlin，JavaScript。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/zu0HyJybjwb19nNMDeFcEw&quot;&gt;Go 每日一库之 roaring&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;集合是软件中的基本抽象。实现集合的方法有很多，例如 hash set、tree等。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/du5DYfyOSMGygArtRPOu8g&quot;&gt;Hugo 作者、Go 语言产品负责人突然宣布离职&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;7月18日，谷歌Go语言产品负责人Steve Francia在个人博客上发了篇长文，回顾总结自己在谷歌的6年生涯经历，并分享了离开的原因。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/Fy_OKqSmIK6ImQQDiNGH9A&quot;&gt;Go 每日一库之 bitset&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;bitset 库实现了位集合及相关操作。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/klauspost/cpuid&quot;&gt;cpuid&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;获取 CPU 详细信息。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/dominikbraun/graph&quot;&gt;graph&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于创建图形数据结构并对其执行操作的泛型库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/TIBCOSoftware/flogo&quot;&gt;flogo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;开源的事件驱动能力的生态系统。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/loov/lensm&quot;&gt;lensm&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;以源码对照方式查看 Go 汇编，还有一篇专门介绍的文章：&amp;lt;&lt;a href=&quot;https://www.storj.io/blog/lensm&amp;amp;gt;%E3%80%82&quot;&gt;https://www.storj.io/blog/lensm&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/swaggo/swag&quot;&gt;swag&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Swag 将 Go 的注释转换为 Swagger2.0 文档。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://gotemplate.io/&quot;&gt;gotemplate&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在线快速测试 Go template。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/cloudflare/gokey&quot;&gt;gokey&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 中一个简单的无保险库密码管理器。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://changelog.com/gotime/238&quot;&gt;Go Time 第 238 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 是面向对象编程语言吗？&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/naiba/nezha&quot;&gt;nezha&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的自托管的轻量级服务器和网站监控和运维工具。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/15715</link><guid isPermaLink="false">https://studygolang.com/topics/15715</guid><pubDate>Sun, 24 Jul 2022 12:07:59 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 151 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue151/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：土拨鼠逛图书馆&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;上周因为忙，没来得及出周刊，有人催，这感觉还是挺好，表明有人一直在看，这是更新地动力。&lt;/p&gt;
&lt;p&gt;上期的一道题目，正确率 36%。一起看看：&lt;/p&gt;
&lt;p&gt;以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import &quot;fmt&quot;

func main() {
fmt.Println(09)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：09；B：9；C：11；D：编译不通过&lt;/p&gt;
&lt;p&gt;正确答案：D。0 开头，表明是八进制，但八进制最大的数字是 7，因此编译不通过。&lt;/p&gt;
&lt;p&gt;一起看看本期题目。以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import &quot;fmt&quot;

func main() {
m := map[string]int{&quot;uno&quot;: 1}
p := &amp;amp;amp;m[&quot;uno&quot;]
*p = 2
fmt.Println(m[&quot;uno&quot;])
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：1；B：2；C：panic；D：不能编译&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/elastic/go-elasticsearch&quot;&gt;ElasticSearch Go 8.3 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;ElasticSearch Go 8.3 官方客户端发布。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/traefik/traefik&quot;&gt;traefik 2.8 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;HTTP 反向代理和负载均衡器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/FerretDB/FerretDB&quot;&gt;FerretDB 0.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MongoDB 的替代品。之前叫 MangoDB，容易被人理解为碰瓷。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/vitessio/vitess&quot;&gt;vitess 14.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于 MySQL 水平扩展的集群系统。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/valyala/fasthttp&quot;&gt;fasthttp 1.38.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 HTTP 库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/hashicorp/go-version&quot;&gt;go-version 1.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;版本号解析和验证库。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/go-delve/delve&quot;&gt;delve 1.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 调试器。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://blog.jetbrains.com/go/2022/07/07/goland-2022-2-goes-beta/&quot;&gt;GoLand 2022.2 Beta 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GoLand 2022.2 已达到测试里程碑！&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/yVr5NZxDecJ7GEC9mWmtPQ&quot;&gt;各大主流编程语言性能PK，结果出乎意料&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;什么编程语言速度最快？&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/VE1iZfgh9odCnfBXnmugKw&quot;&gt;Go 每日一库之 hystrix-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hystrix 是 Netflix 的一个非常棒的项目，这是 Go 版本。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/GKggVplX_ZzoXJDuWf5ctA&quot;&gt;在Go中如何正确重试请求&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;我们平时在开发中肯定避不开的一个问题是如何在不可靠的网络服务中实现可靠的网络通信，其中 http 请求重试是经常用的技术。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/zXNPWl80AkNZ_IwqQyL6EA&quot;&gt;揭秘！用标准Go语言能写脚本吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;作为编译型语言的特性，也让Go在多协程环境下的性能有不俗的表现。但脚本语言则几乎都是解释型语言，那么Go怎么就和脚本扯上关系了？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/yOmQ1AQEi6qM8yFECHWRDQ&quot;&gt;gRPC如何在Golang和PHP中进行实战？7步教你上手！&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文主要实战演示一下gRPC的几种调用通讯模式（普通、客户端流、服务端流、双向流）以及和PHP客户端的联通调用。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/YaQ4MH9wpy-XfAS9EvYkpg&quot;&gt;Golang原生json可以一库走天下吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go的“玩家”们看到这个题目可能会很疑惑。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/LD2MOnr-lvgBdzaS2eOxZw&quot;&gt;Go究竟是否为空切片分配了底层数组&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;切片是Go语言中的一个重要的语法元素，也是日常Go开发中使用最为频繁的语法元素。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://mp.weixin.qq.com/s/_iZsFPaUk2RzHR_A2u-AdQ&quot;&gt;Go 每日一库：tproxy 是个啥？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;复杂网络情况的处理从来都是后端开发的重点和难点之一。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://mp.weixin.qq.com/s/rCrLL48nqrzA2--Dg2N_pQ&quot;&gt;Wasm 的主力，你觉得是谁？Go？Rust？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最新的一份《The State of WebAssembly 2022》调查报告已出炉。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://mp.weixin.qq.com/s/swpgU1V0Oh6DQnKiQbd9Hg&quot;&gt;为什么国内做不出 JetBrains 那样的产品？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分享一个很有意思的回答。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/jaevor/go-nanoid&quot;&gt;go-nanoid&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个小巧、安全、URL 友好的字符串 ID 生成器。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/rcrowley/go-metrics&quot;&gt;go-metrics&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Metrics 库的 Go 端口。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/andeya/erpc&quot;&gt;erpc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;高效、灵活、易于使用的 RPC 框架。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue151/erpc.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/samber/do&quot;&gt;do&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 Go1.18 泛型的依赖注入工具包。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/shomali11/slacker&quot;&gt;slacker&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Slack Bot 框架。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/pocketbase/pocketbase&quot;&gt;pocketbase&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;单个文件的 Go 开源实时后端。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/open2b/scriggo&quot;&gt;scriggo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;强大的模板引擎和 Go 嵌入式解释器。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/CECTC/hptx&quot;&gt;hptx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言分布式事务框架。（网友 dk-lockdown 推荐）&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/lesismal/sqlw&quot;&gt;sqlw&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最简单易用的 RawSql 库。（网友 lesismal 推荐）&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.linode.com/content/kubernetes-guide/&quot;&gt;理解 K8S&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;免费电子书（英文）。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/mingcheng/socks5lb&quot;&gt;socks5lb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;socks5 透明代理和负载均衡代理。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/eryajf/go-ldap-admin&quot;&gt;go-ldap-admin&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于 Go+Vue 实现的 openLDAP 后台管理项目。(网友 eryajf 推荐)&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/HDT3213/rdb&quot;&gt;rdb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Redis RDB 文件编解码器。（网友 HDT3213 推荐）&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/duke-git/lancet&quot;&gt;lancet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个全面、高效、可复用的 Go 语言工具函数库。（网友 thecodeworks 推荐）&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/15686</link><guid isPermaLink="false">https://studygolang.com/topics/15686</guid><pubDate>Sun, 10 Jul 2022 02:58:37 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 104 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。&lt;/p&gt;
&lt;p&gt;本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于一些人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue104/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Go1.17 RC1 发布&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;上期是一道关于 reflect 的题，以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import (
&quot;fmt&quot;
&quot;reflect&quot;
)

func main() {
i := 1
j := 1
no1 := &amp;amp;amp;i
no2 := &amp;amp;amp;j
if reflect.DeepEqual(no1, no2) {
fmt.Println(&quot;equal&quot;)
return
}
fmt.Println(&quot;not equal&quot;)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：equal；B：not equal；C：不确定&lt;/p&gt;
&lt;p&gt;答案是 A。一半人答对！从 DeepEqual 这个函数名可以看出，它会进行“深度”比较。对于指针类型，它会比较它们指向的值是否相等。因为 i 和 j 的值都是 1，所以结果是 A。详细信息可以查看 DeepEqual 函数的文档。&lt;/p&gt;
&lt;p&gt;本期题目来自 Go101。以下代码输出什么？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

func main() {
  var x *struct {
    s [][32]byte
  }
  
  println(len(x.s[99]))
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A：运行时 panic；B：32；C：编译错误；D：0&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://groups.google.com/g/golang-announce/c/gJE7OtHlRbM/m/21x8zAR-AAAJ&quot;&gt;Go 1.17 RC 1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;官方常规安装方式：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;$ go get golang.org/dl/go1.17rc1
$ go1.17rc1 download
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/s1q6YKzFX0FLec394es-0g&quot;&gt;Go1.16.6 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;又一个小问题引发安全 Bug。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/google/uuid&quot;&gt;uuid 1.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;谷歌出品。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/gobwas/ws&quot;&gt;ws 1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小型的 WebSocket 库。&lt;/p&gt;
&lt;h2&gt;谁在招 Gopher&lt;/h2&gt;
&lt;p&gt;整理近期的 Go 职位。有招聘需求可以到「Go招聘」发布！&lt;/p&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/Psgfopy8j5sZFX-l9uk4WQ&quot;&gt;诺瓦科技诚聘Gopher，共同创造智能视界&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/pzCefw0g82f6fNqiW3wqEg&quot;&gt;这个工具真好：看看你的Go项目依赖有无漏洞&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;建议查查你的项目。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/4-n-mpSPrT8kbxRT1qv0Xw&quot;&gt;Go 微服务中的熔断器和重试&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;讨论微服务架构中的自我恢复能力。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/INW0vr9_9cQhbTBR5ho0Sw&quot;&gt;图解 Go 协程，操作系统线程和 CPU 管理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;对于一个程序来说，从内存和性能角度讲创建一个 OS 线程或切换线程花费巨大。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/P8-ob4F70J03Hv_CQvJVcw&quot;&gt;Go 项目从 Travis 迁移至 GitHub Actions&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用新的 GitHub Actions 将手动发版过程自动化。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/1JfYNZR8dH2eaCRuLJmJcg&quot;&gt;Go1.17 新特性：新版构建约束&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用 &lt;code&gt;//go:build&lt;/code&gt; 格式。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/nQMgB76ecuF86TtO1NjiOA&quot;&gt;Go程序内存分配过多？试试本文的方法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;由于Go语言在抽象和垃圾回收内存管理模型方面介于C和Python之间，这对于那些希望能够找到一门处理效率高但同时又容易理解的高级程序语言的程序员来说，具有相当大的吸引力。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/qxgTsATqGLjx89d9rE2Vmg&quot;&gt;一顿操作猛如虎：Rust 能避免 Go 的 Bug？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;两门语言配合挺好的吧！&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://mp.weixin.qq.com/s/knayd7gQSChyDfSJCxh3uA&quot;&gt;Go日志库zero-log大解剖&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;挺有名的一个 Go 日志库。&lt;/p&gt;
&lt;p&gt;9、Russ Cox 三篇关于内存模型的新文章，&lt;a href=&quot;https://colobu.com/2021/06/30/hwmm/&quot;&gt;中文翻译版&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这里是&lt;a href=&quot;https://colobu.com/2021/07/11/Programming-Language-Memory-Models/&quot;&gt;第二&lt;/a&gt;、&lt;a href=&quot;https://colobu.com/2021/07/13/Updating-the-Go-Memory-Model/&quot;&gt;第三篇&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://mp.weixin.qq.com/s/501wCGxATJ0J7kGZqsKiJw&quot;&gt;Rust + Go 双剑合璧：WebAssembly 领域应用&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个 CNCF 项目。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://livekit.io/&quot;&gt;LiveKit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;实时通信的开源平台，有相当完整的前后端实现，支持音视频，服务端基于 Go 实现。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/healeycodes/golfcart&quot;&gt;golfcart&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;生命不息，折腾不止。又一个 Go 语言实现的脚本语言。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/MarvinJWendt/testza&quot;&gt;testza&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;全功能测试框架！断言、mock 等。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue104/testza.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/vbauerster/mpb&quot;&gt;mpb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;多进度条实现，并发下载可能需要。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/halturin/ergo&quot;&gt;ergo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Erlang/TOP 技术的 Go 实现。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/hashicorp/cap&quot;&gt;cap&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hashicorp 开源，一个认证包的集合。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/diamondburned/gotk4&quot;&gt;gotk4&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go GTK4 绑定生成器。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/csimplestring/bool-expr-indexer&quot;&gt;bool-expr-indexer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 布尔表达式索引器库。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/Link512/stealthpool&quot;&gt;stealthpool&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;提供了一个内存池，它在堆外分配的块不会被垃圾收集器追踪到。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/ThinkiumGroup/go-thinkium&quot;&gt;go-thinkium&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的全能公链 thinkium。&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://github.com/cloudwego/netpoll&quot;&gt;netpoll&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;开源网络库。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gojuno/minimock&quot;&gt;minimock&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;强大的 mock 生成工具。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/LdDl/gan-go&quot;&gt;gan-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过 Gorgonia 在 Go 中使用生成对抗性网络(GAN) 。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/aohorodnyk/mimeheader&quot;&gt;mimeheader&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MIME 头分析工具 mimeheader。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/i-rme/GOP-Server&quot;&gt;GOP-Server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;内置 Go 语言扩展引擎的 Go Web 服务器。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/13990</link><guid isPermaLink="false">https://studygolang.com/topics/13990</guid><pubDate>Mon, 19 Jul 2021 15:14:16 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 71 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。&lt;/p&gt;
&lt;p&gt;本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于大部分人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：一个宇宙飞船模拟游戏 &amp;lt;&lt;a href=&quot;https://github.com/BenNicholls/spaceshippers&amp;amp;gt&quot;&gt;https://github.com/BenNicholls/spaceshippers&amp;amp;gt&lt;/a&gt;;&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;看到一道题，挺有意思。以下代码能否通过编译？&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;package main

import (
&quot;fmt&quot;
)

type worker interface {
work()
}

type person struct {
name string
worker
}

func main() {
var w worker = person{}
fmt.Println(w)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A: 能；B: 不能；C: 不知道&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://systemsconf.io/&quot;&gt;Go SYSTEMS CONF SF 会议&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2020 年 12 月 03 日举行。Go Systems Conf SF 是一个免费的在线 Go 会议，将于下周举行，关注构建和可扩展 Go 系统。来自 Monzo、VMware 和 DigitalOcean 等公司的优秀演讲者阵容。该会议中 PingCAP 的 CTO 黄东旭也是演讲者。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/golang/vscode-go/releases/tag/v0.19.0&quot;&gt;vscode-go 0.19.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GitHub-Actions 自动发布的说明。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/buraksezer/olric&quot;&gt;olric 0.3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分布式缓存和内存键/值数据存储。它既可以用作嵌入式 Go 库，也可以用作独立于语言的服务。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://blog.jetbrains.com/go/2020/11/27/goland-2020-3-rc-now-available/&quot;&gt;GoLand 2020.3 RC 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;离正式版不远了。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://gohugo.io/news/0.79.0-relnotes/&quot;&gt;Hugo 0.79.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小版本，但有用。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/tal-tech/go-zero&quot;&gt;go-zero 1.0.29 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;goctl 增加了一些功能。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/44duJY9BSS3Ki07jt4pgOA&quot;&gt;CNCF 刚宣布 etcd 正式毕业：赶紧实战下 etcd 的服务发现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在云原生的时代，服务发现已经是必不可少的功能，我借着最近迁移 gRPC 服务的机会尝试了一下如何用 etcd 实现服务发现，期间遇到诸多问题，本文逐一记之。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/Iv5AZcbD_ubEyWC4jyp9eQ&quot;&gt;一文搞懂 Go 语言中的切片排序&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;切片是Go语言中引入的用于在大多数场合替代数组的语法元素。切片是长度可变的同类型元素序列，它不支持存储不同类型的元素，当然如果你非用sl := []interface{}{&quot;hello&quot;, 11,  3.14}来抬杠^_^，那就另当别论。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/S12_Nf29iHgkovGRZNXRDA&quot;&gt;重度使用 Go 的“后遗症“，你有吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;很多人可能会有。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/WjRRCU3xKvDRKgru9dZ7hg&quot;&gt;实战：150 行 Go 实现高性能 socks5 代理&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;光说不练假把式，不如上手试试，这篇来写个有点卵用的东西。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/pNVeAPIYQDW2JJ82xu95Kg&quot;&gt;基于 Golang 语言的微服务熔断器&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;从单体服务拆分到微服务过程中，原来模块间交互逐渐抽离成远程调用，可能 http，rpc，tcp 等等，那么这些模块在调用中一定存在某种依赖关系。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://blog.netlab.360.com/blackrota-an-obfuscated-backdoor-written-in-go/&quot;&gt;Blackrota, 一个 Go 开发的高度混淆的后门&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最近，我们通过 Anglerfish 蜜罐捕获到一个利用 Docker Remote API 未授权访问漏洞来传播的 Go 语言编写的恶意后门程序，鉴于它上线的 C2 为 &lt;a href=&quot;http://blackrota.ga/&quot;&gt;blackrota.ga&lt;/a&gt; ，我们把它命名为 Blackrota。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/benbjohnson/clock&quot;&gt;clock&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Clock 是 Go 中用来模拟时间的一个小库。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/clock.jpg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/Delta456/box-cli-maker&quot;&gt;box-cli-maker&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为你的 CLI 应用制作高度定制的盒子（方框）。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/box-cli-maker.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/RichardKnop/machinery&quot;&gt;machinery&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个基于分布式消息传递的异步任务队列/作业队列。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/awslabs/aws-lambda-go-api-proxy&quot;&gt;aws-lambda-go-api-proxy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;可以轻松地将使用 Gin 等框架编写的 API 移植到 AWS Lambda 和 Amazon API Gateway。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/inetaf/netaddr&quot;&gt;netaddr&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 网络地址包，据说比 net.IP 更好，不过目前还不建议用于生产环境。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/linxGnu/grocksdb&quot;&gt;grocksdb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;rocksdb 的 Go binding。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/rsms/gotalk&quot;&gt;gotalk&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;异步对等通信协议和库。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/gotalk.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/stripe/stripe-go&quot;&gt;stripe-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;转到 Stripe API 库。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/Joker666/cogman&quot;&gt;cogman&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;高效的后台处理，后端支持 RabbitMQ 和 Redis。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/go-chassis/go-archaius&quot;&gt;go-archaius&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分布式系统中使用的动态配置框架。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/go-archaius.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://github.com/foomo/simplecert&quot;&gt;simplecert&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于自动获取 Let&#39;s Encrypt SSL 证书的 Golang 库。&lt;/p&gt;
&lt;p&gt;12、&lt;a href=&quot;https://github.com/kooinam/fab.io&quot;&gt;fab.io&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://fab.io/&quot;&gt;Fab.io&lt;/a&gt; 是用 Go 语言编写的轻量级游戏后端框架。&lt;/p&gt;
&lt;p&gt;13、&lt;a href=&quot;https://github.com/alecthomas/participle&quot;&gt;participle&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的解析库。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/microsoft/ethr&quot;&gt;ethr&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个用于 TCP、UDP 和 HTTP 的网络性能测量工具。微软出品。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/ethr.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/honza/smithy&quot;&gt;smithy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;如果你喜欢 gitea 之类的东西，可以在 git 存储库中使用一个简单的前端。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/foxcpp/maddy&quot;&gt;maddy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Maddy Mail Server 实现了运行电子邮件服务器所需的所有功能。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://www.youtube.com/watch?v=fuYwyQllMpE&quot;&gt;油管视频&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;为什么 GitHub 客户端命令行组从 Ruby 切换到 Go？这是 &lt;a href=&quot;https://changelog.com/gotime/153&quot;&gt;Go Time 第 153 期&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/PaluMacil/ham&quot;&gt;ham&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用 Go 检测垃圾短信。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/alldroll/cdb&quot;&gt;cdb&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;常量数据库 golang 实现。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/brimsec/zq&quot;&gt;zq&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;结构化日志的搜索和分析工具。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/lnquy/cron&quot;&gt;cron&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;CLI 工具（hcron）和 Go 库（cron），用于将 CRON 表达式转换为人类可读的描述。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/bradwood/glsnip&quot;&gt;glsnip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;跨机器复制和粘贴。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/beefsack/webify&quot;&gt;webify&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将 Shell 命令转换为 Web 服务。&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://github.com/Sandertv/gophertunnel&quot;&gt;gophertunnel&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言编写的 Minecraft 软件的瑞士军刀。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue071/gophertunnel.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;12、&lt;a href=&quot;https://github.com/jaeles-project/gospider&quot;&gt;gospider&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;快速的 Web 爬虫。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/12712</link><guid isPermaLink="false">https://studygolang.com/topics/12712</guid><pubDate>Sun, 29 Nov 2020 01:16:06 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 60 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。&lt;/p&gt;
&lt;p&gt;本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于大部分人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue060/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Caddy 的组件&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;群里有人发了一道题，分享给大家。&lt;/p&gt;
&lt;p&gt;这样的代码：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-go&quot;&gt;var m int32 = 0x12345678
var n int8 = int8(m)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;请问 n 是多少？&lt;/p&gt;
&lt;p&gt;A：0x12；B：-0x1；C：0x78；D：0x7F&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/GK9a1kOfBRwtbQtZ-NYuCw&quot;&gt;Go 1.15.2 和 Go 1.14.9 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小版本，修复了十几个 Bug。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/System-Glitch/goyave&quot;&gt;Goyave 3.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个优雅的 Web 框架。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/mmcdole/gofeed&quot;&gt;gofeed 1.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;RSS、Atom 和 JSON Feed 解析器。时隔四年，发布 1.1，支持 JSON。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue060/gofeed.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://www.ardanlabs.com/news/2020/08/caddy-server-is-acquired/&quot;&gt;Caddy 卖掉了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;它的作者 Matt 继续全职为 Caddy 工作。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/golang/go/issues/41330&quot;&gt;Go 1.16 版本 module 机制将成为默认&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;同时 GOPATH 在 Go 1.17 中将成为过去时。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/2JQM1piaWPQW-uwD_P-3Cg&quot;&gt;腾讯：汇编是深入理解 Go 的基础&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 的汇编是 Plan 9 规则的汇编。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/svmWO1WjJjL5pCd6eyzPVg&quot;&gt;原来还可以这么做：go version 命令的高级用法&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;原来隐藏了这样的功能。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/FKxDjdShih5UinYFoQovxA&quot;&gt;Go：为什么你应当避免使用指针&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;别被作者的这个标题误导了，其实阅读完全文，发现作者并不是排斥使用指针，而是应选择适当的场景去使用指针。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/XWAhEVBpxbUE_fGFi1v-DA&quot;&gt;缓存击穿导致 Go 组件死锁的问题剖析&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;分享一个线上遇到的死锁问题，什么， golang 也会有死锁？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/O_JSrriDwi9hxCbtOEJhzg&quot;&gt;王者荣耀为什么不使用微服务架构？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;知乎的讨论。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/J01LY7s6xMB8Lk10sxTFhg&quot;&gt;VSCode 开发 Go 程序也可以和 GoLand 一样强大&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;给大家介绍如何将 VSCode 打造成为一个强大的 Go 开发工具。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/Ir-DThZKZIazCm8aBjMogw&quot;&gt;gRPC 一定要使用 Protobuf 吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;其实 JSON 也可以。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://mp.weixin.qq.com/s/te_UUWFXoHG2yqUlidQCQQ&quot;&gt;微服务的战争：选型？分布式链路追踪&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个关于微服务设计思考的系列题材。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/gg-scm/gg&quot;&gt;gg&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言实现，命令行 Git 的替代品，灵感来自 &lt;a href=&quot;https://www.mercurial-scm.org/&quot;&gt;Mercurial&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/sdslabs/kiwi&quot;&gt;kiwi&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个简约的内存键值存储器。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/valyala/fastrand&quot;&gt;fastrand&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;快速可扩展的伪随机数生成器。这里是另一个受此启发的库：&amp;lt;&lt;a href=&quot;https://github.com/Villenny/fastrand64-go&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/Villenny/fastrand64-go&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/sourcegraph/go-diff&quot;&gt;go-diff&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于 Go 的统一差异分析和打印。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue060/go-diff.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/deroproject/graviton&quot;&gt;Graviton&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;key-value 存储的 ZFS。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/deepalert/deepalert&quot;&gt;deepalert&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于自动响应安全警告的无服务器框架。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/szyhf/go-excel&quot;&gt;go-excel&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个轻量级的 Excel 数据读取库，用一种更&lt;code&gt;关系数据库&lt;/code&gt;的方式解析 Excel。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/golang/go/wiki/Modules&quot;&gt;官方 Go 模块文档&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;很多人可能不知道这个文档的存在，其实这是关于 Module 最权威的文档。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://changelog.com/gotime/145&quot;&gt;Go 博客第 145 期&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;关于模糊测试的深入探讨。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/lucasepe/crumbs&quot;&gt;crumbs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将用星号缩进的文本转换为思维导图。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/RussellLuo/kok&quot;&gt;kok&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一款 go-kit 工具链。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/tailscale/depaware&quot;&gt;depaware&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;让你的 Go 项目的依赖一目了然。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;http://www.ofbizian.com/2020/09/must-read-free-kubernetes-books.html&quot;&gt;必读的 k8s 免费书&lt;/a&gt;（英文）&lt;/p&gt;
&lt;p&gt;不是一本是很多本~&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/Mindinventory/Golang-Project-Structure&quot;&gt;Golang-Project-Structure&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 项目结构。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/12304</link><guid isPermaLink="false">https://studygolang.com/topics/12304</guid><pubDate>Sun, 13 Sep 2020 00:52:36 GMT</pubDate><author>polarisxiangbei</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 49 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。&lt;/p&gt;
&lt;p&gt;本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于大部分人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/cover.jpeg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：今天家里领导生日，借周刊祝她生日快乐！&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;自从官方发布泛型修订草案后，各种关于泛型的信息很多：比如基于泛型的 Hashmap 实现，基于泛型的测试驱动开发，基于泛型的错误处理等等。今天还发现另外一个项目，基于 Go 泛型草案的专门研究项目：&amp;lt;&lt;a href=&quot;https://github.com/reconquest/goava&amp;amp;gt;%E3%80%82&quot;&gt;https://github.com/reconquest/goava&amp;amp;gt;。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;所以，无论你喜不喜欢泛型，泛型到来是迟早的事情。&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/grpc/grpc-go&quot;&gt;grpc-go 1.30 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;gRPC 的 Go 语言实现。基于 HTTP/2 的RPC。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/emersion/go-imap&quot;&gt;go-imap 1.0.5 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;imap 的客户端和服务端库。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://blog.gitea.io/2020/06/gitea-1.12.0-and-1.12.1-are-released/&quot;&gt;Gitea 1.12.0 和 1.12.1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;我们很自豪地介绍 Gitea 1.12.0 版本，以及随后的 1.12.1 版本并提供一些修补程序。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/_H83Dc4d9QsgS9JIeEqyTw&quot;&gt;2020年开发者生态报告：很多人计划迁移到 Go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;JetBrains 发布了 2020 开发者生态报告，该报告基于 34,000 多个开发人员的反馈。其中， 参与调查的开发人员中，20% 的人来自中国、美国和印度则分别占比19% 和 17%。报告内容除了此前曾包含的 15 种语言和数十种技术之外，今年还添加了一些新的部分：R 语言、微服务、测试、大数据，甚至是开发者的生活方式。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/astaxie/beego/issues/4035&quot;&gt;Beego V2 Roadmap&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2.0.x 版本 （暂定截止2020年底）。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/btX53JVCgfOfxDy2ynQa_A&quot;&gt;万字长文解读 pkg.go.dev 的设计和实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文章较长，建议收藏，抽完整时间阅读。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/v9kHuRC6GcmCJgd6A68Wlw&quot;&gt;如何科学选择一门编程语言？理性选择，我依然选 Go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;如果你看到这篇文章，很有可能，在你的职业生涯中，你至少有一次在思考应该选择哪种语言。或者你甚至在编程生涯开始之前就已经考虑了。很高兴你能看到这篇文章。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/io12hy7xjaAMS5tZ_-aCOA&quot;&gt;Go 语言源码阅读有感 nocopy 机制&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;读Go源码时，发现一个高频注释语句 “XXX must not be copied after first use”。例如 sync 包下的Pool、Cond、WaitGroup、Mutex、Map 和 atomoic.Vaule、strings.Builder 等，都有该句注释。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://eddycjy.com/posts/why-container-memory-exceed2/&quot;&gt;为什么容器内存占用居高不下，频频 OOM（续）&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在上周的文章《为什么容器内存占用居高不下，频频 OOM》 中，我根据现状进行了分析和说明，收到了很多读者的建议和疑惑，因此有了这一篇文章，包含更进一步的说明和排查。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/V6MJRPfKK3m1rNMn9hUvjw&quot;&gt;苹果宣布 Mac 放弃 x86 转向 ARM：看看你要补充学习知识吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;作为一名程序员，我们不应该只是“哇哦”感叹一声就完事了。关于这一点：苹果公司宣布 Mac 电脑将转向公司自主定制的处理器，也就是放弃 x86 架构，转向 ARM 架构，你应该特别关注下。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/AKPi9lEv78MYCIYMbrojvA&quot;&gt;Go 字符串中的潜在问题&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 中，几乎所有的字符串操作都是不复制的，仅仅是从原字符串取一个子集（例如去除字符串首尾的空白字符），因此你可以更自由地操作字符串。这个机制可以非常直接地解决你的问题，并且非常高效。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/GQOFK125D4WB6DqIlv19_w&quot;&gt;Go 每日一库之 cli&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;cli 是一个用于构建命令行程序的库。我们之前也介绍过一个用于构建命令行程序的库 cobra。在功能上来说两者差不多， cobra 的优势是提供了一个脚手架，方便开发。cli 非常简洁，所有的初始化操作就是创建一个 cli.App 结构的对象。通过为对象的字段赋值来添加相应的功能。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://mp.weixin.qq.com/s/zY-P8tquCuVQxhLX3iu6_Q&quot;&gt;为什么你写的代码总是有 Bug？用它来保证 Go 代码质量&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这篇文章是集成测试系列两个部分中的第二部分。本文中的示例可以从 代码仓库 获取。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://mp.weixin.qq.com/s/F8_qzvLxi2uVEbVWTZpd9w&quot;&gt;面试题：如何更新 Go Module 项目的依赖 — 解决问题的方法很重要&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;这篇文章来自知识星球球友的问题。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://segmentfault.com/a/1190000022987438&quot;&gt;GORM源码解读&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;GORM 源码解读, 基于 &lt;a href=&quot;https://github.com/jinzhu/gorm/tree/v1.9.11&quot;&gt;v1.9.11&lt;/a&gt; 版本。&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://mp.weixin.qq.com/s/YYbnN0cOtv4YoxBW6Ol_8g&quot;&gt;受 express.js 启发，用 20 行代码写出更清晰易用的 Go 中间件 API&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在使用 Go 编写复杂的服务时，您将遇到一个典型的主题是中间件。这个话题在网上被讨论了一次又一次。&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/qiniu/goplus&quot;&gt;goplus&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;七牛开源的与 Go 语言完全兼容的面向数据科学的语言（前身：qlang）。近期推广力度很大。在 GitHub 趋势榜上升也很快。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/qiniu/goc&quot;&gt;goc: 系统测试覆盖率收集利器&lt;/a&gt;（&lt;a href=&quot;https://github.com/CarlJi&quot;&gt;CarlJi&lt;/a&gt; 投稿）&lt;/p&gt;
&lt;p&gt;在 goc 以前，业界在做覆盖率收集时，都是采用一种很 tricky 的方式来做，有种种不优雅的地方。而 goc 能够让被测程序在运行时就可以收集系统测试覆盖率，当属比较优雅。且此种方式，也为 go 语言的精准测试方向，展现了无限可能。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/wechaty/go-wechaty&quot;&gt;go-wechaty&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的微信聊天机器人。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/felixge/fgprof&quot;&gt;fgprof&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;兼容 Go 原生 profiler 的 profiler，支持非 cpu 时间（比如 IO 时间）采样。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/fgprof.jpg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/lu4p/binclude&quot;&gt;binclude&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;将静态文件包含到 Go 二进制文件中的另一种方法。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/AlecAivazis/survey&quot;&gt;survey&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于构建交互式提示的库。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/survey.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/Ladicle/tcardgen&quot;&gt;tcardgen&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Twitter 卡片图像生成器。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/tcardgen.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/sethvargo/go-envconfig&quot;&gt;go-envconfig&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个通过结构体类型标记绑定方式读取环境变量的配置库。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/cs3org/cato&quot;&gt;cato&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 项目的自动配置文档库。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/gaia-pipeline/gaia&quot;&gt;gaia&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Gaia 是一个开源自动化平台，可以轻松有趣地以任何编程语言构建强大的管道。&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://github.com/daoleno/tgraph&quot;&gt;tgraph&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Tgraph 是一个 Go 包，用于在终端中绘制基本图形。它受到 &amp;lt;&lt;a href=&quot;https://github.com/mkaz/termgraph&amp;amp;gt&quot;&gt;https://github.com/mkaz/termgraph&amp;amp;gt&lt;/a&gt;; 的启发，这是一个 Python 库。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/tgraph.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.youtube.com/watch?v=O4V-s9YntNk&quot;&gt;油管视频: 测试驱动 Go2 新泛型&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;泛型都测试驱动了。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://www.digitalocean.com/community/books/how-to-code-in-go-ebook&quot;&gt;免费电子书: How To Code in Go eBook&lt;/a&gt;（英文）&lt;/p&gt;
&lt;p&gt;这本知识共享许可的 600 页书籍非常适合初学者。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/securego/gosec&quot;&gt;gosec&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 代码安全扫描工具。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/didi/sharingan&quot;&gt;sharingan&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;didi 出品的流量录制回放工具。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/Ragnaroek/format&quot;&gt;format&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于格式化 common lisp 代码的 Go 库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/razonyang/gopkgs&quot;&gt;gopkgs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一个自定义 Go 包的 import path 的命令行工具。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/guywhataguy/SourceCodeVisualizer&quot;&gt;SourceCodeVisualizer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 源码可视化。除了 Go 语言，还支持 C/C++、Python 和 Perl。对于看的代码的层次结构有一定帮助。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/sourcecodevisualizer.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/seashell/drago&quot;&gt;drago&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;wireguard 网络配置工具。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/drago.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/jdeflander/goarrange&quot;&gt;goarrange&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;按照 godoc 的方式自动重排声明。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/0x0f0f0f/memplot&quot;&gt;memplot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在单个二进制文件内非常快速地生成进程的内存使用情况的映像图。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue049/memplot.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/11766</link><guid isPermaLink="false">https://studygolang.com/topics/11766</guid><pubDate>Sat, 27 Jun 2020 16:05:44 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 38 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。&lt;/p&gt;
&lt;p&gt;本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于大部分人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/pcbook.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：gRPC 相关教程&lt;/p&gt;
&lt;h2&gt;刊首语&lt;/h2&gt;
&lt;p&gt;本周推荐了几本 Go 语言图书，发现 Go 相关的图书还是不少的，而且推荐的那几本都只是人民邮电出版社的，可见 Go 受众还是越来越多。5 折优惠截止 4 月 14 日，想购买的还有机会。&lt;a href=&quot;https://mp.weixin.qq.com/s/YTAzACjSOUvI9bUcQdihdQ&quot;&gt;去购买&lt;/a&gt;。&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://studygolang.com/topics/11244&quot;&gt;Go1.14.2 和 Go1.13.10 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;北京时间 2020-04-08 日，Go Team 发布了 Go1.14.2 和 Go1.13.10，这是小版本更新，主要修复了和 cgo, Go 命令，运行时，os/exec 和 testing 包相关的一些 Bug。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/syncthing/syncthing/releases&quot;&gt;Syncthing 1.4.2 发布，连续文件同步工具&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Syncthing 是一个 Go  语言实现的免费开源的工具，它能在你的各个网络计算机间同步文件/文件夹，它的同步数据是直接从一个系统中直接传输到另一个系统的，并且它是安全且私密的。&lt;/p&gt;
&lt;p&gt;Syncthing 1.4.2 现已发布。这是一个很小的版本更新，修复了一些本不应该在 1.4.1 中出现的崩溃，并将更改还原到升级代码上。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/O8nbaciZBK_96_Ptu8lP-A&quot;&gt;还在用 2019.3 就 Out 了：GoLand 2020.1 版本正式发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;北京时间 2020 年 4 月 10 日凌晨，Jetbrains 宣布正式发布 GoLand 2020.1 版本。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/GoLand_2020.1.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/cuelang/cue&quot;&gt;Cuelang v0.1.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;您知道 Cue 是 Go 的弟弟吗？Cue 中有许多 Go 源码，并且由 Go 团队的成员构建。这是一个验证和定义基于文本的动态配置。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/golang/go/issues/33030#issuecomment-611219680&quot;&gt;gopls v0.4.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;我比较关注它什么时候能解决资源大规模占用的问题。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/tHx8JHG8hKN3QhbMxuUOMw&quot;&gt;Docker 参考架构：设计可扩展、可移植的 Docker 容器网络&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Docker 容器将软件封装到一个完整的文件系统当中，这个文件系统包括软件运行所需的一切：代码、运行时、系统工具、系统库，所有能安装在服务器上的东西。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://mp.weixin.qq.com/s/lyAuC6fUaer1rFC_GdK1-Q&quot;&gt;到底要不要用 ORM？ORM vs. 非 ORM 对比&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;一些关于 ORM 优缺点的想法。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://mp.weixin.qq.com/s/xpnbpnXUVg2ToIfLJLeBRQ&quot;&gt;项目使用了 ORM，具体执行的是什么 SQL 语句总是很迷？xorm1.0 解决了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;自定义上下文 SQL Log 需求有哪些？&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/pK_0Rnnh7gE6nBPhiahakw&quot;&gt;Go 中的 SetFinalizer 有什么用？怎么实现的？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go runtime 提供了一种允许开发者将一个函数与一个变量绑定的方法 runtime.SetFinalizer，被绑定的变量从它无法被访问时就被垃圾回收器视为待回收状态。这个特性引起了高度的争论，但本文并不打算参与其中，而是去阐述这个方法的具体实现。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/KeZId8WScnS-rlc0kedEzw&quot;&gt;使用 Golang 理解 MySQL 的两阶段提交&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;文章源于一个问题：如果我们现在有两个mysql实例，在我们要尽量简单地完成分布式事务，怎么处理？还在 B 站提供了视频版。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/Ahhaa9cAm248Sh4IHrcy-w&quot;&gt;聊聊数据库的未来&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;写在 PingCAP 成立五周年前夕。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/0C48IypvwADQa7lBi8Sthw&quot;&gt;图解kubernetes命令执行核心实现&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;K8s 中的命令执行由 apiserver、kubelet、cri、docker 等组件共同完成, 其中最复杂的就是协议切换以及各种流拷贝相关,让我们一起来看下关键实现,虽然代码比较多，但是不会开发应该也能看懂。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://mp.weixin.qq.com/s/azdjVpeTHkr4knajmdPtgw&quot;&gt;Go 实现 Raft 第四篇：持久化和调优&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;对 Raft 中通过添加持久性和一些优化来完成 Raft 的基本实现。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://mp.weixin.qq.com/s/0B64B6y9TiU6rhy5ywXpVA&quot;&gt;Go 每日一库之 gentleman&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;gentleman 是一个功能齐全、插件驱动的 HTTP 客户端。gentleman以扩展性为原则，可以基于内置的或第三方插件创建具有丰富特性的、可复用的 HTTP 客户端。相比标准库net/http，gentleman更灵活、易用。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://mp.weixin.qq.com/s/PV42yQoI0rTxDHInx6dN0g&quot;&gt;Prometheus + Granafa 构建高大上的MySQL监控平台&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Prometheus 是 Go 语言实现的。&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://studygolang.com/articles/27917&quot;&gt;Golang 中生成密码&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你想到的是什么方式？&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/go4org/mem&quot;&gt;mem&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;低损耗的 string 或 []byte 类型操作库。bradfitz 出品。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/projectdiscovery/nuclei&quot;&gt;Nuclei&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Nuclei 是基于模板的可配置目标扫描的快速工具，具有大量可扩展性和易用性。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/oneinfra/oneinfra&quot;&gt;oneinfra&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于构建 Kubernetes 即服务的平台。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/f-secure-foundry/GoKey&quot;&gt;gokey&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 实现的智能卡应用。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/KarpelesLab/iso9660&quot;&gt;iso9660&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用于读取和创建 ISO9660 镜像的 Go 库。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/knadh/niltalk&quot;&gt;niltalk&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 语言实现的聊天室程序。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/niltalk.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/susamn/rio&quot;&gt;rio&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;基于优先级队列的轻量级作业调度程序，具有超时，重试，上下文取消和简单语义的作业调度器。为 Go 网络应用构建。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/bykof/gostradamus&quot;&gt;gostradamus&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;更好用的日期时间库。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/grab/talaria&quot;&gt;TalariaDB&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;TalariaDB 是 Presto 的分布式，高可用性和低延迟时间序列数据库。Go 语言实现的时间序列数据库还真是多。&lt;/p&gt;
&lt;p&gt;10、&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://www.youtube.com/watch?v=qerWv9JTlo8&quot;&gt;设计插件式的地道的 Go 应用&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;来自 Youtube 视频。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://changelog.com/gotime/124&quot;&gt;播客：企业中的 Go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;gotime 第 124 期。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/harrybrwn/apizza&quot;&gt;apizza&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通过命令行订披萨。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/apizza.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/krilor/gossh&quot;&gt;gossh&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;受 Ansible 启发但没有 Yaml 的配置管理工具。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://www.youtube.com/watch?v=XBQ6jMGGk_Y&quot;&gt;使用 Go 进行游戏开发&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Youtube 视频。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/goulinkh/podcast-cli&quot;&gt;podcast-cli&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;CLI 播客播放器。作者在学习了 Go 语言基础之后创建了这个项目。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/podcast-cli.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/melbahja/goph&quot;&gt;goph&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本地 golang ssh 客户端，可通过 ssh 连接执行命令。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://gitlab.com/techschool/pcbook&quot;&gt;gRPC 相关资源&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/pcbook.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/go-board/x-go&quot;&gt;x-go&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 标准库的拓展，提供各种便利的工具。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://github.com/loov/goda&quot;&gt;goda&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 依赖性分析工具。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue038/goda.svg&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://github.com/shomali11/go-interview&quot;&gt;go-interview&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 技术面试问题集。&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;和&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/11247</link><guid isPermaLink="false">https://studygolang.com/topics/11247</guid><pubDate>Sun, 12 Apr 2020 03:05:39 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item><item><title>Go语言爱好者周刊：第 25 期</title><description>&lt;p&gt;这里记录每周值得分享的 Go 语言相关内容，周日发布。&lt;/p&gt;
&lt;p&gt;本周刊开源（GitHub：&lt;a href=&quot;https://github.com/polaris1119/golangweekly&quot;&gt;polaris1119/golangweekly&lt;/a&gt;），欢迎投稿，推荐或自荐文章/软件/资源等，请&lt;a href=&quot;https://github.com/polaris1119/golangweekly/issues&quot;&gt;提交 issue&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;鉴于大部分人可能没法坚持把英文文章看完，因此，周刊中会尽可能推荐优质的中文文章。优秀的英文文章，我们的 GCTT 组织会进行翻译。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/cover.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;题图：Chime，一个 Mac 的 Go 编辑器，目前还未正式发布。&lt;/p&gt;
&lt;h2&gt;资讯&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://forum.golangbridge.org/t/go-1-13-6-and-go-1-12-15-are-released/17031&quot;&gt;Go 1.13.6 和 Go 1.12.15 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;小 bug 修复。可以通过 &lt;a href=&quot;https://studygolang.com/dl&quot;&gt;https://studygolang.com/dl&lt;/a&gt; 下载。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;http://www.philipotoole.com/rqlite-5-0-0-released/&quot;&gt;rqlite 5.0.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;rqlite 是一个轻量级的分布式关系数据库，它使用 SQLite 作为其存储引擎。形成集群非常简单，可以很好地处理领导者选举，并容忍包括领导者在内的机器故障。rqlite 可用于 Linux，OSX 和 Microsoft Windows。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://www.oschina.net/news/112726/istio-1-4-3-released&quot;&gt;Istio 1.4.3 发布，大型微服务系统管理工具&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Istio 是一个由谷歌、IBM 与 Lyft 共同开发的开源项目，旨在提供一种统一化的微服务连接、安全保障、管理与监控方式。具体来说，Istio 是一个开源服务网格平台，它确保微服务在处理故障时以指定的方式相互连接。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://www.oschina.net/news/112706/influxdb-2-0-0-bate-1-released&quot;&gt;InfluxDB 2.0.0 Beta 1 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;开源时序数据库。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://www.oschina.net/news/112626/bookstack-2-4-released&quot;&gt;BookStack v2.4 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;类似 GitBook 的文档管理系统。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://www.chimehq.com/&quot;&gt;Chime：适用于 macOS 的 Future Go 编辑器&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;它目前处于内测阶段，但你可能希望订阅其更新，以便知道 Chime 准备就绪的时间。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/built-for-macos.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/go-sql-driver/mysql/releases/tag/v1.5.0&quot;&gt;go-sql-driver/mysql 1.5.0 发布&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;增加 Module 的支持；不再支持 Go1.9 及以下版本。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/tinygo-org/tinygo/releases/tag/v0.11.0&quot;&gt;TinyGo 0.11.0: 嵌入式 Go 编译器&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;最新版本将 Clang 捆绑在发行包中，并增加了对 Adafruit Pybadge 的支持。&lt;/p&gt;
&lt;h2&gt;文章&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://mp.weixin.qq.com/s/rDjTqqR0q4VTSQrYFzbR7w&quot;&gt;高频 golang 服务接口超时排查&amp;amp;性能调优&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;业务中超时抖动是大家平时比较容易遇到的一种技术问题，本文详细记录了一次线上容器中高频 go 服务超时的排查过程。本文可以给大家提供查服务业务超时问题的一些思路，理解为什么 go 服务会获取错 cpu 核数，了解获取宿主 cpu 核数会有多大影响并怎样最小成本避开。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://studygolang.com/articles/25982&quot;&gt;Reflect-Go 一分钟快速入门&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文侧重讲解 reflect 反射的实践应用，适合新手初窥门径。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://studygolang.com/articles/25971&quot;&gt;channel的使用及源码解析&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;熟悉Go的人都知道，它提倡着不要通过共享内存来通讯，而要通过通讯来共享内存。Go提供了一种独特的并发同步技术来实现通过通讯来共享内存，此技术即为通道。我们可以把一个通道看作是在一个程序内部的一个FIFO数据队列。 一些协程可以向此通道发送数据，另外一些协程可以从此通道接收数据。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/unbuffer_channel.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://mp.weixin.qq.com/s/4R1SlIX8nXC1MLdPAdZlHQ&quot;&gt;你真的需要微服务吗？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你们进行服务化没有？&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://mp.weixin.qq.com/s/D-3-Bpl5UZ_w_tnUHh6UaA&quot;&gt;Go并发设计模式之 Active Object&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;介绍实用Go语言去实现这些并发设计模式。&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://mp.weixin.qq.com/s/s_6H68RQ9JDiA6TGmiZyOQ&quot;&gt;必会技能：简明的 Go Protocol Buffer 教程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在这个教程里面，我们将学习如何在你的 Go 应用中使 protocol Buffers 数据格式。我们将详细讲述这种数据格式，以及为什么这种数据格式优于传统的数据格式，例如 XML 甚至 JSON。在我们写更多复杂的例子之前，我们将从一个简单的例子开始编写运行。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://mp.weixin.qq.com/s/RQJZUqcFvrNoqPerfRnr7A&quot;&gt;在 Go 中的 ORM 和查询构建&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在 Go 中，第一类函数是进行 SQL 查询构建的惯用方法。该仓库包含我编写的一些示例代码：&lt;a href=&quot;https://github.com/andrewpillar/query%E3%80%82&quot;&gt;https://github.com/andrewpillar/query。&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://mp.weixin.qq.com/s/cTc4Q-MtWhRLpjA0C06RAQ&quot;&gt;Go 切片是胖指针？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文的内容曾在 Hacker News 上进行讨论。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://mp.weixin.qq.com/s/o2oMMh0PF5ZSoYD0XOBY2Q&quot;&gt;Go GC 20 问&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本文作者欧长坤，德国慕尼黑大学在读博士，Go/etcd/Tensorflow contributor，开源书籍《Go 语言原本》作者，《Go 夜读》SIG 成员/讲师，对 Go 有很深的研究。Github：@changkun，&lt;a href=&quot;https://changkun.de/&quot;&gt;https://changkun.de&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;10、&lt;a href=&quot;https://www.gitdig.com/cpu-leak/&quot;&gt;Go 编程: 对不起，你的 CPU 泄露了&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;前段时间给后端几个服务配证书，试着用了一下 Cert-Manager 项目。 Github 几千 Star 的项目使用起来的确很方便，秒配域名免费证书。但是，运行了三天，机器CPU报警。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/cpu-leak.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;11、&lt;a href=&quot;https://learnku.com/articles/39255&quot;&gt;Go 的内存对齐和指针运算详解和实践&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;uintptr 和 unsafe 普及。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/memory.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;h2&gt;开源项目&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://github.com/uber-go/goleak&quot;&gt;goleak: goroutine 泄露检测&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;它仍然处于 Alpha 状态，但是你可以使用它来检测函数末尾是否有任何意外的 goroutines 正在运行。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://github.com/cortexlabs/cortex&quot;&gt;cortex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在生产中部署机器学习模型。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/cortex.gif&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://github.com/rakyll/govalidate&quot;&gt;govalidate&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;验证 Go 安装和依赖的小工具。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/govalidate.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://github.com/karrick/godirwalk&quot;&gt;godirwalk&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;快速目录遍历库。&lt;/p&gt;
&lt;p&gt;5、&lt;a href=&quot;https://github.com/jmigpin/editor&quot;&gt;editor&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;纯 Go 的源代码编辑器。号称“知道你正在做什么的源代码编辑器”。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/editor.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;p&gt;6、&lt;a href=&quot;https://github.com/Shopify/sarama&quot;&gt;sarama&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Sarama 是 Apache Kafka 0.8 及更高版本的 Go 库。&lt;/p&gt;
&lt;p&gt;7、&lt;a href=&quot;https://github.com/cabify/timex&quot;&gt;timex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;测试友好的替代 Go 的 time 包。&lt;/p&gt;
&lt;p&gt;8、&lt;a href=&quot;https://github.com/pomerium/autocache&quot;&gt;autocache&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用成员列表进行对等注册的组缓存。&lt;/p&gt;
&lt;p&gt;9、&lt;a href=&quot;https://github.com/tdewolff/canvas&quot;&gt;canvas&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go 实现的基于 wasm 的矢量绘图库。&lt;/p&gt;
&lt;h2&gt;资源&amp;amp;&amp;amp;工具&lt;/h2&gt;
&lt;p&gt;1、&lt;a href=&quot;https://docs.google.com/spreadsheets/d/1WPHt0gsb7adVzY3eviMK2W8LejV0I5m_Zpc8tMzl_2w/edit#gid=0&quot;&gt;Kubernetes 相关优秀工具列表&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;k8s 的爱好者可以收藏一波。&lt;/p&gt;
&lt;p&gt;2、&lt;a href=&quot;https://golang.org/doc/code.html&quot;&gt;如何编写Go代码(官方新版) &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;有关如何编写第一个 Go 程序的这份 Go 文档的核心部分已完全按照现代标准进行了重写。&lt;/p&gt;
&lt;p&gt;3、&lt;a href=&quot;https://www.youtube.com/watch?v=GGQcv7fK0JY&quot;&gt;Go Get My/Vulnerabilities&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;深入分析 Go 语言运行时及其引入的新漏洞。&lt;/p&gt;
&lt;p&gt;4、&lt;a href=&quot;https://diode.io/diode/Diode-Presented-at-the-Golang-Taipei-Meetup-20002/&quot;&gt;Go 台北 MEETUP 小记&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;12 月 24日 星期二，我们有机会在 Golang 台北聚会上介绍了我们的工作。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/issue025/diode.png&quot; alt=&quot;&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;这个周刊每周日发布，同步更新在&lt;a href=&quot;https://studygolang.com/go/weekly&quot;&gt;Go语言中文网&lt;/a&gt;、&lt;a href=&quot;https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91&quot;&gt;微信公众号&lt;/a&gt; 和 &lt;a href=&quot;https://www.toutiao.com/c/user/59903081459/#mid=1586087918877709&quot;&gt;今日头条&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;微信搜索&quot;Go语言中文网&quot;或者扫描二维码，即可订阅。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/polaris1119/golangweekly/master/docs/imgs/wechat.png&quot; alt=&quot;wechat&quot; referrerpolicy=&quot;no-referrer&quot;&gt;&lt;/p&gt;
</description><link>https://studygolang.com/topics/10717</link><guid isPermaLink="false">https://studygolang.com/topics/10717</guid><pubDate>Sun, 12 Jan 2020 04:41:11 GMT</pubDate><author>polarismengmeng</author><category>Go周刊</category></item></channel></rss>