收藏 / 列表

王中陽背後的男人 - 給想轉Go或者Go進階同學的一些建議

前言 最近一直有小夥伴私信我學Go語言的問題: 有的小夥伴覺得客户端太捲了,想轉服務端,覺得Java也卷,想學Go語言; 有的小夥伴是想從PHP或者Java轉Go,做高併發編程,覺得Go更有前途。 聊的多了,發現這是一個共性問題,所以乾脆整理成文章,希望對更多的人有幫助。 這篇文章會結合我的經歷: 聊聊我認為客户端轉服務端開發最大的挑戰是什麼? 如何高效轉型做服務端開發?如何高效學完Go基礎? 在

go , 後端

蘇琢玉 - 想讓默認頭像不再千篇一律,就順手復刻了一下 GitHub 的思路

在各種平台上,初始註冊的用户通常都會被分配一個默認頭像。 但如果你的平台有互動功能,比如評論、留言、排行榜,一堆一模一樣的默認頭像排在一起就會顯得很單調,甚至有些奇怪。 當然,你也可以讓用户自己去換頭像,但現實是:大多數人根本懶得去換。 於是我就想:能不能讓默認頭像也“有點個性”呢? 然後我想到了 GitHub。 起因 GitHub 的默認頭像其實挺有意思的。 每個新用户的頭像

go , 後端

木子君_求贊 - 帶緩存的RankNet C++實現

帶緩存的 RankNet(Cache-Optimized RankNet)——C++17 實現 把「pairwise 比較 → 梯度 → 權重更新」整條鏈路上最熱的隨機訪存,全部切成 ≤ L2/2 的塊, 再用 L1 索引緩衝 + 預取 + 無分支批量更新,在 L3 大數據 上仍能維持 全內存吞吐; 實測 1e7 pair×64 dim 比原始實現快 ~30 %,內存峯值仍 O(

排序 , 排序學習 , c++

XHunter - Golang基礎筆記十六之反射

本文首發於公眾號:Hunter後端 原文鏈接:Golang基礎筆記十六之反射 反射可以用於程序在運行時檢查、修改自身類型和值,主要通過 reflect 包實現。 首先,我們提出一個需求,要打印出一個結構體 struct 的各個字段及其對應的標籤數據,按照當前的筆記內容是無法解決該問題的,但是我們可以使用反射操作來完成。 以下是本篇筆記目錄: 變量的類型和值 修改變量的值 遍歷結構體

go , 後端

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

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

go , 後端

axiaoxin - JSON-LD 類型使用示例大全

本文是針對 JSON-LD 類型的使用示例及其簡要介紹與説明。每個類型的示例展示瞭如何在 JSON-LD 中進行標註,並附帶了簡要説明,希望對你有所幫助。 文章目錄 JSON-LD 的主要核心類型 Thing(事物) CreativeWork(創作作品) Event(事件) Intangible(非實體事物) Organization(組織) P

seo , 前端 , Javascript , Json

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

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

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

gvison - 從單兵作戰到兵團壓測:PerfTest 分佈式集羣壓測實戰

前言 在前一篇文章中,我們詳細介紹了 perftest 的單機壓測能力,展示了它如何通過極簡的命令行實現對 HTTP/1.1、HTTP/2、HTTP/3 與 WebSocket 的高性能測試。然而,當業務系統龐大、服務部署分佈式、網絡鏈路複雜時,單機的壓測能力顯然無法滿足真實生產環境的模擬需求。 幸運的是,perftest 不止於單機。它同樣支持 分佈式集羣壓測,通過 Collector + Ag

壓力測試 , 分佈式 , 測試工具

apocelipes - C++ Two Phase Lookup導致的模板代碼編譯錯誤

猜猜下面這段代碼的輸出是什麼: template typename T struct Base { void DoThings() { std::cout "A\n"; } }; template typename T struct Derived: BaseT { void Do() { DoThings(); } }; in

後端

soroqer - Array 與 Slice 的源碼分析與高效使用-Golang 🔥

在 Go 語言中,數組(array)和切片(slice)是兩種不同的數據結構,它們在內存分配機制上存在着顯著差異。深入理解這些差異及原理並恰當使用,能夠幫助我們提高代碼的執行效率。 在使用上,由於語法糖的存在,很多初學者對於二者並不敏感。數組的寫法是 [n]int,切片則是 []int,區別僅在於是否在 [] 中體現其長度。 從實現上講,slice 是 array 的一種封裝再實現,將長度不可變的

性能優化 , 內存 , 數組 , slice , go

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

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

devops , 雲原生 , cicd , jenkins , go

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

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

php , gin , go , thinkphp

vistart - Golang 中保存通道的 map 在設為 nil 後不會回收元素,即通道依然有效

Golang 中,如果用一個 map 保存實例化的通道,並用在協程間發送和接收。當該 map 被賦值為 nil 時,管理的通道依然有效。 示例代碼如下: package main import ( "fmt" "time" ) func main() { // 創建一個map用於保存通道 channelMap := make(map[string]chan in

channel , 垃圾回收 , 協程 , map , go

煩惱的沙發 - AI編程工具大盤點,哪個最適合你

一起盤一盤市面上的AI編程工具,到底哪個好用?哪個是吹牛?我把這些工具分成了幾類,這樣看起來更清楚,方便大家按需取用。 AI 編碼 大模型 (幕後大佬) 這些是所有AI編程工具的發動機,是它們提供了核心的智能。雖然我們不直接操作它們,但瞭解一下誰家技術強,有助於我們選擇上層工具。 GPT-4o (OpenAI) :全能型選手,綜合實力沒得説。代碼生成、邏輯理解、Debug樣樣精通,就是有點小貴

ai開發 , 知識 , 人工智能

codechen8848 - 全能 AI 對話管理平台!一款支持多模型切換的全能 AI 對話工具!

大家好,我是 Java陳序員。 在如今 AI 火熱的時代,各種大模型層出不窮,給日常工作生活帶來極大的便利。你是否想擁有一個能自由切換多種 AI 大模型、支持本地與在線模型結合,還能實現豐富對話功能的工具? 今天,給大家介紹一款強大的全能 AI 對話服務助手,支持多模型切換! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 ch

AI

Hunter - MySQL面試必備一之索引

本文首發於公眾號:Hunter後端 原文鏈接:MySQL面試必備一之索引 在面試過程中,會有一些關於 MySQL 索引相關的問題,以下總結了一些: MySQL 的數據存儲使用的是什麼索引結構 B+ 樹的結構是什麼樣子 什麼是複合索引、聚簇索引、覆蓋索引 什麼是最左匹配原則 數據 B+ 樹中是如何查詢的 回表是什麼操作 B+ 樹的查詢有什麼優勢 索引下推是什麼意思 對於上

MySQL , 索引 , 面試 , 後端

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

一, 服務端 package main import ( "encoding/json" "fmt" "io" "net/http" ) type User struct { ID int `json:"id"` // 字段標籤指定 JSON 鍵名 Name string `json:"name"` } func handler4Tes

遊戲開發 , 原生 , HTTP , go , Json