我希望将基于 java 线程的 tcp 套接字服务器转换为基于 javascript(最好是 nodejs)的异步 tcp 套接字服务器。这是我的应用程序,现在正在学习 nodejs。认为以这种方式了解更多关于 nodejs 的信息将是一个很好的练习。
我看过 nodejs 并且会使用 net 模块。我还读到 nodejs 是基于事件的,不做基于线程的东西。
有任何想法吗?
我希望将基于 java 线程的 tcp 套接字服务器转换为基于 javascript(最好是 nodejs)的异步 tcp 套接字服务器。这是我的应用程序,现在正在学习 nodejs。认为以这种方式了解更多关于 nodejs 的信息将是一个很好的练习。
我看过 nodejs 并且会使用 net 模块。我还读到 nodejs 是基于事件的,不做基于线程的东西。
有任何想法吗?
这个问题实际上很模糊,但我会尝试回答发布我在 nodeJS 中看到的一个非常简单的 TCP 服务器的链接:
http://www.hacksparrow.com/tcp-socket-programming-in-node-js.html
你是对的,你必须设置一些事件,你必须进行数据处理等等,但这在很大程度上取决于你的服务器的用途,它将接收什么样的数据以及它是什么预计生产。
如果您就您的问题向我们提供更多详细信息,我想我们将能够更好地阐明其功能。
好的完美,所以按照你的新细节,你必须做这样的事情才能开始收听:
var server = net.createServer();
server.listen(PORT, HOST);
console.log('Server listening on ' + server.address().address +':'+server.address().port);
然后这是监听连接并处理数据:
server.on('connection', function(sock) {
console.log('CONNECTED: ' + sock.remoteAddress +':'+ sock.remotePort);
sock.on('data', function(data) {
console.log('DATA ' + sock.remoteAddress + ': ' + data);
// here you'll do all your data processing, for instance
// call some JSON webservices that will write SQL queries...
});
});