備份與 DRM

Slashdot 上看到一個丹麥人很認真的玩起「矛與盾」:「Danish DRM Breaker Turns Himself In To Test Backup Law」。

丹麥的著作權法令允許備份,但不允許破解 DRM。於是他拿到 DVD 後就破解 DRM 備份,然後跑去找反盜版組織「自首」XDDD

結果反盜版組織只說「okay 我們知道了,之後會聯絡你」就沒下文了,這傢伙就跑去找警察自首 XDDD

使用 Google 提供的 AJAX Libraries 需要注意的細節...

在「How Google is wasting your bandwidth」看到有人發現 Google 所提供的 Google AJAX Libraries 有一些地方處理的非常極端,沒有注意的話反而會使得使用者多花不少頻寬在上面。

jQuery 為例,如果直接指定版本,使用 1.3.2:http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js,那麼 Expires 會設定一年左右的時間:

Last-Modified: Mon, 23 Nov 2009 18:54:21 GMT
Date: Mon, 30 Nov 2009 22:03:29 GMT
Expires: Tue, 30 Nov 2010 22:02:37 GMT
Cache-Control: public, must-revalidate, proxy-revalidate, max-age=31536000
X-Content-Type-Options: nosniff

但如果後面有 ?...,像是加上了 ?ver=1.3.2 就會完全不一樣,完全不會 cache:

Last-Modified: Mon, 23 Nov 2009 18:54:21 GMT
Date: Mon, 30 Nov 2009 22:04:43 GMT
Pragma: no-cache
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Cache-Control: no-cache, must-revalidate

另外一個比較小的問題是 http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js 會指到 1.3 系列最新版本,是不會 fully-cache 的,每次都會 revalidate (最好的情況是 304 Not modified,傳輸量小於 1KB,比較差的情況是整個檔案重抓一次) 以確保 Google 更新時使用者就會馬上看到最新的檔案:

Last-Modified: Mon, 23 Nov 2009 18:54:21 GMT
Date: Mon, 30 Nov 2009 22:05:52 GMT
Expires: Mon, 30 Nov 2009 23:05:52 GMT
Cache-Control: public, must-revalidate, proxy-revalidate, max-age=3600

1.2.6 與 1.2 也是一樣的情況,要使用 Google 提供的 AJAX Libraries 要注意。

以目前 Google 所提供的平台,應該要使用指定完整版本 (像是 1.2.6 或是 1.3.2),且不帶任何 query string 的 request。

VPS 的性能比較

Eivind Uggedal 寫了一篇文章比較 Amazon EC2LinodePrgmrRackspaceSlicehost 的 VPS。比較廣義的說,應該是指利用虛擬化技術的 hosting:「VPS Performance Comparison」。

結論是 Linode 在效能上大獲全勝,而且有提供 32bit 與 64bit 環境可以選擇,可用頻寬 quota 也是最多的。Pgrmr 記憶體雖然大,但也就是只有記憶體大而已,效能並沒有很好。

PayPal 黑色星期五交易數量創紀錄

Slashdot 上看到因為感恩節 (參考 Wikipedia 的「黑色星期五 (購物)」) 而使得 PayPal 黑色星期五的交易筆數又破紀錄,比 2008 年多了 20%:「Record-Breaking Black Friday For eBay's PayPal」。在 PayPal 官方 blog 上也有提到這件事情:「Black Friday Data is Here: Online Shopping Activity Increases」。

大家愈來愈習慣網路上的交易了... 連家裡的老人家都會自己到書店買書,到超商拿貨 XD

Adobe Flash Player 10.1 的 H.264 硬體解壓縮功能...

YouTube 在這個月公告支援 full HD (1080p):「1080p HD Is Coming to YouTube」。

依照之前 720p 的慣例,又有一堆人開始丟 full HD 影片上去測 (用 &fmt=37 直接看),像是不可能會少的 AIR OP... XD

不過因為目前主流的 Adobe Flash Player 10.0 的 H.264 是用軟體解,bitrate 比較高的 H.264 影片會讓一堆人的電腦炸的亂七八糟,這個禮拜在公司看的時候大家都叫翻了... XD

如果顯示卡有支援 H.264 硬體解壓縮,可以抓 Adobe Flash Player 10.1 版測試 (目前還是 prerelease 階段),要測試的人可以到 Adobe Flash Player 10.1 這邊翻,要注意的是必須先移除現有的 10.0 版,不然裝不進去。我裝上去之後是變順了,不過還是會單顆 CPU 100%,這就不知道原因了...

目前在 Adobe Flash Player 10.1 還沒有正式 release 前,比較完整的資訊可以在「Introducing Adobe Flash Player 10.1 public prerelease」這篇查到更詳細的資料。

Python 的 JSON library 速度比較

在「JSON Performance in Python」這篇看到比較圖,在 Python 2.6 上面測試 json (stdlib)simplejsonjsonlib2cjson 這四個不同的 JSON library 的速度。

可以看到系統內建的 json 很慢,主要的原因除了是純 Python 外,另外在原文留言的地方也有提到 json 在被引入 Python 2.6 的時間太接近 release 日期,當時沒有辦法再大幅度改寫,所以速度很慢。

其他的部份可以看出來 cjson decode 的速度相當快,但 encode 的速度就不是很好,但是 cjson 的 API 與其他三組 library 不太一樣,直接用 cjson.decode()cjson.encode(),其他的 library 都提供比較彈性的介面 (換句話說就是比較複雜) 操作。

The Pirate Bay 的 Tracker 關閉,走向分散式架構

The Pirate Bay 總算把 tracker 關閉了:「The Pirate Bay Tracker Shuts Down for Good」。

TPB 的 tracker 應該是關閉之前最「好用」的 tracker,不需要註冊,直接指過去就可以用,而且又夠力... 可以看到許多 torrent 檔裡面都加上 TPB 的 tracker。雖然有其他 open tracker,不過這次關閉應該會對整個 Bittorrent 分散式架構有很重要的影響,因為現有的檔案 (尤其是只設 TPB tracker 的檔案) 會大量依靠 DHT + PEX

不過,tracker 就算關閉,對目前的 Bittorrent client 應該都沒什麼大問題,因為都支援 DHT 與 PEX 了,交叉組合對於熱門檔案應該是可以保持網路的完整性,至於非熱門檔案就不曉得了...

Amazon Web Services 的近況與未來計畫

在前幾天的「AWS News Summary...」裡提到了一些東西其實還蠻重要的...

通過 SAS70 Type II:「AWS Completes SAS70 Type II Audit」,從 Wikipedia 的「Statement on Auditing Standards No. 70: Service Organizations」可以看到解釋,不過我對 SAS70 不熟...

預定在 2010 年建立亞洲區 data center,上半年會先在新加坡建立,下半年會在亞洲其他地方建立,目前還沒有說明是哪些地點:「AWS Announces Expansion into Asia」。除了可以在亞洲建立 EC2 instance 或是 S3 bucket 外,這對於亞洲區 CloudFront 的密集度會再提昇...

另外就是 AWS 用的 OTP token 開始接受美國國外的訂單了:「AWS Multi-Factor Authentication compatible devices now available worldwide」。

Firefox 3.6b4pre

剛剛升級 Firefox 的時候發現升到 Firefox 3.6b4pre,這代表 3.6 beta3 這幾天應該就會發行了。

不過這次升級又爛了一些東西... 像是 Nightly Tester Tools 的 Override all compatibility 按鈕居然失效,在升級後 GreasemonkeyScreengrabWeb Developer 得重裝 (安裝時的 Force Install 沒有失效)。