node.js селен chrome один экземпляр без головы запускает несколько процессов 'chrome' - PullRequest
0 голосов
/ 17 марта 2020

Среда Ubuntu 18.x Сервер, работающий node.js с селеном и chrome.

Почему этот базовый код c с одним веб-драйвером и одним экземпляром chrome без заголовка создает в общей сложности 7 процессов 'chrome' (только один процесс chromedriver)

5 из этих процессов 'chrome' используют от 40 до 70 МБ ОЗУ каждый, при этом ничего не делая при запуске. и два процесса * chrome используют 10 МБ ОЗУ.

var express = require('express');
var app = express();
var myLib = require('../MyCommonLibraries/myLibrary.js');

var webdriver = require('selenium-webdriver'),
chrome    = require('selenium-webdriver/chrome'),
By = webdriver.By,
until = webdriver.until;

var driver = new webdriver.Builder()
.forBrowser('chrome')
.setChromeOptions(new chrome.Options().addArguments('--headless'))
.build();


var appPort = 12791;






var httpServer = app.listen(appPort, function(){

   let appStartTime = myLib.getDateTimeInET();
   console.log( "         -------------  " + appStartTime + " -------------------");
   console.log( '                 Server listening on port ' + appPort +  "\n\n");

});

Могу ли я что-нибудь сделать, чтобы ограничить число выполняемых процессов?

1 Ответ

0 голосов
/ 17 марта 2020

Nevermind. Для chrome это нормальное поведение - открывать отдельные процессы вместо одного ресурсоемкого процесса.

Я сталкивался с несколькими ссылками на это.

https://www.howtogeek.com/124218/why-does-chrome-have-so-many-open-processes/

https://superuser.com/questions/461552/why-are-there-multiple-chrome-instances-running-even-though-i-only-have-one-wind

...