2016-08-30 3 views
0

Я настраиваю свой бэкэнд, который является приложением NodeJS, находящимся внутри контейнера докеров.Масштабирование экземпляров узла внутри контейнеров Docker

Перед тем, как приложение app.js проверит виртуальную машину, на которой оно было запущено, и выделите число экземпляров x для количества доступных ядер.

Теперь, когда он запускается внутри контейнера докеров, должен ли я оставить код в нем или каким-то образом доклер каким-то образом справится с этим, и будет ли приложение узла иметь возможность видеть количество доступных ему ядер?

Вот код, который я работал с

#!/usr/bin/env node 
var debug = require('debug')('node-exampleapp'); 

var cluster = require('cluster') 

if (cluster.isMaster) { 
    // Count the machine's CPUs 
    var cpuCount = require('os').cpus().length; 
    // Create a worker for each CPU 
    for (var i = 0; i < cpuCount; i += 1) { 
     cluster.fork(); 
     console.log('Worker ' + i + 'created'); 
} 

    // Listen for dying workers 
    cluster.on('exit', function() { 
    cluster.fork(); 
}); 

} else { 
    var app = require('../app'); 
    app.set('port', process.env.PORT || 3000); 
    var server = app.listen(app.get('port'), function() { 
    debug('Express server listening on port ' + server.address().port); 
}); 

} 

ответ

0

Оставьте код. До сих пор, как ваше приложение может сказать, он по-прежнему работает на хост-машине, и он может видеть аппаратные возможности этой машины ,

Смежные вопросы