Recent posts
All posts-
vLLM + Gemma 4 + LoRA:我踩過的兩個坑
最近在部署 Gemma 4 E4B + LoRA adapter 時,我連踩了兩個坑。第一個是 vLLM 版本本身還沒支援 Gemma 4 的 runtime LoRA;第二個是 升版後又碰到 CUDA wheel 與環境不相容。這篇記錄下來,給之後的自己少走一點冤枉路。
-
MicroK8s 完整部署指南:從安裝到生產級應用
在最近專題開發的過程中,我反覆安裝與測試了多次 MicroK8s,期間踩了不少坑,也累積了許多實戰經驗。因此,我決定整理這篇 Blog,讓自己以後部署時可以有一份可直接複製使用的指令手冊,也幫助正在學習 Kubernetes 的朋友少走一些彎路。 本文是基於 MicroK8s 官方文件、Helm、Argo CD Image Updater 等官方說明整合的安裝流程,並修正...
-
Nuitka 與 Docker 打造高效能且安全的 Python 應用部署方案
前言 在現代軟體開發中,Python 應用的部署一直面臨著多重挑戰:程式碼安全性、執行效能、以及部署複雜度。傳統的解決方案如 PyInstaller 雖然廣泛使用,但在設定複雜度和效能方面仍有不足。 本文將深入探討 Nuitka 編譯器與 Docker 容器化技術的結合,這個創新方案不僅能有效保護程式碼,更能在容器環境中實現驚人的效能提升和部署優化。
-
資料結構-複雜度計算
前情提 在準備研究所面試與專題報告時,演算法分析 往往是必考重點。本文彙整了從最基礎的漸進符號定義($O,\,\Omega,\,\Theta,\,o,\,\omega$)到空間複雜度、遞迴關係、以及Master 定理與其擴展版本的精華內容,並搭配典型範例與 C/C++ 實作要點,助你快速掌握: 1. 各種 Asymptotic Notation 的嚴謹定義與相互關係 2....
-
使用 Git Worktree 提高開發效率與維持線性 Commit Log
使用 Git Worktree 提高開發效率與維持線性 Commit Log 最近在專案開發中,我發現自己經常遇到這些問題: 修 Bug 時要來回切換分支,結果 stash 來 stash 去,不小心還搞丟了一些變更。 切換分支之後還要等一堆 npm install 或是 docker-compose up,光是環境準備就花掉大半時間。 git log 變得又亂又複雜,充...
-
LazyVim 設定過程筆記
LazyVim 和 Oh My Tmux 設定過程 我嘗試了一些方式安裝 Neovim,大部分找到的都偏複雜, 後來我覺得直接用 LazyVim 安裝最快了,然後搭配 tmux 感覺就是工作效率翻倍, 但是我覺得還是要熟悉 Vim 才會有這樣的感覺,然後搭配著 Tmux 的功能讓頁面可以快速切換, 總體來說我覺得這樣的搭配也算好用。
-
作業系統-死結管理
前情提要 這篇文章主要探討了 死結管理(Deadlock Management) 的核心概念與解決方法。今天的內容涵蓋了死結的定義、發生條件,以及處理死結的不同方法,包括 預防(Prevention)、避免(Avoidance) 和 檢測與恢復(Detection and Recovery)。此外,還詳細介紹了 Banker’s Algorithm 和 資源分配圖(Res...
-
作業系統-競爭條件與同步
前情提要 這篇文章深入探討了 競爭條件(Race Condition) 與 同步(Synchronization) 在操作系統進程管理中的核心概念。從基本的臨界區問題(Critical-Section Problem)出發,逐步介紹了解決該問題的各種方法,包括硬體支持(如 Test-and-Set 和 Compare-and-Swap)、軟體解法(如 Peterson's...
-
ISO27001 第四至第六章 - 組織全景、領導與規劃
前情提要 這篇文章主要整理了 ISO 27001 標準中第四至第六章的內容,涵蓋了組織全景、領導與規劃三大主題。今天的重點包括如何了解內外部情境、關注方需求與期望,以及確定資訊安全管理系統(ISMS)的範圍;同時也深入探討了高層管理階層在資訊安全中的角色與承諾,並說明了風險評鑒與目標規劃的具體步驟,這些內容為組織建立有效的 ISMS 提供了全面的指引。
-
K8s 中的 Pod 是什麼
前情提要 這篇文章詳細介紹了 Kubernetes(K8s) 中的核心概念之一 —— Pod,包括它的定義、生命週期、資源管理與限制,以及相關操作指令。Pod 是 K8s 中創建和管理的最小單位,文章重點說明了 Pod 的組成、運行邏輯,以及如何在 K8s 中部署應用程式。同時還提供了配置 Pod 資源限制的範例 YAML 文件與實操步驟,並總結了一些常用的 kubect...
-
DOMjudge 安裝指南
簡介 DOMjudge 是一個開源的程式設計競賽管理系統,通常用於各類程式設計競賽,例如 ACM ICPC。本篇文章將介紹如何透過自動化 Shell 腳本來在 Ubuntu 系統上安裝 DOMjudge 競賽系統。我們會逐步解釋每個步驟,幫助讀者了解整個過程的每一個細節。
-
RESTful 和 API 關係介紹
前情提要 這篇文章主要介紹了 API 與 RESTful 架構 的概念,探討了 API 的基本原理、客戶端與資源的角色,以及如何利用 RESTful 架構設計高效且易於擴展的 API。文中詳細說明了 REST 的架構風格(如統一介面、無狀態、分層架構等),並且闡述了 RESTful API 的運作方式及其優勢,例如可擴展性、靈活性和獨立性。此外,文章還提供了 URI 設計...