趁週末將個人首頁 www.gasolin.idv.tw 從 Google App Engine(GAE) 遷移至 OpenShift. 從2009年開始使用 GAE 架設個人首頁,從剛開始 (python, GAEO),2012(Java, play framework),到今天遷移到 OpenShift(Node.js, webapplate / Express),使用了三種 Server SIde 技術。最近的這次遷移只用了兩天,就完成整個申請/移植/部署的過程。遷移的主因是 GAE 最近不再支援 Java 1.6,使得無法繼續使用 Play Framework 1.2.x 來部署。Play Framework 1.2.x 已經被完全改寫的 2.x 取代許久,而新版並未支援GAE。加上近年開始使用js的機會更多,於是乾脆搜尋了一下,選擇 OpenShift 作為最新的遷居點。
除了 Play Framework 例外,GAEO我有參與開發,webapplate 則乾脆是自己弄來撰寫 Web App 的樣板。透過實際使用,目前可無痛部署到 Heroku,AppFog,OpenShift 上,而不需修改程式碼。所以雖然說遷移只用了兩天,但其實為了弄好 webapplate,也準備了快一年。
由於 webapplate server side 使用 express 4搭配 swig (Django-like) 樣板(template)引擎使用,與原本使用的樣板架構一致,所以遷移上並沒有遇到什麼問題。
webapplate server side 已做過伺服器效能最佳化,使用yslow或pagespeed都可以測到相當高分的結果。