मैं नोड.जेएस के लिए काफी नया हूं और मेरे पास ऐसे एप्लिकेशन के लिए अनुरोध है जो यूडीपी पैकेट का पेलोड प्राप्त करेगा और इसे संसाधित करेगा।एक बहुत तेज़ node.js कैसे स्थापित करें यूडीपी सर्वर
मैं प्रति सेकंड 400 से अधिक संदेशों के बारे में बात कर रहा हूं, जो 200,000 संदेश/मिनट की तरह कुछ पहुंच जाएगा।
मैंने एक यूडीपी सर्वर स्थापित करने के लिए एक कोड लिखा है (वास्तव में http://nodejs.org/api/all.html#all_udp_datagram_sockets दस्तावेज़ों से पकड़ा गया है) लेकिन यह लगभग 5% पैकेट खो रहा है।
मुझे वास्तव में विकसित करने की आवश्यकता है जो एक सर्वर है जो पैकेट प्राप्त करेगा और उसे कार्यकर्ता संदेश के साथ नौकरी भेजें। लेकिन लगता है कि node.js में थ्रेडिंग एक दुःस्वप्न है।
यह मेरा मूल है है के रूप में:
var dgram = require("dgram");
var fs = require("fs");
var stream = fs.createWriteStream("received.json",{ flags: 'w',
encoding: "utf8",
mode: 0666 });
var server = dgram.createSocket("udp4");
server.on("message", function (msg, rinfo) {
console.log("server got: " + msg + " from " +
rinfo.address + ":" + rinfo.port);
stream.write(msg);
});
server.on("listening", function() {
var address = server.address();
console.log("server listening " +
address.address + ":" + address.port);
});
server.bind(41234);
// server listening 0.0.0.0:41234
याद रखें कि टीसीपी सॉकेट के विपरीत डेटाग्राम, गारेंटेड रसीद नहीं हैं। इसके बजाए, व्यक्तिगत संदेश स्वीकार किए बिना, डेटाग्राम गति पर ध्यान केंद्रित करते हैं। – skeggse
यह ऐसी चीजें हैं जिसने मुझे गो पर स्विच किया और कभी पीछे नहीं देखा। –
@AParacha कृपया विस्तृत करें, मैं सुन रहा हूं: डी –