Hosting Plan

2009 年在 Ptt 寫的文章有提到不少 hosting plan,2012 年現在有不少變化…

VPS 的部份,Linode 的 CPU 一向是 C/P 值超漂亮的方案。最小的方案從 384MB RAM 變成 512MB RAM (價錢沒變,仍然約 USD$20/month),在有 swap 的情況下,即使跑 ApacheMySQL 也應該還算堪用。

Linode 另外一個改變是多了東京機房。東京機房與台灣各 ISP 之間的 latency 都相當好。當以台灣使用者為主要族群而挑選 VPS 時,在東京的 Linode 主機通常是個好選擇。如果在 Linode 上面有 High Availability 需求,也有 NodeBalancer 可以用 (2011 年,Introducing NodeBalancer)。

Linode 已經算是不錯的方案,但如果你對 latency 非常重視 (日本與台灣之間大約有 30ms 的 latency) 而一定要使用台灣內部的 VPS (像是遊戲的伺服器),那麼中華的 HiCloud 會是一個可以考慮的方案。

PaaS 的部份,目前比較有名的是 Heroku,支援的語言多,而且有 free quota,對於一些小站台或是測試應用應該是沒什麼問題,不過目前只有美東 us-east-1 機房 (Heroku 用 AWS 為底層)。另外 AWS Elastic Beanstalk 的方案也可以看看,目前支援 JavaPHP 兩種語言,區域比較多。

如果是 IaaS 的部份,AWS 能提供的功能比較多,AWS 東京機房對台灣的速度也不差。另外 AWS S3 在雲端靜態儲存這個領域還是領先者,就算用 VPS 或是 Dedicated Hosting 也還是可以考慮把一些東西放到 S3 上。

Dedicated Hosting 的部份,目前還會選的是美西的 Energy Group Networks (EGIHosting) 以及 Limestone Networks。需要大頻寬的時候可以到 Dedicated Servers 這頁翻翻,或是寫信跟 EGIHosting 要 quote,當你 commit 1Gbps 含機器的價錢大約是 USD$1/Mbps (台幣 NTD$30/Mbps),連台灣的頻寬應該是透過 HE 或是 nLayer 連進來。

至於 CDN 服務,我的建議是,如果你不知道哪個比較好,就不要用吧… 等到你開始 profiling & analyze 後再回頭決定。

Posted in AWS, CDN, Cloud, Computer, Murmuring, Network | Tagged , , , , , , , , , , , , , | 2 Comments

英國政府所建議的「數位服務設計原則」

在 Hacker News 的摘要上看到的,對於政府提供數位服務,英國政府嘗試訂出設計原則 (雖然目前這份文件還是 alpha 版本):「Government Digital Service Design Principles」。

這份原則是延伸自原來的七大守則:

其中有幾點相當棒:

  • 第二條的「Do less」,如果有人已經做了類似的事情,就直接連出去,不要做重複的事情 (If someone else is doing it — link to it),政府只需要提供其他人無法提供的資訊 (We should concentrate on the irreducible core)。如果能夠提供 API 之類的介面幫助其他服務做的更好,就提供出去讓其他人再利用 (If we can provide resources (like APIs) that will help other people build things — do that.)。
  • 第四條的「Do the hard work to make it simple」直接提到,使用者會用政府的服務是因為沒有替代方案:如果不努力讓服務簡單易用,就是在浪費使用者的時間。(With great power comes great responsibility — very often people have no choice but to use our services. If we don’t work hard to make them simple and usable we’re abusing that power, and wasting people’s time.)
  • 第五條的「Iterate. Then iterate again.」,考慮風險,如果一次到位的風險太高,邊打邊跑推出服務:從 alpha 階段進入 beta 階段,再從 beta 階段趨近於成熟,每個階段去看實際的反應,而不是一開始就畫一張大餅猜測使用者需要什麼。
  • 第八條的「Build digital services, not websites」與第十條的「Make things open: it makes things better」,標題就說明得很清楚了。

即使是一般商業產品的設計也是通用的原則…

Posted in Computer, Murmuring, Network, Political, Software, WWW | Tagged , , , , | Leave a comment

AWS USD$50 的優惠…

Colin PercivalTwitter 上看到的:

Looks like Amazon Web Services is giving away $50 credits which can be used for running FreeBSD on EC2: http://aws.amazon.com/solutions/global-solution-providers/microsoft/aprilcredit/

活動的網址在「$50 AWS Service Credit for Microsoft Windows Server Instances Running on Amazon EC2」這裡。照說明是用在 AWS EC2 的 Microsoft Windows Server 上,不過把 code 輸入進去後寫了一堆 product:

有打算用 FreeBSD 的人應該是不會有問題 (參考「FreeBSD on EC2」這個頁面的說明),其他的服務不知道會不會也能用到,下個月就知道了 XD

Posted in AWS, Cloud, Computer, FreeBSD, Murmuring, Network, OS, Windows | Tagged , , | Leave a comment

用 Google Analytics 紀錄 JavaScript 錯誤…

Client-Side Error Logging With Google Analytics」這篇提到可以用 Google Analytics 紀錄 JavaScript 錯誤…

