收藏 / 列表

筱倩 - 《Go 單元測試從入門到覆蓋率提升》(一)

一、靜態代碼分析   靜態代碼分析是一種在不執行和運行程序的情況下檢查源代碼的方法。通過這種方法,自動化工具會掃描代碼查找潛在的問題,如bug、安全漏洞或與編碼標準的偏離。靜態代碼分析可以在執行或合併到main分支之前檢查源代碼中的問題。   動態代碼分析是在代碼被執行時,識別運行時的問題,例如性能瓶頸、內存泄露和邏輯缺陷。它輸出的內容是程序的實際運行時行為,包括日誌、跟蹤和性能指標。它在實際或

go , 後端

王中陽背後的男人 - 太難了,Java和Go,面試了30多場,終於上岸了!

本文來自我們技術交流羣羣友的投稿,未經授權,禁止轉載。 先聽一下TA的故事 去年10月份我就做好了離職跳槽的準備,做了3年Java後端開發的我,對自己的技術能力還是很有底氣的。之前雖不是一線大廠,也算是比較知名的中廠了。 加上前公司各種不合理的排期和需求,我感覺就是變相裁員,我這暴脾氣可不慣着這個。 我就請假約面試,沒想到,被社會毒打了,Java太捲了,要求好高,各種拷打底層。(加上我對Java確

面試 , JAVA , go , 後端

蘇琢玉 - RSA+AES 混合加密不復雜,但落地挺煩,我用 Vue+PHP 封裝成了兩個庫

在項目裏寫接口的時候,我有時候會希望再多一層保護。 雖然 HTTPS 已經能保證傳輸安全,但它解決的更多是「傳輸過程中不被竊聽/篡改」的問題。 而我還想順帶做到幾點: 防止接口被隨便模擬調用 就算數據包被截獲,也看不懂內容 就算有人拿着同一份請求去重放,服務端也能拒絕 這些需求其實挺常見的,但並不複雜,説白了就是一套 RSA+AES 混合加密。 經典的思路 原理本身沒什麼新

composer , vue.js , php , npm

木子君_求贊 - 帶緩存的Timsort排序算法 golang實現

帶緩存的 Timsort 排序算法(Go 實現) 在標準 Timsort 基礎上顯式加入 L2-blocking + 軟件預取 + 無分支批量合併, 使 L3 大數據 仍保持 內存帶寬上限;實測 1e8 int 比 sort.Slice 再快 ~25%,內存峯值仍 O(n)。 1 緩存痛點(Go 原生剖面) 熱點 剖面佔比 緩存問題

排序 , 排序學習 , go

axiaoxin - Go 1.24 新特性一覽

Go 1.24震撼登場,帶來顯著性能提升與諸多新功能,如泛型類型別名、優化工具鏈及標準庫增強。可藉助os.Root實現安全文件系統操作,運用testing.B.Loop優化基準測試,利用runtime.AddCleanup完善資源管理,還有weak包優化內存、crypto包保障FIPS 140 - 3合規。速升級,提升Go應用效率與安全! 文章目錄 語言特性更新 泛

資訊 , 編程語言 , 程序員 , go

user_zsXbv7Bi - 如何在 Mac M1 Pro 上 debug Linux Kernel | 基於 Ubuntu 24 工具鏈和 QEMU

在 MacOS 上直接編譯 Linux Kernel 在我看來並不是一個很好的選擇: 我不喜歡 MacOS 的第三方包管理工具 brew 我不希望在沒有隔離的情況下安裝一堆我不瞭解的工具 或者説,在 Ubuntu 上調試 Linux Kernel 才是一個更誘人的選擇: apt 生態很好 基於 Ubuntu gcc 工具鏈編譯 Linux Kernel 社區討論更多,支持更完善 於

linux-kernel , qemu , gdb , macos , Linux

Java陳序員 - 替代 JIRA!一款功能強大的開源項目管理工具!

大家好,我是 Java陳序員。 在團隊開發項目的時候,常常會使用到項目管理工具,方便跟蹤項目進度、團隊協作以及文檔整理等。 今天,給大家介紹一款功能強大的開源項目管理工具,可替代 JIRA! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 openproject —— 一個功能強大的開源項目管理軟件,適用於團隊協作、敏捷開發和項

ruby-on-rails , angular , MySQL , postgresql , Docker

XHunter - Gin筆記二之gin.Engine和路由設置

本文首發於公眾號:Hunter後端 原文鏈接:Gin筆記二之gin.Engine和路由設置 這一篇筆記主要介紹 gin.Engine,設置路由等操作,以下是本篇筆記目錄: gin.Default() 和 gin.New() HTTP 方法 路由分組與中間件 1、gin.Default() 和 gin.New() 前面第一篇筆記介紹,創建一個 gin 的路由引擎使用的函數是 gin

go , 後端

後廠村村長 - go-lang之資源釋放/異常&錯誤處理

資源釋放-defer 類似於其他語言的 析構函數 比如PHP的 __destruct func b() error { resp, err := http.Get("xxx.com") // 先判斷操作是否成功 if err != nil { return err } // 如果操作成功,再進行Close操作 defer resp.B

異常處理 , go

程序員新亮 - Gin 實現自動生成接口文檔

自動生成接口文檔的好處 説之前,先説一下自動生成接口文檔有哪些好處? 1)節省時間和工作量:手動編寫接口文檔是一項耗時且繁瑣的任務。通過自動生成接口文檔,可以大大減少編寫文檔的時間和工作量,提高開發效率。 2)保持文檔與代碼同步:代碼和文檔往往是不同步的,當代碼發生變更時,手動更新文檔可能容易出現遺漏或錯誤。自動生成接口文檔可以保持文檔與代碼的同步,確保文檔的準確性和實時性。 3)提供一致的文檔格

