開發結合 AppEngine 和 GCE 的分散式應用程式在存取共享資料時可能具有挑戰性。本問題探討如何在 GCE 上執行的獨立 Go 二進位檔案與 AppEngine 的 devappserver 中的嵌入式資料儲存區之間建立連線。
目前,無法使用 Google Cloud Datastore API(客戶端程式庫)連線到 AppEngine 嵌入式資料儲存區在開發環境中可行。這是由於 Google Cloud Datastore 工具 (gcd.sh) 使用的 Java 開發伺服器和用於 Go 開發的 Python 開發伺服器之間的底層架構差異所造成的。
雖然直接 HTTP 呼叫是一種替代方案,但它們呈現他們自己的一系列挑戰。開發伺服器目前不支援 Go 客戶端程式庫使用的 JSON API。
解決方法:
根據 proppy 的建議,使用 Cloud Datastore Protobuf HTTP API 是一個可行的解決方法。這涉及將 Protobuf 定義編譯為 Go 程式碼並將 POST HTTP 請求直接傳送到資料儲存端點。雖然此方法需要手動製作請求,但它提供了與 Cloud Datastore API 的直接連接,與客戶端程式庫相比,這可以提供更高的穩定性。請注意,使用此方法無法在應用程式和正在開發的雲端資料儲存之間共用資料。
以上是如何在開發中從獨立的 Go 二進位檔案存取 AppEngine 資料儲存區?的詳細內容。更多資訊請關注PHP中文網其他相關文章!