Tag: tcp

Nodejs随机免费的TCP端口

每次我的类的新实例被实例化时,我的项目都需要设置一个新的端口。 在Node.js中,我怎么能find一个免费的TCP端口设置在我的新套接字服务器? 或者检查我指定的端口是否已被使用。

http.createserver与node.js中的net.createserver

我无法理解node.js中的net.createserver和http.createserver之间的区别。 我已阅读位于这两个urlhttps://nodejs.org/api/net.html#/net_net,https://nodejs.org/api/http.html#/http_class_http_server上的两种方法的文档。 据我所知,http.createserver创build一个http服务器,但文档说net.createserver创build一个tcp服务器。 我知道tcp是http的传输协议,并且http服务器设置为读取http请求标头。 我也很了解node.js中甚至发射器的概念。 不过,我不明白这个tcp服务器的概念,为什么会在node.js。 上下文是我正在编写“node.js in action”一书中的聊天应用程序示例。 谢谢你的帮助

无法使用Node连接到iOS模拟器中的Mobile Safari

我试图在远程debugging(使用Node)时模拟Safari和Mobile Safari之间的消息交换。 我嗅了两人之间的交通。 他们正在通过TCP交换二进制plists。 我已经设法复制数据包,直到select一个特定的选项卡进行debugging(“套接字设置”),但在这之后,Mobile Safari忽略了我的plist指令,而是发回了一个列表。 以下是Safari发送的套接字设置数据包的原始tcpdump,以及它包含的plist的JSON表示: 10:36:42.318662 IP6 localhost.58028 > localhost.27753: Flags [P.], seq 1601:1930, ack 803, win 9125, options [nop,nop,TS val 69074378 ecr 69074378], length 329 0x0000: 6000 0000 0169 0640 0000 0000 0000 0000 `….i.@…….. 0x0010: 0000 0000 0000 0001 0000 0000 0000 0000 ……………. 0x0020: 0000 0000 0000 0001 e2ac 6c69 […]

集群模块如何在Node.js中工作?

有人可以详细解释核心集群模块在Node.js中的工作原理吗? 工作人员如何能够听一个单一的港口? 据我所知,主进程进行监听,但是由于在主进程之后启动了工作进程,因此如何知道要监听哪个端口? 他们是否通过使用child_process.fork沟通渠道以某种方式与主人沟通? 如果是这样,到端口的传入连接是如何从主机传递给工作人员的? 此外,我想知道什么逻辑是用来确定传入连接传递给哪个工作者? 谢谢。

使用TCP负载均衡器代理W​​ebSockets而不需要粘性会话

我想使用Amazon Elastic Load Balancer将WebSocket连接代理到多个node.js服务器。 由于Amazon ELB不提供实际的WebSocket支持,我需要使用它的香草TCP消息传递。 不过,我试图了解这将如何工作没有某种粘滞会话function。 据我所知,WebSockets的工作原理是首先从客户端发送HTTP升级请求,由服务器通过发送正确处理密钥authentication的响应来处理。 服务器发送该响应并被客户端批准后,该客户端与服务器之间就存在双向连接。 然而,假设客户端在批准服务器响应之后将数据发送到服务器。 如果将数据发送到负载平衡器,然后负载平衡器将该数据中继到不处理原始WebSocket升级请求的其他服务器,那么这个新的服务器将如何知道WebSocket连接? 或者,客户端是否会自动绕过负载平衡器,并直接将数据发送到处理初始升级的服务器?