技術筆記
涵蓋 Docker、Kafka、Go、Java、Redis、網路協定、資訊安全等主題的學習筆記。
AI
(05)AI Agent 是什麼
從 Chatbot 到 Agent 的差別、Agent 的組成(LLM + Tools + Memory + Planning),以及核心的 Agent Loop 思考-行動-觀察迴圈。
AI 與 LLM 基礎
從 AI、機器學習到大型語言模型(LLM)的關係,並解釋 Token、上下文視窗、Prompt、Embedding、幻覺等使用 AI 必懂的核心概念。
MCP(Model Context Protocol)
MCP 是讓 AI 連接工具與資料的開放標準,像 AI 世界的 USB-C。解析它解決的 N×M 問題、Host/Client/Server 架構,以及 Tools/Resources/Prompts 三種能力。
Skills 與進階協作
Skills 如何把能力封裝、漸進式揭露怎麼省 token,以及 RAG、Memory、Multi-Agent 如何運作,最後用一張全景圖把 LLM、Agent、Tools、MCP、Skills 全部串起來。
工具呼叫 Tools / Function Calling
Agent 能做事的關鍵:LLM 怎麼定義工具、怎麼決定呼叫哪一個、結果又怎麼回到迴圈裡,完整拆解 Function Calling 流程。
資料庫
(11)MVCC 多版本並行控制完全指南
理解資料庫如何用多版本快照取代讀寫鎖,達成「讀不擋寫、寫不擋讀」的並行控制
ODBC 開放式資料庫連接完全指南
理解 ODBC 標準資料庫存取介面:架構分層、DSN、連線字串設定,以及與 JDBC / OLE DB 的差異
Redis Pub/Sub 完全指南
深入理解 Redis Pub/Sub 發布訂閱模式的原理、指令用法與實戰應用
Redis 基本觀念完整指南
高效能的記憶體資料庫,提供多種資料結構和持久化機制,廣泛應用於快取、訊息佇列和即時應用。
SQLite 完全指南
零設定、嵌入式、單檔案的關聯式資料庫,把整個資料庫塞進一個 .db 檔,無需獨立伺服器程序。
Supabase 完全指南
開源的 Firebase 替代方案,以 Postgres 為核心,整合認證、儲存、即時訂閱、自動 API 與邊緣函數;有免費方案、免信用卡即可開始。
UPSERT 與衝突處理完全指南
INSERT 撞到唯一鍵時怎麼辦:ON CONFLICT、ON DUPLICATE KEY、MERGE 等各資料庫的 UPSERT 寫法與陷阱
Upstash 完全指南
Serverless 資料平台,提供 HTTP/REST 介面的 Redis、訊息排程(QStash)與向量資料庫;有免費方案、免信用卡即可起步,按請求計費、邊緣環境友善。
交易與 ACID 完全指南
理解資料庫交易的四大特性 ACID、交易控制語法,以及隔離級別與底層實現機制
外鍵與參照完整性完全指南
理解外鍵如何維護資料間的參照完整性,以及 CASCADE 等參照動作與連帶刪除的陷阱
索引與查詢優化完全指南
理解資料庫索引的原理、類型、複合索引最左前綴、索引失效情境與 EXPLAIN 查詢計畫
DevOps
(11)CI/CD 完全指南
CI/CD(持續整合/持續交付)是現代軟體開發的核心實踐,自動化程式碼從提交到部署的整個流程。
Cloudflare Pages 架站完全指南
Git 驅動的前端架站服務,靜態流量與頻寬無上限、免費可商用,可搭配 Functions 做全端。
Cloudflare Workers 邊緣運算完全指南
在全球邊緣節點以 V8 isolate 執行的 Serverless 運算,免費每日十萬請求、頻寬無限。
Cloudflare 儲存完全指南:D1 / R2 / KV
Cloudflare 邊緣儲存三件套——D1 的 Serverless SQLite、R2 的零 egress 物件儲存、KV 的鍵值儲存,免費方案即可用。
Cloudflare 開發者平台總覽
以全球邊緣網路為基礎的開發者平台,Pages 架站、Workers 邊緣運算與 D1/R2/KV 儲存,免費方案頻寬無限。
GitHub Actions 完全指南
深入理解 GitHub Actions 的核心概念、Workflow 語法、觸發機制、可重用元件與實戰應用
GitHub Actions: Matrix Build 進階
深入 Matrix Build 的 include/exclude、動態矩陣、fail-fast、並行控制與跨平台測試的進階應用
GitHub Actions: OIDC 免密鑰部署到 AWS / GCP / Azure
用 OIDC 取代長期 cloud credentials,實作 AWS / GCP / Azure 的免密鑰部署,涵蓋信任策略與安全收斂
GitHub Actions: Reusable Workflow 與 Composite Action 深度
深入比較 Reusable Workflow 與 Composite Action 兩種複用機制,涵蓋設計、輸入輸出、Secrets、版本管理與實戰範例
GitHub Actions: Self-hosted Runner 架設與管理
self-hosted runner 從安裝、autoscaling、ARC、安全收斂到實戰場景的完整指南
Vercel 完全指南
前端框架原生支援的部署平台,Git 推送即自動部署、免費方案即可架站。
Docker
(08)Docker Compose 完全指南
深入理解 Docker Compose 的配置、參數說明、多容器編排與實際應用
Docker Container 容器詳解
深入理解 Docker Container 的概念、生命週期、特性和使用方式
Docker Image Layer 詳解
深入理解 Docker Image 的分層架構、Layer 類型、快取機制和優化技巧
Docker Network 完全指南
深入理解 Docker 網路的運作原理、網路驅動類型、容器間通訊機制
Docker Volume 資料卷詳解
深入理解 Docker Volume 的概念、類型、使用方式和最佳實踐
Docker 指令速查
Docker 常用指令速查表,快速查找和使用 Docker 指令
Docker 架構概述
Docker 容器化平台的整體架構和核心概念總覽
Dockerfile 編寫指南
Dockerfile 指令詳解、最佳實踐和實際範例
Git
(02)Go
(05)Go Goroutines 完全指南
深入理解 Go 語言的核心特性:goroutine 的工作原理、調度機制、與執行緒的差異
Go sync 同步原語完全指南
深入理解 Go 語言 sync 套件中的同步原語,包含 Once、WaitGroup、Mutex、Cond、Map、Pool 及 atomic 操作
Go 專案結構與指令完全指南
深入理解 Go 專案的目錄結構、重要檔案(go.mod、go.sum)以及常用 Go 指令
Go 指標完全指南
深入理解 Go 語言中 `*` 和 `&` 符號的所有用法,掌握指標的核心概念和實戰應用。
go-callvis 完全指南
Go 程式函數呼叫圖視覺化工具,幫助開發者理解程式碼結構與函數間的呼叫關係。
Java
(02)網路
(10)API 設計範式完全指南:REST / GraphQL / gRPC / WebSocket / SSE
比較主流 API 設計範式的原理、優缺點與適用場景,搞懂何時該選 REST、GraphQL、gRPC 或即時通訊
CDN 完全指南
CDN(Content Delivery Network)內容傳遞網路,透過全球分散的伺服器節點加速內容傳遞,提升網站效能與使用者體驗。
DNS 完整知識指南
深入理解 DNS 域名系統的運作原理、記錄類型、解析流程與實務應用
GraphQL 完全指南
深入 GraphQL:Schema 型別系統、Query/Mutation/Subscription、Resolver、N+1 與 DataLoader、快取與安全
gRPC 與 Protocol Buffers 完全指南
深入 gRPC:Protocol Buffers、服務定義、四種串流、HTTP/2、錯誤模型、gRPC-Web 與版本相容
HTTP 與 HTTPS
深入理解 HTTP 與 HTTPS 協定的差異、運作流程、安全機制與實作最佳實踐
OSI 模型與網路設備完全指南
理解網路通訊的7層架構模型與各層對應的網路設備功能
REST API 設計完全指南
深入 REST API 設計:資源與 URL、HTTP 動詞與冪等性、狀態碼、分頁、版本控制、錯誤格式與最佳實踐
SSH 金鑰認證機制
SSH 金鑰認證機制使用非對稱加密技術,提供更安全且便捷的遠端伺服器登入方式
即時通訊完全指南:WebSocket 與 SSE
深入即時通訊:輪詢、SSE、WebSocket 的原理與差異,連線管理、心跳重連、認證與水平擴展
其他
(01)程式語言
(16)Go Context 完全指南
Go Context 套件完整指南 — Background/TODO、WithCancel/Timeout/Deadline/Value、傳遞慣例、取消傳播、最佳實踐
Go Generics 完全指南
Go 泛型完整指南 — type parameters、constraints、comparable/any、何時用何時不用、實戰範例
Go 型別與介面完全指南
Go 型別系統與介面完整指南 — struct、method、interface、embedding、type assertion、struct tags
Go 建置與發佈工具鏈
Go 專案建置與發佈完整指南 — go build flags、ldflags 版本注入、cross-compile、go:embed、Makefile、release 流程
Go 效能除錯完全指南
Go 效能與除錯完整指南 — race detector、pprof(cpu/mem/block/mutex)、Benchmark 整合、runtime/trace、flame graph
Go 標準庫實戰指南
Go 標準庫核心套件實戰 — io.Reader/Writer、encoding/json、net/http、time、strings/strconv、os/exec
Go 測試與基準完全指南
Go testing 完整指南 — t.Run subtests、table-driven、Benchmarks、coverage、TestMain、testify、mock
Go 錯誤處理完全指南
Go 錯誤處理完整指南 — error interface、errors.Is/As、wrap、自訂 error、panic/recover、defer 順序
Heap 與 Stack 記憶體完全指南
跨語言理解行程記憶體配置:Stack 與 Heap 的差異、變數住在哪、生命週期,以及常見記憶體問題
Lock 鎖機制完整指南
深入理解程式中常用的鎖機制,包含原理、類型、使用場景與比較分析
Python Dunder Methods 完全指南
Python 魔術方法(__init__、__enter__、__call__ 等)的完整介紹,從協定哲學到 Context Manager、Descriptor 實戰範例
Python Typer 完全指南
基於 type hints 的現代 Python CLI 框架,從基礎到進階的完整功能解析與實戰應用
TDD / DDD / BDD 開發方法論完全指南
釐清最常被混淆的三種 *DD 開發方法論,比較它們的層次與關係,並概覽其他常見方法論
TypeScript 型別系統基礎完全指南
TypeScript 入門核心:基本型別、型別推論、interface vs type、union/intersection、型別收窄與斷言
TypeScript 泛型完全指南
深入 TypeScript 泛型:泛型函式/介面/類別、型別約束、keyof 取屬性、預設型別參數與實戰
TypeScript 進階型別與工具型別完全指南
深入 TypeScript 型別運算:mapped types、conditional types、infer、template literal types 與內建 utility types
資訊安全
(09)AES 加密模式完全指南
深入比較 ECB、CBC、CFB、OFB、CTR、GCM 六種 AES 加密模式的原理、安全性與選用建議
CORS 跨來源資源共享完全指南
深入 CORS 與同源政策:CORS 是放寬不是防護、預檢請求、相關標頭、常見錯誤與誤區釐清
CSRF 跨站請求偽造完全指南
深入 CSRF:攻擊原理、與 XSS/CORS 的差異、SameSite cookie、CSRF token、Origin 檢查等防護
Hash 與加密技術完全指南
深入理解 Hash 雜湊函數、對稱加密與非對稱加密的原理、常見演算法與實務應用
OWASP Top 10 完全指南
OWASP Top 10 Web 應用安全風險總覽:十大類別的意義、攻擊例子與防護方向,作為資安檢查清單的起點
SQL Injection 完全指南
深入 SQL 注入:攻擊原理與類型、參數化查詢、ORM、最小權限等防護,以及無法參數化的動態拼接陷阱
SSL/TLS 憑證
深入理解 SSL/TLS 憑證的運作原理、類型分類、驗證流程與實務應用
XSS 跨站腳本攻擊完全指南
深入 XSS:反射型/儲存型/DOM 型三種攻擊、危害、輸出編碼/CSP/框架自動轉義等防護與常見誤區
認證與授權完全指南
完整介紹認證(Authentication)與授權(Authorization)的概念、各種方案比較與實作指南
系統
(08)CPU 排程與情境切換完全指南
理解作業系統如何把執行緒排上 CPU:排程器、時間片、搶佔式 vs 協作式、排程演算法與情境切換成本
Mac 終端機 Shell 完全指南:Bash vs Zsh
深入了解 macOS 上的 Shell 環境:Bash 與 Zsh 的差異、配置與最佳實踐
Shell 完全指南:sh、Bash、Zsh 比較與使用
完整介紹各種 Shell 的差異、選擇指南、常用語法與腳本編寫技巧
systemctl 服務管理完全指南
Linux 系統服務管理工具,提供統一的服務控制介面和強大的管理功能。
作業系統效能監控指標完全指南
系統層級和 Java 應用程式的效能指標詳解,涵蓋 CPU、記憶體、I/O、網路等關鍵監控點。
吞吐量指標:RPS、QPS、TPS 完全指南
理解系統效能的核心吞吐量指標,掌握 RPS、QPS、TPS 及相關指標的定義、差異與應用場景
執行緒模型與協程完全指南
使用者執行緒 vs 核心執行緒、1:1 / N:1 / M:N 模型,以及協程、纖程、goroutine、虛擬執行緒的關係
程式、行程與執行緒完全指南
釐清 Program / Process / Thread 三層關係、位址空間共享、為何需要執行緒,以及執行緒生命週期
開發工具
(12)Apache Kafka 完全指南
Apache Kafka 是一個分散式串流平台,用來處理大量即時資料流,提供訊息佇列、資料串流和持久化儲存功能。
Fluentd 完全指南
開源統一日誌層,用於收集、處理和轉發日誌數據,是 CNCF 畢業專案。
Gradle Jib 容器化指南
使用 Jib 在 Gradle 專案中快速建構 Docker 映像,無需編寫 Dockerfile
Gradle 完全指南
深入理解 Gradle 建構工具的配置、依賴管理、任務系統與實際應用
JavaScript 套件管理器比較:npm / yarn / pnpm
比較 npm、yarn、pnpm 的差異:node_modules 結構、幽靈依賴、磁碟與速度、lockfile、monorepo 與選型
jq 快速參考指南
命令列 JSON 處理器,用於格式化、過濾和轉換 JSON 資料。
Nginx HTTPS 設定
完整的 Nginx HTTPS 配置指南,包含 Let's Encrypt 憑證取得、安全設定、效能優化與常見問題排解
Nginx 基礎配置
Nginx 設定檔結構、server/location 區塊、匹配規則與存取控制完整指南
npm 完全指南
Node Package Manager - Node.js 官方套件管理工具,用於安裝、管理和發布 JavaScript 套件
PromQL 完全指南
Prometheus Query Language (PromQL) 完整教學,涵蓋語法、函式、常用查詢範例與最佳實踐
Resilience4j 完全指南
輕量級 Java 容錯庫,提供斷路器、重試、限流、艙壁隔離等彈性模式,專為函數式編程設計。
Vite 完全指南
Vite 是新世代的前端建構工具,提供極速的開發伺服器和優化的建構輸出。
Web
(10)JavaScript 生態全景:語言、執行環境、框架
搞懂 JS/前端生態的分層:語言層(JS/TS)、執行環境層(瀏覽器/Node/Deno/Bun)、框架層(React/Vue/Next…)各是什麼、怎麼組合
Next.js Metadata 與 SEO
Next.js Metadata API 完整指南 — generateMetadata、sitemap/robots、OG image、JSON-LD、canonical 與 alternates
Next.js Server Actions 與表單
Server Actions 完整指南 — 定義方式、useActionState、useFormStatus、useOptimistic、表單驗證、Progressive Enhancement、CSRF
Next.js 入門指南
Next.js 16 App Router 完整入門 — 認識框架定位、路由、Layout、Server/Client Components 與資料擷取的心智模型
Next.js 渲染與快取
Next.js App Router 渲染模型與四層快取完整解析 — Server/Client Components、Streaming、PPR、revalidate
Next.js 資產與效能
Next.js 資產優化與效能完整指南 — next/image、next/font、next/script、Bundle 分析、dynamic import、Code Split
Next.js 進階路由
Next.js App Router 進階路由完整指南 — Parallel Routes、Intercepting Routes、Middleware、Route Handlers
Next.js 部署與 Runtime
Next.js 部署完整指南 — Edge vs Node Runtime、Vercel、Docker standalone、env vars、Logging、監控
React 完全指南
React 是 Facebook 開發的宣告式、元件化的 JavaScript UI 函式庫,用於建構使用者介面。
SEO 完全指南
搜尋引擎優化(SEO)完整知識,涵蓋技術 SEO、內容優化、站內站外策略