读书人

有关网络编程的有关问题

发布时间: 2013-07-04 11:45:40 作者: rapoo

有关网络编程的问题
我初学java,最近看韩顺平的网络编程,有个问题,客户端的socket用static修饰,做成静态的,也就是不管有多少客户端登录,都共享一个socket,服务器端把每个与客户端建立的连接保存在hashmap中,转发的时候再找到对应的socket,但是客户端共享一个socket,在接收服务器发来的消息时是怎么区分的呢?
[解决办法]
我是用 打电话 来理解的。

1、每个客户端有个电话号码,打给服务器 ,告诉他你要找的 另一个 或多个 电话号码。
服务器帮你找到,并把你的消息告诉其他的电话号码。

2、这个电话机 可以抽象成一个socket 电话号码类似里面的Ip+端口
服务器就是电信公司。

3、电信公司只要维护一个电话号码的集合(socket ,clientID).

4、电信公司等待客户拨过来,然后 按要求 接通被叫的客户端。

读书人网 >J2SE开发

热点推荐