V8
Этот модуль предоставляет события и интерфейсы, специфичные для версии V8, скомпилированной с Node.js. Эти интерфейсы могут быть изменены в исходном коде и поэтому не попадают под индекс стабильности.
getHeapStatistics()
Возвращает объект со следующими свойствами
{
total_heap_size: 7326976,
total_heap_size_executable: 4194304,
total_physical_size: 7326976,
total_available_size: 1152656,
used_heap_size: 3476208,
heap_size_limit: 1535115264
}
getHeapSpaceStatistics()
Возвращает статистику о пространствах кучи V8, то есть сегментах, составляющих кучу V8. Порядок пространств кучи или доступность пространства кучи не гарантируются, так как статистика предоставляется через функцию V8 GetHeapSpaceStatistics.
Пример результата:
[
{
"space_name": "new_space",
"space_size": 2063872,
"space_used_size": 951112,
"space_available_size": 80824,
"physical_space_size": 2063872
},
{
"space_name": "old_space",
"space_size": 3090560,
"space_used_size": 2493792,
"space_available_size": 0,
"physical_space_size": 3090560
},
{
"space_name": "code_space",
"space_size": 1260160,
"space_used_size": 644256,
"space_available_size": 960,
"physical_space_size": 1260160
},
{
"space_name": "map_space",
"space_size": 1094160,
"space_used_size": 201608,
"space_available_size": 0,
"physical_space_size": 1094160
},
{
"space_name": "large_object_space",
"space_size": 0,
"space_used_size": 0,
"space_available_size": 1490980608,
"physical_space_size": 0
}
]
setFlagsFromString(string)
Устанавливает дополнительные флаги командной строки V8. Используйте с осторожностью; изменение настроек после запуска виртуальной машины может привести к непредсказуемому поведению, включая сбои и потерю данных. Или же это может просто ничего не сделать.
Доступные для версии Node.js параметры V8 можно определить, выполнив node --v8-options. Неофициальный, поддерживаемый сообществом список параметров и их эффектов доступен здесь.
Использование:
// Print GC events to stdout for one minute.
const v8 = require('v8');
v8.setFlagsFromString('--trace_gc');
setTimeout(function() { v8.setFlagsFromString('--notrace_gc'); }, 60e3);
© Joyent, Inc. and other Node contributors
Licensed under the MIT License.
Node.js is a trademark of Joyent, Inc. and is used with its permission.
We are not endorsed by or affiliated with Joyent.
https://nodejs.org/dist/latest-v4.x/docs/api/v8.html