My favorites | 中文(繁體) | Sign in
英文版或許有比此中譯版新的內容

應用服務引擎 Python 總覽

歡迎使用 Python 專用的 Google 應用服務引擎!有了「應用服務引擎」,您可以使用 Python 程式語言來建立網路應用程式,並利用多種專業開發人員使用的 Python 程式庫、工具及架構來建立世界級的網路應用程式。您的 Python 應用程式會在 Google 的可擴充基礎結構上執行,並使用大型持續性儲存體和服務。

如果您尚未閱讀過入門指南,請參閱「Python 入門指南」,以取得使用 Python 和「Google 應用服務引擎」開發網路應用程式的互動式簡介。

Python 執行階段環境

Python 網路應用程式會使用 CGI 通訊協定與「應用服務引擎」網頁伺服器互動。應用程式可利用 CGI 介面卡,使用與 WSGI 相容的網路應用程式架構。「應用服務引擎」提供可讓使用者快速入門的簡單網路應用程式架構 (稱為 webapp)。而較大的應用程式、功能完善的第三方架構 (例如 Django) 也可順利與「應用服務引擎」搭配使用。

「應用服務引擎」支援 Python 2.5。Python 直譯器會在安全的「沙箱」環境中執行,進而針對服務和安全性來隔離應用程式。直譯器可執行任何 Python 程式碼,包括您包刮在應用程式內的 Python 模組以及 Python 標準程式庫。直譯器無法載入 C 程式碼的 Python 模組,因此這是一個「純粹」的 Python 環境。

沙箱可以確保應用程式執行的動作不會干擾其他應用程式的效能與擴充性。例如,應用程式無法將資料寫入本機檔案系統,或任意建立網路連線。應用程式使用「應用服務引擎」提供的可擴充服務來儲存資料和透過網際網路通訊。當應用程式嘗試匯入的模組來自於已知無法在沙箱限制下運行的標準程式庫時,Python 直譯器會發生例外狀況。

請參閱「CGI 環境」以取得詳細資訊。

資料存放區和服務

應用程式可以使用「應用服務引擎」的「資料存放區」,做為可靠、可擴充的持續性資料儲存空間。「應用服務引擎」資料存放區的 Python API 包括可管理資料結構描述的 Rich Data 模型。API 支援兩種執行資料存放區查詢的介面,包括 GQL (類似 SQL 的查詢語言,也用於管理控制台)。

「應用服務引擎」的 Memcache 提供快速且短暫的分散式儲存,可以快取資料存放區的查詢和計算結果。「應用服務引擎」memcache 的 Python 介面與 Python Memcached API 相容。

應用程式使用「URL 擷取」服務存取網路資源,並經由 HTTP 和 HTTPS 通訊協定與其他的主機通訊。Python 應用程式可使用來自 Python 標準程式庫的 urlliburllib2httplib 模組來存取此服務,或它們可以使用「應用服務引擎」URL 擷取服務 API。

應用程式可以透過「郵件」服務,代表應用程式管理員或目前登入的使用者傳送電子郵件訊息。

影像」服務可讓應用程式轉換與操縱多種格式的影像資料,包括裁剪、旋轉、調整大小和照片色彩加強。

應用程式可以使用「Google 帳戶」驗證使用者。「Google 帳戶」可以處理使用者帳戶建立和登入,而已經擁有 Google 帳戶 (例如 GMail 帳戶) 的使用者可以透過該帳戶使用您的應用程式。應用程式可以偵測目前使用者是否已登入,也可以存取使用者的電子郵件地址。Python API 可使用物件傳回使用者資料,而該物件可直接存放至資料存放區。

排程工作

應用程式可以設定排程工作,在指定的時間間隔呼叫應用程式的 URL。如需詳細資訊,請參閱「Cron 任務」。

Python 工具

「應用服務引擎 Python SDK」內含測試應用程式、上傳應用程式檔案、管理資料存放區索引、下載記錄資料及上傳大量資料到資料存放區的工具。

開發伺服器會在本機電腦執行應用程式以測試您的應用程式。伺服器會模擬「應用服務引擎」資料存放區、服務和沙箱限制。開發伺服器還可以根據應用程式在測試期間執行的查詢,產生資料存放區索引的設定。

appcfg.py 這項多用途工具可以處理您的「應用服務引擎」應用程式和命令列之間的所有互動。appcfg.py 可以將您的應用程式上傳至「應用服務引擎」,或更新資料存放區索引設定,讓您可以先建置新索引,再更新程式碼。它還可以下載應用程式的記錄資料,因此您可以使用您的工具分析應用程式的效能。

Python SDK 包含資料上傳工具,可將資料從本機資料檔案新增到應用程式的資料存放區。工具可從 CSV 檔案擷取資料。CSV 檔案是大多數試算表軟體 (如「Google 文件」或 Microsoft Excel) 都支援的試算表格式。您可以使用 Python 程式碼,自訂 CSV 檔案轉換成資料庫實體的方式。