Ich versuche folgende Knoten js Anwendung auszuführen als https://github.com/joyent/node/issues/2194 erwähntKnoten js 0.10.7: Cluster-Unterstützung für udp dgram?
var util = require("util"),
dgram = require("dgram"),
cluster = require('cluster');
var udp = dgram.createSocket("udp4");
var port = 1190;
if (cluster.isMaster) {
for (i = 0; i < 2; i++) {
cluster.fork();
}
} else {
util.log("starting udp server on port " + port);
udp.on("error", function (error) {
util.log("failed to bind to UDP port - " + error)
});
udp.bind(port);
}
Die App verlässt sofort mit der folgenden Ausgabe:
23 May 23:22:13 - starting udp server on port 1190
23 May 23:22:13 - starting udp server on port 1190
events.js:72
throw er; // Unhandled 'error' event
^
Error: write ENOTSUP - cannot write to IPC channel.
at errnoException (child_process.js:980:11)
at ChildProcess.target.send (child_process.js:455:16)
at Worker.send (cluster.js:401:21)
at sendInternalMessage (cluster.js:394:10)
at handleResponse (cluster.js:177:5)
at respond (cluster.js:192:5)
at Object.messageHandler.queryServer (cluster.js:242:5)
at handleMessage (cluster.js:197:32)
at ChildProcess.EventEmitter.emit (events.js:117:20)
at handleMessage (child_process.js:318:10)
Wer weiß, was los ist? Wenn dies ohne Cluster ausgeführt wird, ist alles in Ordnung. Es scheint, dass Cluster UDP nicht unterstützt?
Einige Spezifikationen:
Window 7 x64
node js 0.10.7
Ich lief in einem genau das gleiche Problem (war ein 'socket.send (...)' auf einem Udp-Socket tun), funktioniert gut ohne die Cluster-Umgebung. Hast du etwas Neues zu diesem Thema? – zaphod1984
scheint es, dass es gut auf Linux funktioniert, aber nicht auf Windows. – zaphod1984
https://gist.github.com/zaphod1984/5668274 – zaphod1984