自從去年颱風下大雨,樂團團練室淹水以後,就一直在想除了水桶以外,可以便利抽水的方法。也因此尋找了一些抽水幫浦的設計和結構。
今天一個因緣際會,收到一個魚缸打氣用的沈水式幫浦,打算拆解來看結構設計。雖然抽水的物理原理大致上已經了解,但仍然不清楚實際的防水方法。
希望這次拆解,可以對馬達、幫浦有更進一步的認識。再來就是動手土砲一個幫浦來玩了。
最後感謝新竹澄品佳餚的老闆,提供故障的水族幫浦零件供研究,讓我省了一筆開銷。
YouTube 上已經有很說神人自幹幫浦了,大家有興趣可以參考看看:
軟體開發、伺服器和生活瑣事
自從去年颱風下大雨,樂團團練室淹水以後,就一直在想除了水桶以外,可以便利抽水的方法。也因此尋找了一些抽水幫浦的設計和結構。
今天一個因緣際會,收到一個魚缸打氣用的沈水式幫浦,打算拆解來看結構設計。雖然抽水的物理原理大致上已經了解,但仍然不清楚實際的防水方法。
希望這次拆解,可以對馬達、幫浦有更進一步的認識。再來就是動手土砲一個幫浦來玩了。
最後感謝新竹澄品佳餚的老闆,提供故障的水族幫浦零件供研究,讓我省了一筆開銷。
YouTube 上已經有很說神人自幹幫浦了,大家有興趣可以參考看看:
今天是測試 Memcache::connect() 踩到的問題。
先來看看文件上的說明:
所以我的程式就這樣寫:
$c = new Memcache();
$stat = $c->connect('localhost');
if (false === $stat) {
echo 'connection failed';
} else {
echo 'connected to cache server';
}
測試時把 Memcached shutdown 來看看是否會偵測到連線失敗。執行時卻噴了一堆錯誤訊息:
Warning: Memcache::connect(): Can't connect to localhost:11211, Connection refused (111) in /home/u/he5702/tmp/asd.php on line 4
Call Stack:
0.0001 355600 1. {main}() /home/u/he5702/tmp/asd.php:0
0.0001 355640 2. Memcache->connect() /home/u/he5702/tmp/asd.php:4
connection failed
文件上面並沒有提到 library 除了回傳 false 以外,還會噴一堆錯誤訊息。萬一這隻是 JSON API 就一定會導致 client parse error。
所以應變方法用「@」來隱藏錯誤訊息:
$stat = @$c->connect('localhost');
寫程式真的很怕遇到 undefine behavior,如果文件上都寫清楚的話,在 dev / staging 上都可以事先檢查、防範。但連文件都沒有寫,就只能等個被廣大的客戶客訴到死 ….。
用 UbuntuMate 16.04 LTS i386 (32bit) 的官方 ISO,透過 Cubic 調整了內容以後,做出來專門用來做電腦系統檢查、救援的 live USB ISO 開機隨身碟。
下載方法:
說明一下異動的內容。
先把多媒體、文書工具的軟體先清除掉,像是 LibreOffice 這類軟體佔用不少儲存空間,但在系統救援完原用不到的東西,我就先幹掉了。另外還有像是 ThunderBird、VLC 等多媒體軟體。
另外增加以下工具,供系統檢查、資料修復備援使用。
一般常用工具:
以往要客製化自己的 Live USB 工具隨身碟,都是使用 Universal USB Installer,並預留可以使用的空間,再自己上去安裝工具。最近看到有人推薦 Cubic,覺得方便很多。
Cubic 會先解開 general ISO,再透過幾個步驟設定你自己需要的東西:
剛剛在幹壞事,想到以前自己找到的 GNU like Windows tool chain「GnuWin32」。
現在主流的系統大多上 64 bits 了,不知道有沒有人重新編譯這些工具,於是直接搜尋「GnuWin64」,沒想到還真的有咧 XDDD
GnuWin64
GnuWin64 provides Win64-versions (x64) of GNU or similar open source tools. The ports are native ports, that is they rely only on libraries provided with 64-bit Microsoft Windows operating system for the AMD64 and Intel64 (EM64T) architecture.