在臉書上跟大家討論為什麼沒有多少人在分享文章,我指的是原創的文章。雖然很難用單一理由解釋原因,但山姆鍋深信部落格還是有它存在的用處,也相信程式人就該有個部落格。
閱讀全文在 高可擴展的任務執行架構需求 一文中,山姆鍋提到基於 Python 的超輕量級沙盒 (sandbox)。沙盒是一個有限制的執行環境, 用來執行不受信任的程式碼 / 腳本 (script)。本文山姆鍋基於需要,實驗一個 Python 沙盒的開源專案。
閱讀全文什麼是 UUID? 相信多數參與軟體開發的人應該都知道。知道什麼是 UUID, 暸解
TimeUUID 也是輕而易舉的事情。雖然 TimeUUID 感覺無足輕重,
但在特定的使用案例 (use case),又是這麼方便,山姆鍋覺得值得為它介紹一番。
最近山姆鍋在思考一個大型網路系統架構設計的問題,為什麼是大型網路?因為沒有機會實作,只好紙上談兵幻想一下。 這裡所指的「大型網路」是指可擴展到支持上萬個以上節點 (node) 的網路架構,為什麼要設計這樣的架構?
閱讀全文曾經讀過一篇關於「殭屍網路 (Botnet)」透過 BitTorrent 作為命令與控制中心 (command and control center) 的文章。 細節雖然已經不太記得,但有天心血來潮,想說到底要如何透過 BitTorrent 來控制一群殭屍電腦?
閱讀全文山姆鍋平常喜歡搜尋一些有趣的開放源碼專案,尤其是有提供設計文件的。有天不知道怎麼地逛到了 Cockroach DB 這個專案,它的設計文件有許多有趣的地方,但我特別注意到其中一篇論文,關於使用邏輯與實體時鐘來實現一個分散式時間郵戳 (timestamp) 的演算法。
閱讀全文面試工程師,除了一定要做的實際筆試之外,山姆鍋為了進一步了解候選人 (candidate) 的能力,會再口頭提問幾個問題。 這些問題對某些人來說,可能覺得不難,但山姆鍋的經驗發現,能夠正確回答出這些問題的比例比預想的少許多。 甚至可以說:會這些題目的工程師,能力已經在水準之上。
閱讀全文在山姆鍋頭幾年工作中,有一次的經驗讓我到現在還記得並引以為戒。話說這整件事情就跟使用關聯式資料庫當作訊息佇列 (message queue) 脫不了關係。
閱讀全文山姆鍋期望雲端存儲與備份服務,可以做到保護使用者的資料安全與隱私。針對要達到這樣目標, 已經說明了其中需要的兩個關鍵技術:「資訊擴散演算法」以及「Convergent Encryption」。 本文山姆鍋說明另外一片重要拼圖:「去中心化身份驗證 (decentralized authentication)」。
閱讀全文