Skip to content
Wen-Hsiu Hsu's Avatar Image
Wen-Hsiu Hsu's Avatar Image

程式碼之外,還有生活的藝術 前端工程師 / 攝影 / 生活紀錄

  • 文章277
  • 標籤313
Buy Me A Coffee

最新文章

混合 Dev 和 Life 的所有最新內容

277 篇
2025-05-093 分鐘閱讀

這裡主要寫一些網頁前端相關的文章,主要是為了作為個人的紀錄留存用,「可能」會偶爾寫電影、音樂、遊戲類的文章,反正就是寫好玩的。有任何問題歡迎聯絡我!

生活亂談
#關於
2026-08-2714 分鐘閱讀

解釋容器協調(orchestration)在大規模部署下要解決的問題,帶出 Kubernetes 這類工具的角色,整理 round robin、least connections 等常見排程演算法的取捨,示範用 htop 觀察伺服器負載,並用 Nginx 的 upstream 設定把流量分配到多個容器實例。

2026-08-2718 分鐘閱讀

逐行拆解一個 Node.js 應用程式的 Dockerfile:為什麼用 Alpine 版基礎映像、建立 node 使用者並改變檔案擁有權、先複製 package.json 再裝套件,並用 docker build、docker run 把應用程式跑起來,同時開出多個埠號的容器實例,為下一節流量分配鋪路。

2026-08-2613 分鐘閱讀

拆解單體架構與微服務架構在團隊協作方式、技術棧選擇自由度上的優缺點取捨,解釋容器化跟虛擬化的差異:虛擬化把一整台實體伺服器切分成好幾個獨立區塊,容器則進一步把每個服務拆成各自獨立輕量的單位,說明容器怎麼做到零停機更新、跨作業系統自由移植,並帶出這門課為什麼選用 Docker 作為容器管理工具。

2026-08-2610 分鐘閱讀

解釋 HTTP/1.1 每個檔案獨立開連線、HTTP/2 用 multiplexing 共用單一連線的差異,示範在 Nginx 的 443 埠 listen 區塊加上 http2 關鍵字即可啟用,並用瀏覽器 Network 面板的 Protocol 欄位驗證連線從 h1 換成 h2,附上重啟前的驗證指令。

2026-08-2513 分鐘閱讀

示範用 EFF 提供的免費工具 Certbot,透過 snap 套件管理器安裝,自動改寫 Nginx 虛擬伺服器設定加上 443 埠與憑證、把 HTTP 導向 HTTPS,並解釋 Certbot 為什麼要建立臨時檔案驗證網域所有權,最後用 ufw 開放 443 埠、測試自動更新,完成整個 HTTPS 部署流程。

2026-08-2516 分鐘閱讀

拆解一個 HTTP 請求跟回應實際長什麼樣子,整理 User-Agent、Accept-Encoding、Set-Cookie 等常見標頭的用途,說明狀態碼第一碼分類(1xx 到 5xx)怎麼幫助快速判斷問題出在客戶端還是伺服器端,並解釋為什麼未加密的連線容易被攔截竊聽,一定要改用 HTTPS 保護資料傳輸。

2026-08-2419 分鐘閱讀

用 SQLite 幫 WebSocket 伺服器寫一份訪客紀錄,示範為什麼 SQLite 比 MySQL 更適合小型專案,用記憶體資料庫、serialize 建表、db.run/db.each 讀寫資料,並拆解實際部署時撞到的三個真實錯誤:SQL 語法逗號、記憶體資料庫重建、關閉順序卡死的除錯過程。

2026-08-2414 分鐘閱讀

解釋為什麼多台伺服器沒辦法共用同一個檔案儲存資料,資料庫如何同時解決檔案缺乏擴展性、缺乏結構強制力這兩個根本問題,比較關聯式資料庫與非關聯式資料庫在嚴謹度、查詢速度上的取捨,拆解關聯式資料庫的三大組成:表、欄位、記錄,並示範用主鍵、外鍵把多張表串接起來,用 SELECT 與 JOIN 寫出一個簡單的跨表查詢。

2026-08-2315 分鐘閱讀

在 index.html 補上前端的 WebSocket 連線程式碼,用 window.location.protocol 判斷該用 wss 還是 ws,串接 host 建立連線,用 onmessage 印出伺服器傳來的訊息,最後把成果部署到正式伺服器,用 pm2 換掉舊的伺服器並排查過程中遇到的錯誤。

MIT Licensed | Copyright © 2025-present Wen-Hsiu's Blog
Photo by Aram on Unsplash