Agent7 Tech Blog

探討雲端架構、維運自動化與數位轉型的最佳實踐。

Python

Python 效能優化:List Comprehension vs. Map/Filter

寫出 Pythonic 且高效的程式碼 在處理大量數據時,迴圈的寫法直接影響效能。傳統的 for 迴圈雖然直觀,但在 Python 解譯器中速度較慢。 List Comprehens...

詳細內容 →
Culture

SRE 文化:Blameless Post-mortem

不指責的事後檢討 事故發生後,檢討重點在於「流程」與「系統」,而非「人」。 - 錯誤:誰把 DB 刪了? - 正確:為什麼系統允許一個指令就能刪除 DB?為什麼沒有防呆機制?...

詳細內容 →
Monitoring

Log 管理:ELK/EFK 架構優化

避免 Log 塞爆 1. 應用程式端:使用非同步 (Async) 寫入 Log,避免 I/O Blocking。 2. 收集端 (Fluentd/Logstash):設定 Buffer 與...

詳細內容 →
Security

DevSecOps:容器映像檔掃描

自動化掃描 在 CI Pipeline 中整合 Trivy 或 Clair。 設定閥值:若發現 Critical 或 High 等級的 CVE 漏洞,直接讓 Pipelin...

詳細內容 →
Linux

Linux 效能:Load Average 真義

數值解讀 Load Average 代表「正在執行」加上「等待執行(CPU 或 I/O)」的 Process 數量。 - 若 Load 高但 CPU 使用率低,通常是 Disk I/O...

詳細內容 →
DevOps

CI/CD:Immutable Infrastructure

不可變基礎設施 一旦部署後,絕對不要 SSH 進去伺服器手動修改 Config。 若需變更,應修改 Code -> Build Image -> Redeploy。 這能避免 Config...

詳細內容 →
Database

Redis 使用注意事項

避免阻塞 Redis 是單執行緒模型。 1. 嚴禁在生產環境使用 KEYS 指令,這會鎖死整個 Server,請改用 SCAN。 2. 設定 maxmemory-policy...

詳細內容 →
Database

資料庫備份:3-2-1 原則

備份黃金法則 - 3 份備份副本。 - 2 種不同的儲存媒體(例如:本地 Disk + 雲端 Object Storage)。 - 1 份異地保存(Off-site...

詳細內容 →
Kubernetes

K8s 除錯:CrashLoopBackOff 處理

排查步驟 SOP 1. kubectl describe pod <pod-name>: 看 Events,確認是否為 OOM 或 Mount 失敗。 2. kubectl logs...

詳細內容 →