Recent posts

Herdr 搭配 Moshi 就可以搭起你的行動辦公站! 有沒有這麼簡單

category: random     2 minute read     Posted on:

Claude Code Impression 我算是很晚才接觸 AI Agent 這種東西 使用 Claude Code 不過短短兩週,我就發現說其實他能夠大幅的增加開發速度 誒這就有趣了老實說

Git 進階使用 - Git Worktree 多工的好朋友

category: git     less than 1 minute read     Posted on:

Obstacles when Using Git 我還記得以前雖然已經很熟悉 Git 的操作,但其中一個最大的問題點在於說 我如果想要對同一份 codebase 進行不同實驗,我沒辦法同時進行,除非說我把資料手動複製出來 這個問題其實存在滿久的,而我一直沒有嘗試去解決它

網頁程式設計三兩事 - Keycloak 系統,身份認證以及授權框架

category: website     6 minute read     Posted on:

Authorization vs. Authentication 這兩個概念很容易搞混,他分別指的是 Authentication 驗證你是誰 Authorization 確認你能做什麼

YubiKey 在 Linux 以及 Mac 上要如何設定

category: random     2 minute read     Posted on:

How to Generate Keys with YubiKey 這部分請參考 GPG 與 YubiKey 的相遇之旅 | Shawn Hsu

K6 極限壓力測試:從 DNS 解析看系統在高負載下的脆弱性

category: random     5 minute read     Posted on:

Introduction to Load Test unit test 以及 integration test 可以很好的測試功能的正確性 不過更進階的情況下我們可能會需要確保在高系統壓力下,他還能正確地做動 這時候就需要 壓力測試 了

資料庫 - 連線是如何拖垮你的系統的

category: database     2 minute read     Posted on:

How Connection Affect your System’s Performance 以 PostgreSQL 來說,他的底層設計是採用 process per user 的 client/server 架構 也就是說,一個 client 的連線會連到一個 server process 不過由於 ser...

系統的最後一道防線 Rate Limit 機制

category: random     1 minute read     Posted on:

The Guardian of the System 在之前的文章當中,我們討論了許多系統設計上優化的方法,包括在資料庫層級使用 Sharding 以及 Replica 技術使得系統能夠承受更大的負載,如何藉由 Cache 來提昇系統的效能 這些無疑都能夠讓系統擁有更高程度的高可用性 但它其實也都架不住惡意的攻擊...

資料庫 - 解耦助手 RabbitMQ

category: database     3 minute read     Posted on:

Prerequisites 有關 Message Queue 的相關概念可以參考 資料庫 - 從 Apache Kafka 認識 Message Queue | Shawn Hsu 本文會注重在 RabbitMQ 的部份

資料庫 - Autovacuum 在 PostgreSQL 中的重要性

category: database     6 minute read     Posted on:

MVCC(Multi-Version Concurrency Control) 為了盡量避免每次讀取資料庫的時候都要進行上鎖 MVCC 的機制被提出來,它主要允許每一筆 SQL statement 都能夠看到固定的快照 其他人的操作對你來說是不可見的 也就是說其實每個版本的操作都有被記錄下來

DevOps - 實作你自己的 GitHub Actions

category: devops     3 minute read     Posted on:

Implement Your Own GitHub Actions 定義一個客製化的 action 非常簡單,你只要指名 輸入, 輸出 以及 程式進入點 就可以了 而上述的資料必須寫在一個名為 action.yml(或 action.yaml) 當中就可以了