黑马程序员技术交流社区

标题: 网络编程 [打印本页]

作者: 陈莹    时间: 2012-11-13 21:55
标题: 网络编程
本帖最后由 陈莹 于 2012-11-15 22:44 编辑

客户端访问服务器,采用多线程的方式。服务器对于客户端的处理有两种方式:
1、当一个客户端请求连接服务器时,服务器就获取一个套接字,并且保留这个套接字,之后客户端和服务器的通信就都通过这个套接字来进行。
2、当一个客户端请求连接服务器时,服务器就获取一个套接字,但是不保留这个套接字,之后客户端每一次和服务器进行通信,都创建一个新的套接字。
请问这两种方式那种比较好啊?
目前使用最多的是哪种呢?
作者: 一身顺利    时间: 2012-11-14 11:23
感觉各有各的特点吧。
第一个保留了这个Socket,感觉当下次连接的时候是否要快些呢?
第二个没有保留,每次都新建一个,用完就没了,对于资料消耗较少吧。
其实还是要根据实际情况来看的,看服务器端的访问量。
作者: 陈军    时间: 2012-11-14 12:41
我的理解是:
一般来说,大项目常用第一种,服务器一般访问量比较大。 有可能产生阻塞。 所以还要经常用集合来存储。
客户端的某些信息。以便随时定位取出处理。 处理完成之后才移除。

当然一些我们练习的小项目,就没有必要用第一种,而采取第2种。

记住一点就好: 具体的应用其实还得根据需求而定。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2