Ответ 1
Прочтите документы: child_process.fork
vs cluster.fork
.
Разница между
cluster.fork()
иchild_process.fork()
заключается в том, что кластер позволяет совместно использовать TCP-серверы между рабочими.cluster.fork
выполняется поверхchild_process.fork
.
http://nodejs.org/api/cluster.html
1. я могу передать аргументы cluster.fork
Не соответствует документам и:
> var cluster = require('cluster')
undefined
> cluster
{ isWorker: false,
isMaster: true,
fork: [Function],
_startWorker: [Function],
_getServer: [Function] }
> cluster.fork.length
0
(a функция length
- это число формальных параметров). Вместо этого используйте сообщение.
2. могу ли я прослушивать один и тот же порт или unixsock для создания ChildProcess by child_process.fork
Предположительно да, поскольку cluster.fork
реализуется поверх child_process.fork
. Однако есть причина, что cluster.fork
уже существует, если вы хотите прослушивать один и тот же порт.