目前原因不明,有可能是國外發現怎麼打在 L4 switch 後面的 DNS server 達到 DNS poison 的效果,也有可能是升級造成的問題,總之目前有很高的 packet lost:
Category: Computer
Del.icio.us to Delicious
Del.icio.us 整個介面大升級 (據官方的說法,底層的程式也大翻修過),換到 Delicious。
換過去後我第一個找的是 Javascript Bookmarklet,要把舊的換掉,找了許久還是找不到,最後在 Help 裡面找到 (其他頁沒有連結進去):Install Bookmarklets on Delicious。
Yuil
Update:這個站倒了 XD 只剩下 screenshot 可以看了...
這個實在太讚了 XD
從 Google Blogoscoped 看到「Yuil」這篇,有人用 Google App Engine,拿 Yahoo! Search BOSS 的結果,與 Cuil 的介面的 Mashup !!!
我覺得搜尋的結果比 Cuil 準多了啊 XD
SimpleCDN
SimpleCDN 是最近看到的一個 service,就實際的情況看起來,他不是真正的 CDN,不過他的價位還算 okay,而且有免費的 15 credits (也就是 USD$15) 可以玩。
SimpleCDN 主要有三種模式,第一種是 Pay Per File,也就是對檔案付一次費用就可以一直下載。第二種是第一種的加強,強調會自動處理抓取檔案並收取費用。第三種是 Reverse Proxy 模式,收費是 0.07 credits/GB。
第三種模式跟 Giga 的 WebAMP 其實很接近,不過 SimpleCDN 的好處在於依照使用的量計費,不像 WebAMP 是每天有固定的量可以讓你用。速度上,從 HiNet 過去幾乎都是透過 PAIX 轉 HE 進去,速度還不錯。
不過缺點是價錢比 WebAMP 貴,另外因為要走國際線路,連線速度會比 WebAMP 慢。(不過... 這倒未必 XD)
另外一個不會使用 SimpleCDN 的考量是 Pay Per File 的部份,我覺得這個模式天生就做不起來啊...
FreeBSD 上的 MySQL 6.0
年初的時候 MySQL 6.0 把 libevent 匯入 source tree 裡,用 libevent 處理 connection pooling (之前似乎是 poll?)。
FreeBSD 剛把 MySQL 6.0 納入 ports 裡 (databases/mysql60-server),可以用 WITH_THREAD_POOL=yes
把這個功能打開。
理論上,使用 libevent 後在 Web 端用 persistent connect 連 MySQL 應該不會影響到效能。
附上年初時看到的資料:MySQL 6.0, Libevent。
頻寬
Perl on Google App Engine
Python 是第一個可以在 Google App Engine (GAE) 上執行的程式語言,而下一個很有可能是 Perl。
Brad Fitzpatrick 在他的 Blog 上說,他被 GAE team 允許對外公佈「我可以使用 20% 的時間開發 Perl on GAE」:Perl on App Engine。
這是 GAE 支援其他程式語言的消息中,第一個被正式公開的。在 Brad Fitzpatrick 的文章裡面有一些藍圖,關於他大概會怎麼做的想法。我們應該可以期待他認真起來的戰鬥力 :p
PS:Brad Fitzpatrick 是 LiveJournal 的創辦人、memcached 的作者、OpenID 的制定人。
WordPress 輸出 Extended RSS (Export) 時的問題
WordPress 有自己的輸出格式可以當作備份檔使用,但輸出的檔案並不是正確的 XML,要做很多處理。
- 首先他並不保證是 UTF-8 valid,所以要強制轉成 UTF-8 valid。在 PHP 裡可以用
$str = iconv('UTF-8', 'UTF-8', $str);
處理。除此之外,還要把某些特殊字元處理掉:$str = preg_replace('/[\x00-\x08\x0b\x0d-\x1f]/', '', $str);
。 - 使用了 <excerpt:encoded> 但卻沒有在開頭定義 xmlns:excerpt。如果需要用到 excerpt:encoded 可以硬轉成 content:excerpt 處理;如果不需要,可以直接拿掉:
$str = preg_replace('/<excerpt:encoded>.*?<\/excerpt:encoded>/', '', $str)
;。 - wp:meta_value 沒有 encode 過,所以像 & 這類的字元會因為沒有 encode 而造成 XML library 抱怨,如果沒有使用到這些欄位,可以照上面的方法拿掉。如果有用到的話可以拿 htmlspecialchars() 處理後加回去。
把這三件事情處理完後似乎可以解決 WordPress 輸出的 Extended RSS 不合法的問題,用 PHP DOM 也不會跳錯誤訊息了。
其中第三個很明顯是 bug,晚點確認是 WordPress 問題並生出 patch 後得去開 ticket 修正。第二個也很嚴重,但是這個問題已經有人提出來,一直沒解:「WordPress Import Fix for Post Excerpts」,得去 ticket system 上檢查是不是有被提出來討論過。
Firefox 下載時的資訊...
可能是 bug...
PHP 5.3 將會有 Lambda Function 與 Closure
剛剛從「php: rfc: closures」這篇看到 PHP 5.3 將會有 Lambda Function 與 Closure 可以用:Request for Comments: Lambda functions and closures。
寫習慣 Perl 的 sort {...} keys %hash;
這類 code 後,在 PHP 裡面一直覺得很彆腳,有 Lambda Function 與 Closure 後可以解決不少問題...