收藏 / 列表

蘇琢玉 - 從 Hexo 到 Astro:重構我的個人博客

寫博客這件事,老實説,現在可能不太流行了,流量也未必多,但對我來説,有沒有博客是兩回事。 過去幾年,我一直用 Hexo 搭建和維護我的博客,主題豐富、社區活躍,用得也很開心。 老博客: 不過,隨着我對博客的需求越來越多,我發現 Hexo 在一些定製化操作上有些侷限。於是,我決定嘗試用 Astro 來重構我的博客。 新博客: 關於博客這件事 我其實並不指望有

astro , hexo , 博客

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

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

排序 , 排序學習 , go

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

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

go , 後端

筱倩 - 如何有效提升代碼覆蓋率:從單元測試到集成測試的實踐指南

Go語言代碼覆蓋率實現 一、什麼是代碼覆蓋率   代碼覆蓋率是軟件測試中的一種白盒測試度量指標,表示程序源代碼中被執行的比例。簡單來説,就是“我的測試到底跑過多少代碼”。 覆蓋率常見的幾種標準: 語句覆蓋(段覆蓋、基本塊覆蓋):每一行代碼是否至少執行過一次 分支覆蓋:程序中的每個判斷(if/else)是否都執行過true和false兩種結果 條件覆蓋:判斷語句中的每個子條件是否都覆蓋到tr

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 - 三步搞定 Go 分佈式任務!sasynq 庫讓異步任務變得如此簡單

Go 後台任務的“坑”,你踩過幾個? 在 Go 應用開發中,總有一些任務不適合現場完成,比如: 發郵件/發短信:用户點擊按鈕後,還要乾等?體驗太糟糕! 大計算量任務:生成報表、數據分析,CPU 一直被佔,其他請求全卡住? 定時任務:凌晨跑統計、每小時同步數據,難道要寫個死循環 time.Sleep? 所以,聰明的我們會把這些任務扔進異步任務隊列,讓後台“工人”(Worker)慢慢處理。

定時任務 , 分佈式 , go

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 - Rust 和 Go 在多線程的對比

1. Go 的 Goroutine:輕量且高效 Goroutine 是 Go 中非常核心的併發單元。它是 用户級線程,由 Go 的運行時調度器管理,而不是由操作系統的內核調度。 輕量性: 內存佔用:每個 goroutine 的棧內存只有 2KB 左右,遠小於傳統線程的棧大小(一般為幾 MB)。這使得你可以輕鬆地創建成千上萬的 goroutines,而不會造成明顯的內存壓力。

rust , 多線程 , go

探索雲原生 - HAMi vGPU 原理分析 Part4:Spread&Binpack 高級調度策略實現

上篇我們分析了 hami-scheduler 工作流程,知道了 hami-webhook、hami-scheduler 是怎麼配合工作的。 本文為 HAMi 原理分析的第四篇,分析 hami-scheduler 在調度時是如何選擇節點的,即:Spread、Binpack 等高級調度策略是怎麼實現的。 !--more-- 這篇文章我們解決最後一個問題:_Spread、Binpack 等高級調度策略

容器 , kubernetes , gpu , 人工智能 , 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

煩惱的沙發 - 別再折騰 pip 了,一分鐘搞定Python開發環境

這些年 Python 的依賴管理,簡直就是個段子。 每次興沖沖地開始一個新項目,熟練地敲下 pip install -r requirements.txt,然後…… 然後就是漫長的等待。 你可以去衝杯咖啡,刷會兒某音(還一不小心越刷越上頭)。 等 pandas 終於把半個互聯網下載到你電腦上時,又到了下班的時候了。 (又摸了一天的魚,開心) 相信每個 Python 開發者都經歷過。 pip 確實

觀點 , 開發工具 , pip , 開發環境 , Python

codechen8848 - 免費高顏值!一款跨平台桌面端視頻資源播放器!

大家好,我是 Java陳序員。 今天,給大家推薦一款跨平台的桌面端視頻播放器,免費高顏值! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 ZyPlayer —— 一款免費易用且打造的全功能媒體播放器,基於 electron-Vite 框架,結合 TDesign 組件庫和 Vue3 全家桶,致力於提供流暢、高效的跨平台娛樂體驗。

前端

Hunter - Redis數據結構一之對象的介紹及各版本對應實現

本文首發於公眾號:Hunter後端 原文鏈接:Redis數據結構一之對象的介紹及各版本對應實現 本篇筆記開始介紹 Redis 數據結構的底層實現。 當我們被問到 Redis 中有什麼數據結構,或者説數據類型,我們可能會説有字符串、列表、哈希、集合、有序集合。 其實這幾種數據類型在 Redis 中都由對象構成,而且是兩個對象,一個鍵對象,一個值對象。 在這些數據類型中,它們的鍵都是字符串

redis , 對象

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