我打开一个TCP连接,这是很容易做到的服务器开放的,但我需要一种方法来保持这种插座开放,而不必一次次给net.createConnection(port, host)
。保持TCP套接字的node.js
我试图实现是上面提到的,它接受多个连接通道,然后通过一个插座请求一个套接字服务器。然后我需要将响应传递给正确的套接字。但是,我遇到的唯一问题是维护一个打开的套接字,我试图在侦听服务器代码之外创建。
我受够了Singleton模式,以创建套接字走近它..
var Singleton = (function() {
var socket = null;
function connectToHost(port, host) {
socket = net.createConnection(port, host);
return socket;
}
return {
connectToHost: connectToHost
};
})();
但是,从我所看到的,在事件(“结束”),该插座不再是可写的。如果我重新连接插座。
socket.on('end', function() {
socket = Singleton.connectToHost(port, host);
});
Event('end')会发生同样的事情。
我怎样才能接近,这样我可以创建和维护一个套接字连接?
我不明白你在问什么。套接字是点对点连接。每个连接必须有一个,并且数据不会混合。 –
是的,这是正确的,但我想要做的是有多个套接字连接到服务器,然后我需要从每个套接字通道请求到另一个服务(但在这里,我只能有一个套接字打开)。当我得到服务的响应时,我需要将其返回到正确的套接字。这是我需要将响应映射到正确的套接字的地方! – vitez
所以我列出了连接到我的服务的任何套接字,但我需要将每个请求传递给一个套接字连接,我需要使用另一个服务器打开它。这是我遇到的问题,保持与服务器的一个连接打开。传入流量不成问题。 让我知道,如果你需要更多的信息。 感谢您的关注。 – vitez