不過這不是即時的紀錄,倒是作者有提到可以交叉比對,當發生 JavaScript 錯誤對於其他參數的影響:

Track the impact of client-side errors on other business metrics. With the reporting in Google Analytics you can see how these errors are affecting bounce rate, conversion and sales.

Posted in Computer, Murmuring, Network, Programming, WWW | Tagged , , , | Leave a comment

在 Mutt 上看 html 信件…

花了一些時間設定 mutt,本來在 terminal 上面沒打算看 html 信件,不過後來還是決定設起來,至少可以看到 html 的文字部分再決定要不要轉到 gmail 上面看…

~/.muttrc 裡面加上:

auto_view text/html

另外在 ~/.mailcap 裡面指定用 w3m

text/html;/usr/local/bin/w3m -I %{charset} -T text/html -dump %s; copiousoutput

Posted in Computer, Mail, Murmuring, Network, Software | Tagged , , | Leave a comment

Percona 把 Galera Cluster 標為 General Availability 了…

前幾天讓人吃驚的新聞,Galera Cluster 離第一次 Percona alpha 測試 (Percona Server 5.1 with Galera replication) 才九個月就進入 GA 了 (相當於九個月內就過完 Beta + RC 階段):「Announcement of Percona XtraDB Cluster 5.5.20 GA release」。

大家最大的問題還是「這能用嗎」… 不過既然進入 GA 狀態,加上是 Percona,好像可以期待?

Posted in Computer, Database, Murmuring, MySQL, Network, Software | Tagged , , , , , , | Leave a comment

在 FreeBSD 上練習 Objective C…

一樣用 gcc 就可以練習了,首先要先裝 lang/gnustep-base:

cd /usr/ports/lang/gnustep-base; sudo make install clean

裝好後 compile 的兩個階段要對 gcc 加上不同的參數:

-I/usr/local/GNUstep/System/Library/Headers

以及:

-L/usr/local/GNUstep/System/Library/Libraries -lgnustep-base -lobjc

把這些參數整合到 Makefile 裡面就可以練習了。

Posted in Computer, Murmuring, Programming, Software | Tagged , , , | Leave a comment

在 Mac OSX 上安裝 GCC

參考「Xcode, GCC, and Homebrew」這篇文章整理的…

先前是裝上面那篇文章作者所整理的 OSX GCC Installer,但在新的 MBA 上面發現 homebrew 會抱怨 Xcode 版本太舊?

後來還是改裝 Apple 提供的 Command Line Tools for Xcode (需要 Apple ID) 就沒問題了。

Update:在 Twitterbcse 提醒標題不對,因為實際上 gcc 指令被 alias 到 llvm-gcc-4.2,這並不是 GCC (只是相容介面,骨子裡還是 llvm),這篇只是講 Mac OSX 上面要怎麼裝 compiler 讓 homebrew 可以用…

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , | 1 Comment

Fabric Engine

Fabric Engine 號稱可以把 JavaScript 與 Python 跑到接近 C++ 速度的實力,而且強調支援 Threading… 投影片裡可以看到底層的技術包括 LLVM

在 Python 的範例程式可以看到 import 後用專屬的 Handler 包起來:https://github.com/fabric-engine/PublicStable/blob/master/Examples/Python/Tutorial/trivialHTTPServer.py。而 NodeJS 的範例也是類似的架構:https://github.com/fabric-engine/PublicStable/blob/master/Examples/Node/Tutorial/trivialHTTPServer.js。看起來比較像是把常用的 module 寫成 C++ code 而已?這並不是什麼神奇的技術…

另外 license 是 AGPL 3 or later 這個麻煩的 license,再加上使用 GitHub 的方式超怪 (把 stable 版本與 dev 版本 source 放到不同 reposiotry:Download

先把這軟體丟到一邊吧,等之後有人提起來的時候再看看…

Posted in Computer, Murmuring, Programming, Software | Tagged , , , | Leave a comment

Blind Signature…

最近看到電子投票的事情,想起之前研究所時所學的密碼學… 是否有辦法找出一個合理的密碼系統,可以在密碼學這層解決電子投票要處理的問題:

  • 正確性:一人一票、無法偽造、無法更改。
  • 匿名性:無法得知單一的投票內容。
  • 可驗證性:自己可以驗證自己的投票內容、任何人都可以驗證全體的投票總數。
  • 其他要求:…

有很多人試著去建立這樣的系統 (在「Cryptography – Electronic Voting」這篇可以看到),但目前沒有完美的系統可以做到…

其中 Blind Signature 在這樣的系統內常常被拿出來當工具… 之前沒仔細看懂,週末花了一些時間發現 Blind Signature 還蠻有趣的。

Blind Signature 想要與一般的 signature 一樣,讓對方簽 message m,取回 signature s。但多了一個要求:要在對方不知道 m 的內容情況下達到相同的效果。

在 Wikipedia 上有說明用 RSA 的作法,看懂以後覺得還蠻有趣的…

Posted in Computer, Murmuring, Political, Programming, Security, Social | Tagged , , | 2 Comments