2023-12-18 分類: 網(wǎng)站建設(shè)
這里記錄每周值得分享的 Go 語言相關(guān)內(nèi)容,周日發(fā)布。
本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟件/資源等,請?zhí)峤?issue[2] 。
由于今日頭條不支持外鏈,文章鏈接可以通過文末「了解更多」打開。
鑒于大部分人可能沒法堅(jiān)持把英文文章看完,因此,周刊中會(huì)盡可能推薦優(yōu)質(zhì)的中文文章。優(yōu)秀的英文文章,我們的 GCTT 組織會(huì)進(jìn)行翻譯。
題圖:Illustration created for A Journey With Go, made from the original Go Gopher, created by Renee French.
資訊1、提案:cmd/go — 支持將靜態(tài)資產(chǎn)(文件)嵌入二進(jìn)制文件[3]
我只能說現(xiàn)有這樣的工具真的很多,可能是真有需求。
2、Go 1.13.5 和 Go 1.12.14 發(fā)布[4]
小版本,主要一些 bug 修復(fù)。
3、TiDB 3.0.7 發(fā)布,分布式 NewSQL 數(shù)據(jù)庫[5]
主要性能優(yōu)化和問題修復(fù)。
4、gmanager v0.1.6 發(fā)布,基于 gf 的管理平臺(tái)[6]
gmanager 是基于 gf 框架的管理平臺(tái),具備登錄、認(rèn)證、組織機(jī)構(gòu)、用戶、角色、菜單和日志管理。
5、gtoken v1.3.7 發(fā)布,支持 gf 最新版本 v1.10.0[7]
基于 gf 框架的 token 插件,通過服務(wù)端驗(yàn)證方式實(shí)現(xiàn) token 認(rèn)證;已完全可以支撐線上 token 認(rèn)證,并支持集群模式;使用簡單。
6、go-fastdfs v1.3.5 發(fā)布,支持?jǐn)帱c(diǎn)續(xù)傳自定義認(rèn)證,路徑自定義認(rèn)證[8]
go-fastdfs 是一個(gè)基于 http 協(xié)議的分布式文件系統(tǒng),它基于大道至簡的設(shè)計(jì)理念,一切從簡設(shè)計(jì),使得它的運(yùn)維及擴(kuò)展變得更加簡單,它具有高性能、高可靠、無中心、免維護(hù)等優(yōu)點(diǎn)。
7、GoFrame v1.10.0 發(fā)布,Go 應(yīng)用開發(fā)框架[9]
GF(Go Frame)是一款模塊化、高性能、生產(chǎn)級 Go 應(yīng)用開發(fā)框架。提供了常用的核心開發(fā)組件,如:緩存、日志、文件、時(shí)間、隊(duì)列、數(shù)組、集合、字符串、定時(shí)器、命令行、文件鎖、內(nèi)存鎖、對象池、連接池、資源管理、數(shù)據(jù)校驗(yàn)、數(shù)據(jù)編碼、文件監(jiān)控、定時(shí)任務(wù)、數(shù)據(jù)庫 ORM、TCP/UDP 組件、進(jìn)程管理/通信、 并發(fā)安全容器等等。這次更新了挺多東西。
8、rqlite 4.6.0 發(fā)布,它是 SQLite,但是分布式的[10]
本質(zhì)上是在后臺(tái)使用 SQLite 的輕型分布式關(guān)系數(shù)據(jù)庫。
文章1、Go 創(chuàng)建對象時(shí),如何優(yōu)雅的傳遞初始化參數(shù)
本文將通過一個(gè)漸進(jìn)式的demo示例來介紹Option模式,以及相關(guān)的一些思考。本文將內(nèi)容切分為 10 個(gè)小模塊,如果覺得前面的鋪墊冗余,想直接看 Option 模式的介紹,可以從小標(biāo)題七開始閱讀。
2、發(fā)布訂閱模式:使用 Go 實(shí)現(xiàn)簡單的事件總線
事件驅(qū)動(dòng)架構(gòu)是計(jì)算機(jī)科學(xué)中一種高度可擴(kuò)展的范例。它允許我們可以多方系統(tǒng)異步處理事件。
event-bus
3、培訓(xùn)大師 William 圖解 Go 中的 GC 系列:第一部分 - 基礎(chǔ)
這是三篇系列文章的第一篇博文,系列文章提供了 Go 中垃圾回收背后的機(jī)制和概念的理解。這篇博文主要介紹回收器的基礎(chǔ)概念。
4、培訓(xùn)大師 William 圖解 Go 中的 GC 系列:第二部分 - GC 追蹤
這是三篇系列文章中的第二篇,該系列文章將會(huì)提供一個(gè)對 Go 垃圾回收器背后的機(jī)制和概念的理解。本篇主要介紹如何生成 GC 追蹤并解釋它們。
5、50 條爭論的文章發(fā)生了啥:Go 標(biāo)準(zhǔn)庫 encoding/json 真的慢嗎?
這篇文章在 Go 語言中文網(wǎng)發(fā)布后,有網(wǎng)友爭吵起來了,近 50 條評論,真是佩服技術(shù)人員??!這里看評論:https://studygolang.com/articles/25100 。
6、Go 標(biāo)準(zhǔn)庫源碼學(xué)習(xí)(一)詳解短小精悍的 Once
Once:保證某個(gè)動(dòng)作只執(zhí)行一次。
7、線上真實(shí)場景:實(shí)戰(zhàn) Goroutine 泄露排查
值得學(xué)習(xí)排查過程。
8、用圖說話:Go 語言的協(xié)程,系統(tǒng)線程以及 CPU 管理
創(chuàng)建系統(tǒng)線程以及在系統(tǒng)線程間切換,會(huì)對程序的內(nèi)存和性能造成較大的開銷。Go的目標(biāo)是盡量利用CPU多核資源。設(shè)計(jì)之初就考慮了高并發(fā)性。
9、golang 在 runtime 中的一些騷東西[11]
最近在研究性能優(yōu)化的時(shí)候,看到了 golang runtime 包下的一個(gè)文檔 `HACKING.md`[12]覺得頗有意思,讀完之后覺得對于 runtime 的理解更上一層,于是想著翻譯一下。
10、Golang 為什么沒有整型的 max/min 方法[13]
作為有一些經(jīng)驗(yàn)的 Golang 開發(fā)者,你可能意識到了 Golang 并沒有 max/min 方法來返回給定的兩個(gè)或多個(gè)整型數(shù)值中的大值或最小值。其他語言通常會(huì)在核心庫中提供這類方法。你有沒有想過為什么 Golang 沒有這么做?
11、Go 語言第一深坑 - interface 與 nil 的比較[14]
這個(gè)很常見,講解的人也很多,如果你不知道,建議再看看。
開源項(xiàng)目1、GoFakeIt: 隨機(jī)偽數(shù)據(jù)生成器[15]
2、enmime: MIME 郵件編碼和解碼包[16]
enmime 是 Go 的 MIME 編碼和解碼庫,專注于生成和解析 MIME 編碼的電子郵件。
3、joker[17]
Go 語言實(shí)現(xiàn)的小型 Clojure 解釋器。
4、cloud-game[18]
Go 實(shí)現(xiàn)的流行游戲云服務(wù)框架。
5、go-srp[19]
Go 版安全遠(yuǎn)程密碼(SRP)協(xié)議庫。
6、dbq[20]
零樣本數(shù)據(jù)庫操作庫。
7、hubble[21]
Kubernetes 的網(wǎng)絡(luò),服務(wù),安全性的監(jiān)測工具。
8、encoding[22]
Go 軟件包,其中包含有效的編碼,解碼和驗(yàn)證 API 的實(shí)現(xiàn)。
資源&&工具1、go-advices[23]
Go 的一些最佳實(shí)踐。
2、Gopherpalooza 是上個(gè)月在硅谷舉行的 2019 Go 會(huì)議[24]
會(huì)議上 13 個(gè)主題演講,在 youtube 上[25] 。
3、Go Series:語法基礎(chǔ)、工程實(shí)踐、并發(fā)編程、Web 開發(fā)[26]
涵蓋了 Golang 由淺入深的學(xué)習(xí)筆記。
4、Go 刷 LeetCode 系列
Go 語言中文網(wǎng)公眾號開始發(fā)布 Go 刷 LeetCode 系列,歡迎關(guān)注一起刷題。
5、Git commit message 規(guī)范[27]
書寫良好的 commit message 能大大提高代碼維護(hù)的效率。
訂閱文中鏈接
[1]
polaris1119/golangweekly: https://github.com/polaris1119/golangweekly
[2]
提交 issue:https://github.com/polaris1119/golangweekly/issues
[3]
提案:cmd/go — 支持將靜態(tài)資產(chǎn)(文件)嵌入二進(jìn)制文件:https://github.com/golang/go/issues/35950
[4]
Go 1.13.5 和 Go 1.12.14 發(fā)布:https://studygolang.com/dl
[5]
[6]
[7]
[8]
[9]
[10]
rqlite 4.6.0 發(fā)布,它是 SQLite,但是分布式的:https://github.com/rqlite/rqlite/releases/tag/v4.6.0
[11]
golang 在 runtime 中的一些騷東西:https://purewhite.io/2019/11/28/runtime-hacking-translate/
[12]
HACKING.md: https://github.com/golang/go/blob/master/src/runtime/HACKING.md
[13]
Golang為什么沒有整型的max/min方法:https://studygolang.com/articles/25200
[14]
Go語言第一深坑 - interface 與 nil 的比較:https://studygolang.com/articles/10635
[15]
GoFakeIt: 隨機(jī)偽數(shù)據(jù)生成器:https://github.com/brianvoe/gofakeit
[16]
enmime: MIME 郵件編碼和解碼包:https://github.com/jhillyerd/enmime
[17]
joker: https://github.com/candid82/joker
[18]
cloud-game: https://github.com/giongto35/cloud-game
[19]
go-srp: https://github.com/getinsomnia/go-srp
[20]
dbq: https://github.com/rocketlaunchr/dbq
[21]
hubble: https://github.com/cilium/hubble
[22]
encoding: https://github.com/segmentio/encoding
[23]
go-advices: https://github.com/cristaloleg/go-advices/blob/master/README_ZH.md
[24]
Gopherpalooza 是上個(gè)月在硅谷舉行的 2019 Go 會(huì)議: http://gopherpalooza.com/
[25]
[26]
Go Series:語法基礎(chǔ)、工程實(shí)踐、并發(fā)編程、Web 開發(fā):https://github.com/wx-chevalier/Go-Series
[27]
Git commit message 規(guī)范:https://juejin.im/post/5d0b3f8c6fb9a07ec07fc5d0
[28]
Go語言中文網(wǎng):https://studygolang.com/go/weekly
[29]
[30]
喜歡本文的朋友,歡迎關(guān)注Go語言中文網(wǎng):
非常感謝您讀完創(chuàng)新互聯(lián)的這篇文章:"GoWeb開發(fā)的靜態(tài)資源嵌入二進(jìn)制文件,Go官方計(jì)劃支持",僅為提供更多信息供用戶參考使用或?yàn)閷W(xué)習(xí)交流的方便。我們公司提供:網(wǎng)站建設(shè)、網(wǎng)站制作、官網(wǎng)建設(shè)、SEO優(yōu)化、小程序制作等服務(wù),歡迎聯(lián)系我們提供您的需求。
網(wǎng)站標(biāo)題:GoWeb開發(fā)的靜態(tài)資源嵌入二進(jìn)制文件,Go官方計(jì)劃支持
標(biāo)題來源:http://jinyejixie.com/news9/309209.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、軟件開發(fā)、微信公眾號、外貿(mào)建站、關(guān)鍵詞優(yōu)化、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容