swagger , gin , go , 後端

apocelipes - Go 1.26 內置函數 new 新特性

目前golang 1.26的各種新特性還在開發中,不過其中一個在開發完成之前就已經被官方拿到枱面上進行宣傳了——內置函數new功能擴展。 每個新特性其實都有它的背景故事,沒有需求的驅動也就不會有新特性的誕生。所以在介紹這個新特性之前我們先來了解下是什麼樣的場景催生了這個功能。 如果你經常瀏覽一些大型的go項目,尤其是那些需要頻繁和JSON、GRPC或者yaml打交道的項目,比如k8s,你會發現這些

go , 後端

碼農先森 - PHP轉Go系列 | ThinkPHP與Gin框架之API接口簽名設計實踐

大家好,我是碼農先森。 回想起以前用模版渲染數據的歲月,那時都沒有 API 接口開發的概念。PHP 服務端和前端 HTML、CSS、JS 代碼混合式開發,也不分前端、後端程序員,大家都是全乾工程師。隨着前後端分離、移動端開發的興起,用後端渲染數據的開發方式效率低下,已經不能滿足業務對需求快速上線的要求了。於是為了前後端的高效協同開發引入了 API 接口,只要在開發需求之前約定好數據傳參,之後便可以

php , gin , go , thinkphp

vistart - 在 Ubuntu 22.04 中編譯 tensorflow 2,並調試源代碼

引言 本文描述如何在 Ubuntu 22.04 中編譯 tensorflow 2 源碼,以及如何生成 Python 代碼包,並能夠調試 tensorflow 源碼,包括單步執行、觀察變量和表達式等能力。 準備工作 請參照各自官方文檔準備所需環境,在此不再贅述。 Ubuntu 22.04, Windows 用户推薦使用 WSL 2。 Python 3.10 ~ 3.12,安裝在 Ubuntu

編譯 , tensorflow , 源代碼 , 調試 , Ubuntu

Ansurfen - Hulo 語言開發分享 —— 調試器是如何工作的?

書接上回,在《Hulo 編程語言開發 —— 解釋器》一文中,我們介紹了Hulo 編程語言的解釋器。今天,讓我們深入探討編譯流程中的第四個關鍵環節——調試器。 調試器是編程語言開發中不可或缺的工具,它允許開發者暫停程序執行、檢查變量狀態、單步執行代碼等。而它的核心是斷點機制,它允許程序在特定位置暫停執行,並查看環境情況。 斷點 斷點本質上就是一個位置標記: type Breakpoint struc

解釋器模式 , 教程 , 知識 , 程序員 , Git

fizz - php開發者快速上手go之使用gorose orm

最近迷戀上了go語言, 對go有種特別的好感. 可是, 由於之前做了很久的php開發, 剛開始用go做web開發有點不太習慣, 也許是之前的 laravel 框架的 eloquent orm過於好用, 所以, 導致了使用go做web開發的各種不適應. 於是, 想着找一個類似的orm用用, 找遍了go生態圈, 發現了很多知名的 go orm, 諸如: gorm, xorm, sqlx等,

orm , php , laravel , eloquent , go

darjun - 在本地運行 fyne 官網

簡介 要深入學習和理解一個框架,官方文檔是必須要仔細閲讀的。fyne 官網有非常系統和詳盡的文檔。官方網站:https://fyne.io/。有時候我們會有這樣一個需求——離線查看文檔。我經常乘坐高鐵來往杭州、上海兩地,地鐵、高鐵上通常網絡比較差,甚至沒有網絡。為此我特地去研究了一番怎樣搭建 fyne 離線文檔。 首先,我找到了 fyne 官方網站的 GitHub 倉庫,網址為https://gi

