Google宣布開源應用服務引擎App Engine的Java Runtime,目前用戶可以在GitHub上的儲存庫取用。透過開源Java Runtime,Google想要讓用戶能夠更靈活地在其他地方建置App Engine環境,包括本地開發環境、資料中心或是Cloud Run等平臺執行Java工作負載。

Java是App Engine第二個支援的程式語言,在App Engine上,Java開發人員可以不需要管理基礎設施,就能輕鬆地部署和擴展基於servlet的網頁應用程式。而且也並非只能執行Java,其他JVM語言包括Apache Groovy和Kotlin也沒問題。

Google這次開源的部分,包括Java標準環境、生產用的Runtime、API,和本地端SDK。開發者可以在儲存庫各個目錄中,找到com.google.appengine.api套件中的API,可用於存取App Engine服務,像是儲存資料的Datastore,或是用於保存二進位大型物件的Blobstore,還有佇列計算服務Taskqueue等。

官方提到,App Engine的方便之處,在於提供本地開發環境,讓開發者可以在本地端開發機器執行應用程式。因此上述的服務都有本地端實作,讓開發者可以在自己的機器上啟動應用程式,而不需要每次進行更新,都要在雲中部署。

而要使用雲端中的服務,開發者可以使用Google內建的遠端API,從任何Java應用程式存取App Engine服務,像是用戶可以使用遠端API,從本地電腦上執行的應用程式,存取生產用的Datastore;甚至可以使用遠端API,從App Engine應用程式存取另一個應用程式的Datastore。

Google沒有開源App Engine與底層Borg叢集管理系統捆綁的專有中介層,官方提到,專有中介層位在Google基礎設施內部,由於開發人員沒有辦法在自己的環境中,簡單地複製出整個Google後端,因此這次並沒有開源這些中介層。

至於Google開源這些App Engine標準Java Runtime的原因,官方解釋,Google遵循開放雲端(Open Cloud)方法,讓用戶不被特定工具、環境和供應商綁住,使用戶的工作負載可以自由地在任何地方執行。

過去Google已經開源了許多相關技術,包括Kubernetes以及gVisor沙盒。gVisor是容器應用核心,可以提供縱深防禦的應用程式執行環境,而App Engine就是應用gVisor沙盒所實作的應用環境。

熱門新聞

Advertisement