2016-09-16 66 views
1

縮放DYNOS使用heroku CLI有可能擴展DYNOS像這樣:的Heroku:從節點應用

$ heroku ps:scale web=1 

但我希望能夠到我的節點應用內規模從DYNOS(上運行heroku,所以我不能只用exec上面的命令,因爲CLI不可用),例如動態響應負載的變化。

我對heroku client包非常熟悉,但無法看到它如何用於動態範圍縮放。

回答

2

那麼好奇了我的好,我似乎已經制定了一個答案,以我自己的問題......

的關鍵是使用Heroku API,這是在節點的應用程序使用heroku-client訪問在我的問題中提到的包。

Heroku API有一個Formation Update接口,它允許您設置網絡dynos的規模(或數量)。

下面的示例縮放網頁測功機,以2:

var Heroku = require('heroku-client'); 
var heroku = new Heroku({ token: process.env.HEROKU_API_TOKEN }); 

heroku.patch('/apps/yourappname/formation/web', { body: {"quantity": 2} }).then(response => { 
    console.log('patch response: ' + JSON.stringify(response)); 
}); 

...其中yourappname當然是應用程序的名稱。