Google App Engine – Google 的囉你命 3000

, , at April 9th, 2008 by 小影

今日是重要的日子,因為 Google 推出了 Google App Engine ,一個有遠大目標的開發平台。

不久前名不經傳的新公司 HerokuAppJet 分別推出了獨特的 Web Hosting 服務。前者使用 Ruby on Rails,後者使用自制的 Java Script framework ,兩者都在虛擬機器上執行,由他們免費提供 Database 和 CPU 的資源,用家不用煩惱管理伺服器、Deployment 和 Scaling 等問題。

Google App Engine 包括甚麼?

Google App Engine 也是類似的服務,但 Google 更豪爽:他保證免費用戶可得到 500 M 的儲存、足以支援每月 500 萬個 page view 的 CPU 和 bandwidth 、電郵整合、Google Account 認證、自動的 Scaling 和 Load Balancing。這早己超越了許多要付費的 hosting 服務了,這種前所未有的超級大贈送大概只有無限金錢的 Google 才辦得到!

Google App Engine 是以 sandbox 形式執行的軟件。在第一個版本中 Google App Engine 支援 Python (Google 稱將來會考慮其他的語言),這包括整個 Python 2.5.2 的標準類庫。除了以外還包括上述的 API ( email, google account, url fetch… etc) 以及一個叫 「webapp」的小型web framework 。如果這還不讓你覺得有甚麼特別,Google 還把整個 Django framework 都包進 App Engine 中。 Django 的地位就如 Rails 在 Ruby 的地位一樣。相對來說沒有RoR 那樣火紅,暫時只在 Python 的 community 有聲音。可以肯定這次 Google App Engine 會為它的社群帶來巨大的推動力,也許就是足以讓它引爆的 critical mass

限制

雖然說可以用 Python 的標準庫,但當然不是所有程式庫也可以用,存取 Socket 、OS 相關、檔案相關、C 的 extension 就被禁止使用。它還有以下限制:

  • 程式只能用內置的 URL fetch API 和 Email API 去連接到其他電腦。其他電腦只能用 HTTP 或 HTTPS 去存取 Google App Engine。抱歉不支援 newsgroup、IRC或其他任何網路服務。
  • 不能存取檔案或 SQL 資料庫。只有使用 Google 提供的儲存 API ,以及讀取其他人經 Google App Engine 上載的檔案。
  • 程式只能應 Web Request 而執行。也不可以在回應時執行過長的工作。這意味著不可以排程或背景執行工作。

囉你命 3000

Google 這次是有備而來,這結合了許多這幾年出現最猛的東西:

  • Amazon S3 和 EC2 平台 — 虛擬伺服器和儲存的服務
  • 開放的軟件平台 — Facebook Application
  • Social Network 平台 — Google App Engine 提供 Google Account 認証
  • Mashup 應用 — URL Fetch API
  • 整合和 Agile 的開發平台 — 包括整個 environment、API以及Django framework

如果說 Apple 的 iPhone 讓手機網路軟件真正的開始被人應用,那麼 Google App Engine 就是讓網路軟件的開發和發行由「很便宜」變成「完全免費」。Google Docs、Gmail 等都只是 Google 以一己之力對抗傳統軟件業,Google App Engine 則是集全世界獨立開發者的力量一起去開發網路軟件!這大概不會產生出另一個 MS Office ,但肯定會有一大堆以前不可能或無利可圖的軟件誕生!軟件的革命要來了。

作為開發者,我還是希望 Google 大發慈悲快推出 Ruby 版的平台,用Rails好、Merb 好、 Ramaze 好、 Ruby Waves 好、 還是其他也好。用過如魔法的 Ruby 就是不能接受 Python (我想 Ruby 是 Chaotic Good 、Python 是 Lawful Good 吧…)。用 JRuby 的平台去作應該不難

如果我是 Yahoo! 或 MS,大概要立即收購 Heroku 去攪類似的虛擬平台。 哈哈,不過怎可能勝過 Google 呢。

延申閱讀

相關文章

  1. 9 Responses to “Google App Engine – Google 的囉你命 3000”

  2. By SM (Michael) on Apr 9, 2008 | Reply

    聽起上來很吸引同免費市場一大突破呢~ 其實早於四五年前已經諗會唔會有免費的app平台, 現在Google終於出了 ^^ 不過唔識Python呢 > < 另, 照你所講, 咁Google App Engine咪唔可以存取DB?

  3. By 小影 on Apr 9, 2008 | Reply

    可以用 Google 的 API 存取資料,用法應該會和普通 DBMS 不同,但儲存資料方面是沒問題的。

  4. By wanszezit on Apr 16, 2008 | Reply

    講得好清楚呢!Thanks!

  5. By 風水 on Mar 17, 2009 | Reply

    寫得不錯, 清楚明了. 謝謝分享!

  6. By ZUNI on Jun 15, 2009 | Reply

    期得快d support埋ROR, 因為hk實在太難搵support ROR既hosting喇, 唔知網主有冇好介紹? :)

  7. By 小影 on Jun 19, 2009 | Reply

    ZUNI,

    現在在 GAE 也可以用 Rails 了 (經 JRuby),不過還不是很完善,想用的話要花不少時間作整合。

    Hosting 的話可以試用 heroku ,不是香港的但很方便易用!

  1. 3 Trackback(s)

  2. Apr 14, 2008: 老熊的Blog | 老熊的博客 » Blog Archive » Google App Engine
  3. Apr 23, 2008: 先補再說 » Blog Archive » Google 工廠新事業處, Google App Engine
  4. Nov 25, 2009: 網站製作學習誌 » [Web] 連結分享

Post a Comment