ruby , jekyll , gem , fyne , go

janrs_com - Golang 協程/線程/進程 區別以及 GMP 詳解

Golang 協程/線程/進程 區別詳解 轉載請註明來源:https://janrs.com/mffp 概念 進程 每個進程都有自己的獨立內存空間,擁有自己獨立的地址空間、獨立的堆和棧,既不共享堆,亦不共享棧。一個程序至少有一個進程,一個進程至少有一個線程。進程切換隻發生在內核態。 線程 線程擁有自己獨立的棧和共享的堆,共享堆,不共享棧,是由操作系統調度,是操作系統調度(CPU調度)執行的最小單

goroutine

liuyuede - go-zero docker-compose 搭建課件服務(九):http統一返回和集成日誌服務

0、索引 go-zero docker-compose 搭建課件服務(九):http統一返回和集成日誌服務 0.1源碼地址 https://github.com/liuyuede123/go-zero-courseware 1、http統一返回 一般返回中會有code,message,data。當請求成功的時候code返回0或者200,message返回success,data為要獲取的數據;當請

kibana , go-zero , filebeat , elk

煩惱的沙發 - 你沒有聽説過的7個Windows開發必備工具

在Windows平台上進行軟件開發,一個配置得當、高效流暢的開發環境是項目成功的保證。它不僅能顯著提升開發者的工作效率,更能確保團隊協作的順暢與代碼質量的穩定。本文將為Windows開發者推薦一系列實用工具,助您打造極致高效的開發工作站。 ServBay:一站式本地Web開發管理 https://www.servbay.com ServBay是一款專為開發者設計的本地Web開發管理工具,它集成了多

軟件開發 , 開發工具 , 開發環境 , 後端

codechen8848 - 再見 Postman!一款開源免費的全能 API 客户端工具!

大家好,我是 Java陳序員。 在日常開發工作中,常常需要進行 API 接口調試,通常是藉助 Postman 進行調試或者接口管理。 但是基於 Electron 框架開發的 Postman,啓動速度較慢,且運行時會佔用較多內存和 CPU 資源。而且依賴雲同步功能,用户的接口集合、密鑰、Token 等敏感信息可能存儲在第三方服務器,存在數據泄露風險。此外,一些高級功能,還需要進行付費。 今天,給大家

後端

探索雲原生 - ArgoWorkflow教程(七)---高效的步驟間文件共享策略

之前我們分析了使用 artifact 實現步驟間文件共享,今天分享一下如何使用 PVC 實現高效的步驟間文件共享。 !--more-- 1. 概述 之前在 artifact 篇我們演示瞭如何使用 artifact 實現步驟間文件傳遞,今天介紹一種更為簡單的文件傳遞方式:PVC 共享。 artifact 畢竟是藉助 S3 實現中轉,效率上肯定是低於直接共享 PVC 的,而且 artifact 一般

devops , 雲原生 , cicd , jenkins

kevinwan - 自適應負載均衡算法原理與實現

背景 在選擇負載均衡算法時,我們希望滿足以下要求: 具備分區和機房調度親和性 每次選擇的節點儘量是負載最低的 每次儘可能選擇響應最快的節點 無需人工干預故障節點 當一個節點有故障時,負載均衡算法可以自動隔離該節點 當故障節點恢復時,能夠自動恢復對該節點的流量分發 基於這些考慮,go-zero 選擇了 p2c+EWMA 算法

微服務 , 算法 , microservice , 負載均衡 , go

陳明勇 - 一文掌握 Go 文件的讀取和寫入操作

Go 文件的讀取操作 os 包 和 bufio 包 Go 標準庫的 os 包,為我們提供很多操作文件的函數,如 Open(name) 打開文件、Create(name) 創建文件等函數,與之對應的是 bufio 包,os 包是直接對磁盤進行操作的,而 bufio 包則是帶有緩衝的操作,不用每次都去操作磁盤。 os.Open 與 os.OpenFile 以及 File.Read Open(

challenge , go , 後端

7mandy7 - 為什麼説Go的字符串類型不能修改

在接觸Go這麼語言,可能你經常會聽到這樣一句話。對於字符串不能修改,可能你很納悶,日常開發中我們對字符串進行修改也是很正常的,為什麼又説Go中的字符串不能進行修改呢? 本文就來通過實際案例給大家演示,為什麼Go中的字符串不能進行修改。 在演示這個問題之前,我們先對字符串類型的基礎知識做個大致的演示,這樣便於大家對問題的進一步瞭解。 本文已收錄Gitee、Github。分享Go、PHP、MySQL、

字符串 , go