收藏 / 列表

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

Golang相關測試框架   在 Go 語言裏,最常用的測試框架有:自帶的 testing 包、GoConvey 和 testify。 1、Go自帶的testing包   testing包是官方內置的,無需額外安裝,也是大多數項目的首選。   (1)單元測試 測試文件必須以 _test.go 結尾,例如:calc_test.go 測試函數必須以 Test 開頭(推薦寫成 T

go , 後端

王中陽背後的男人 - 從簡歷石沉大海到面試官追着聊項目,差的是什麼?

最近幫幾個學員改簡歷,發現一個很有意思的現象:同樣是寫熟悉Golang+Gin開發,有人能拿到騰訊二面,有人連初篩都過不了。細問才知道,前者的項目欄寫着校園閃送系統(上線運營,日活3000+),後者則是圖書管理系統(課程設計)。 不是説課程設計沒用,而是校招時,面試官一天要刷50份簡歷,能讓他們停下來的,永遠是能落地、有細節、可驗證的實戰項目。今天就聊聊,後端開發者該如何靠項目破局,以及哪些資源能

面試 , 程序員 , 後端

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

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

composer , vue.js , php , npm

木子君_求贊 - 帶緩存的SpringRank c++實現

帶緩存的 SpringRank(Cache-Optimized SpringRank)——C++17 實現 把「物理彈簧」迭代改成 L2 分塊 + L1 索引緩衝 + 預取, 在 L3 大圖 上仍能保持 Radix 級吞吐,內存仍 O(V+E)。 1 問題背景 熱點 原算法訪存 緩存痛點 隨機讀 Δᵢⱼ for (j ∈

排序 , 排序學習 , c++

axiaoxin - Go 1.24 新特性一覽

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

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

user_zsXbv7Bi - Linux shell 使用 trap 命令優雅處理程序中斷: shell 中的回調、鎖與事務、以及 debug 調試

來看一個常見的場景 假設你正在開發一個數據備份腳本。這個腳本需要執行以下操作: 創建臨時工作目錄 將數據複製到臨時目錄 壓縮打包 清理臨時文件 #!/bin/bash WORK_DIR="/tmp/backup_$(date +%Y%m%d)" echo "開始備份..." mkdir -p "$WORK_DIR" echo "創建臨時目錄: $WORK_DIR" echo "複

服務器 , Linux , 程序員 , 後端 , shell

darjun - 你不知道的 Go 之 string

簡介 字符串(string)是 Go 語言提供的一種基礎數據類型。在編程開發中幾乎隨時都會使用。本文介紹字符串相關的知識,幫助你更好地理解和使用它。 底層結構 字符串底層結構定義在源碼runtime包下的 string.go 文件中: // src/runtime/string.go type stringStruct struct { str unsafe.Pointer len int

utf-8 , youdontknowgo , string , unicode , go

janrs_com - 基於Go/Grpc/kubernetes/Istio開發微服務的最佳實踐嘗試 - 3/3

基於Go/Grpc/kubernetes/Istio開發微服務的最佳實踐嘗試 - 1/3 基於Go/Grpc/kubernetes/Istio開發微服務的最佳實踐嘗試 - 2/3 基於Go/Grpc/kubernetes/Istio開發微服務的最佳實踐嘗試 - 3/3 項目地址:https://github.com/janrs-io/Jgrpc 轉載請註明來源: https://janrs.co

grpc , kubernetes , microservice , istio , go

Java陳序員 - 19K+ Star!一款基於 Vue3 實現的後台管理系統!

大家好,我是 Java陳序員。 今天,給大家推薦一款基於 Vue3 實現的後台管理系統前端模板框架,適合外包項目,實現快速交付! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 vue-manage-system —— 一套基於 Vue3 + Element Plus + TypeScript 實現的多功能的後台前端模板框架,適

vue.js , github , node.js , yarn , 前端

Peleus - go-dongle 0.2.1 版本發佈,一個輕量級、語義化的 golang 編碼解碼、加密解密庫

dongle 是一個輕量級、語義化、對開發者友好的 Golang 編碼解碼和加密解密庫 Dongle 已被 awesome-go 收錄, 如果您覺得不錯,請給個 star 吧 github.com/golang-module/dongle gitee.com/golang-module/dongle 更新日誌 增加對 md2 哈希算法的支持 增加對 hmac-md2 摘要算法的支持 增加對

hash , 加密解密 , 簽名校驗 , go

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

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

go , 後端

apocelipes - atomic不是免費午餐

很多初級甚至中級開發會濫用atomic,因為在他們的世界觀裏atomic比mutex輕量,性能總是優於鎖的。 這話不能算錯,但有個很重要的前提,那就是原子操作競爭不激烈的時候。 “競爭激烈”是指什麼呢,指的是有很多線程在同一個資源上大量執行原子操作的情況。 落在這種情況下原子操作反而會成為性能拖油瓶。我們來看一個經典的原子計數器: func AddAtomic() uint64 { var co

go , 後端

碼農先森 - PHP轉Go系列 | ThinkPHP與Gin框架之OpenApi授權設計實踐

大家好,我是碼農先森。 我之前待過一個做 ToB 業務的公司,主要是研發以會員為中心的 SaaS 平台,其中涉及的子系統有會員系統、積分系統、營銷系統等。在這個 SaaS 平台中有一個重要的角色「租户」,這個租户可以擁有一個或多個子系統的使用權限,此外租户還可以使用平台所提供的開放 API 「即 OpenApi」來獲取相關係統的數據。有了 OpenApi 租户可以更便捷的與租户自有系統進行打通,提

php , gin , go , thinkphp

vistart - Vue3與React構建可擴展Web應用的技術方案深度研究報告(2024-2025)

研究概覽 基於對2024-2025年最新技術趨勢、企業實踐案例和市場數據的深入研究,本報告全面分析了Vue3和React在構建可擴展web應用方面的技術方案。研究發現,兩個框架在技術架構、開發範式、安全性能等方面各有優勢,選擇需要根據團隊規模、項目需求和市場定位來決定。 1. 可擴展Web應用的設計範式對比 Vue3的組件化設計模式和Composition API Composition API最

react , vue.js , 開發 , typescript , 前端

Ansurfen - 我開發了一個編譯成 VBScript 的現代編程語言 - Hulo

嘿,VBScript 愛好者們! 我最近在做一個編譯器/轉譯器項目,想要解決一些在 Windows 腳本開發中遇到的“老大難”問題。 你知道 VBScript 最令人頭疼的是什麼嗎? 就是那種 冗長的語法 和 有限的語言能力,一旦想實現稍微複雜一點的邏輯,就會陷入繁瑣的拼接和調試地獄。 於是我開始思考—— 有沒有可能用一種更現代、更清爽的語言來寫腳本,然後自動生成 VBScript?

開源軟件 , vbs , 編程語言 , 編譯器 , go

7mandy7 - Golang都有哪些值得推薦的學習資料

前面幾篇文章,給大家總結了一些關於Golang中不錯的開源框架、開源庫等相關的內容。今天接着給分享一些不錯的學習資源內容。同時也會分享一些優質的教學視頻、高質量的電子書籍。想獲取該文檔、視頻,可以通過下面的文章鏈接,進入公眾號菜單,聯繫號主。 你應該知道的17個Golang包 Go開發的linux、數據庫、redis、mongo統一管理操作平台 使用Go開源的一款性能監控軟件 使用 Go

協程 , 學習資料 , 併發編程 , go

煩惱的沙發 - Rust性能調優:從勸退到真香

地球人都説Rust快,安全,併發牛。但有時候我們寫出來的代碼,跑起來卻像踩了腳剎車。這是為啥?其實,Rust給你的法拉利,你可能只當成了買菜車在開。性能這玩意兒,不是玄學,而是科學(和一點點小技巧)。 BUT,在開始之前,誰也不想在配置環境這種破事上浪費生命,對吧?裝Rust、裝PostgreSQL、裝Redis……一套下來,半天沒了。這裏就要用 ServBay,這是開發者的福音,一鍵就能把Ru

觀點 , rust , 知識 , 後端

codechen8848 - 輕量又安全!一款開源自託管的個人記賬工具!

大家好,我是 Java陳序員。 你是否會有這樣的困擾:手裏存款越來越多,反而成了甜蜜的負擔? 看着銀行卡里不斷上漲的數字,卻總説不清每筆錢的來龍去脈;想給資金做個分類管理,卻被各種理財 APP 的複雜界面勸退;更擔心把財務數據存在第三方平台,哪天就成了“透明人”~ 今天,給大家介紹一款開源自託管的個人記賬工具,輕量又安全! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超

go , 後端

探索雲原生 - ArgoWorkflow教程(八)---基於 LifecycleHook 實現流水線通知提醒

本篇介紹一下 ArgoWorkflow 中的 ExitHandler 和 LifecycleHook 功能,可以根據流水線每一步的不同狀態,執行不同操作,一般用於發送通知。 !--more-- 1. 概述 本篇介紹一下 ArgoWorkflow 中的 ExitHandler 和 LifecycleHook 功能,可以根據流水線每一步的不同狀態,執行不同操作,一般用於發送通知。 比如當某個步驟,或

devops , 雲原生 , cicd , jenkins , go

陳明勇 - 一文了解 Go time 包的時間常用操作

前言 在日常開發中,我們避免不了時間的使用,我們可能需要獲取當前時間,然後格式化保存,也可能需要在時間類型與字符串類型之間相互轉換等。本文將會對 Go time 包裏面的常用函數和方法進行介紹。 Now():獲取當前本地的時間 import ( "fmt" "time" ) func main() { now := time.Now() fmt.Println(n

challenge , go , 後端

Aonaufly - Go之原生TCP開發(基礎)

一, 服務端 package main import ( "fmt" "net" ) func handleConnection(conn *net.TCPConn) { for { buf := make([]byte, 1024) n, err := conn.Read(buf) if err != nil { //有一個前端已經斷開了

基礎 , 服務器 , 遊戲開發 , tcp , go