2012-11-05 118 views
1

服务器是多线程的,而不是为每个请求创建一个套接字连接,我想维护一个套接字连接池?如果一个客户端已经完成了它的工作,那么我想要恢复连接并用于另一个客户端,有人可以向我解释如何执行socket连接池吗?套接字连接池

+1

插座不能这样工作;你不能在不同的客户端之间共享套接字连接。 – dnault

+1

你是指每个客户的线程?这就是你应该问的 – thedayofcondor

+0

@thedayofcondor ..感谢您的评论! 其实我必须开发一个客户端Socket,它连接到远程的服务器套接字,服务器套接字有一个Login命令来访问和听取信息来维持会话,现在我的问题实际上就是,我必须去的 1)connect to socket - >登录 - >处理我的命令 - >注销 - >客户端套接字关闭。 2)一直到我的应用程序连接到服务器 - >登录 - >维护会话使用心跳 - >处理命令,每当请求来,直到我的应用程序运行 –

回答

0

我不知道你的努力来建立,但如果它的TCP服务器应该比你看看两者之一:

  • 灰熊

    • Netty的
    • 米娜

    上面的大部分处理线程池和长期连接为你(我不知道你是什么意思的套接字池)。我强烈建议你不要重新实施车轮,直到你看到一些好车轮;)。

  • +0

    感谢您的评论!其实我必须开发一个客户端套接字连接到远程服务器套接字,服务器套接字有一个登录命令来访问和听取维护会话,现在我的问题实际上是,我必须去的1)连接到套接字 - >登录 - >处理我的命令 - >注销 - >客户端套接字关闭。 2)一生一次,直到我的应用程序连接到服务器 - >登录 - >维护会话使用心跳 - >处理命令,每当请求来到,直到我的应用程序运行 –

    0

    这个问题没有意义。入站连接通过accept()函数向您发送作为新套接字。你没有任何机会将它们集中起来。

    0

    这完全取决于客户端以及它是如何编码的。客户端应该打开一个套接字,并通过该套接字推送多个事务。从服务器执行此操作的功能并不多,也不认为这是一个很好的尝试。

    Registers Yusuf