2016-05-16 24 views
0

我正在使用一個將使用微服務架構的項目,我正在使用App Engine,我的項目的每項服務都作爲App Engine中的一項服務進行部署,App Engine中的每項服務都使用一臺或多臺VM Machine。可以與App Engine中的多個服務共享虛擬機或虛擬機組?

我使用App Engine Flexible Environment因爲我用nodejsPython 3.4

https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml

我知道我可以使用如下設置的app.yaml

automatic_scaling: 
    min_num_instances: 1 
    max_num_instances: 10 
    cool_down_period_sec: 120 # default value 
    cpu_utilization: 
    target_utilization: 0.5 

resources: 
    cpu: .1 
    memory_gb: 0.18 
    disk_size_gb: 10 
限制實例的數量爲每個服務

我知道有Standard Environment我們有一些免費配額,將收取t他的應用消耗超過免費配額,這是非常有用的,這是我所需要的,但我不能在該環境下使用NodejsPython3.4

我可以設置應用程序將使用哪個VM或VM組?我的目標是儘量節省有關實例的資金,因爲我們可能會提供多項服務,但一開始可能會很貴!

回答

0

目前不可能。即使每個應用程序都在一個容器中運行,它也會使用單獨的虛擬機(這種情況沒有任何意義)。您甚至無法將相同應用程序的容器定義爲在特定的VM或特定的一組VM上運行。

我相信這會在未來發生變化,但根據記錄可能需要1 - 2年或甚至更多,所以不要屏住呼吸。

我假設您已經意識到靈活/託管的VM環境至少需要一個實例始終開啓,並且它沒有被免費配額覆蓋。

值得注意的是,Amazon Beanstalk allows你在單個實例上運行多個容器。

+0

Azure App Service還允許每個計劃有多個應用程序(在計劃級別控制縮放和計費)。 –