Topic: 高手请进:即时通讯中遇到的线程及网络连接问题 |
Print this page |
1.高手请进:即时通讯中遇到的线程及网络连接问题 | Copy to clipboard |
Posted by: redsnow Posted on: 2006-08-10 13:35 1.通讯中,做的一个线程对应一个Socket连接,这样当连接过3000时线程就超过了3000。这样就很不稳定,有什么好的解决办法? 2.因为上边的原因,我想过通讯完马上断开连接,然后使用线程池去优化,但是这样一来,就会出来下面的问题: U1向U2发消息,两用户均是内网用户,如果两用户不能建立p2p连接,消息将不能通过服务器中转,因为Server和U2的连接已经断开了,Server无法主动向U2发起连接。 3.关于Java中点对点连接,请问谁能提供一些资料,或者代码 |
2.Re:高手请进:即时通讯中遇到的线程及网络连接问题 [Re: redsnow] | Copy to clipboard |
Posted by: redsnow Posted on: 2006-08-10 14:40 是不是问题太菜?怎么没人回答…… 救命啊……项目急需 |
3.Re:高手请进:即时通讯中遇到的线程及网络连接问题 [Re: redsnow] | Copy to clipboard |
Posted by: ranchgirl Posted on: 2006-08-13 06:18 If people are not familiar with the topic, they usually will not spend hours to research your problem and give you answers. The best thingd you can do: 1) Do google search 2) Read books 3) Ask the question on a higher level forum, you might have better chance to get your solution. I suggest you ask it at here in English: http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=forum&f=8 http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=forum&f=27 |
4.Re:高手请进:即时通讯中遇到的线程及网络连接问题 [Re: redsnow] | Copy to clipboard |
Posted by: redsnow Posted on: 2006-08-15 10:35 Thanks UDPSocket+nio+ThreadPool is best way |
5.Re:高手请进:即时通讯中遇到的线程及网络连接问题 [Re: redsnow] | Copy to clipboard |
Posted by: jackchengen Posted on: 2006-09-16 14:43 可以试试SEDA |
6.Re:高手请进:即时通讯中遇到的线程及网络连接问题 [Re: redsnow] | Copy to clipboard |
Posted by: yuyang98 Posted on: 2006-11-13 15:18 实际上不用维持那么多个线程,而是应该维持一个Socket列表,当收到信息时才去查询相关的socket,并发送相关信息。 |
7.Re:高手请进:即时通讯中遇到的线程及网络连接问题 [Re: redsnow] | Copy to clipboard |
Posted by: stonefeng Posted on: 2006-12-11 22:03 可以这样解决: 每个客户端连接服务器时,自身也打开一个端口监听(固定或随机均可),同时服务器端记录下该客户端地址和端口,然后就可以断开了。当U1与U2断开,需要服务器转发信息时,服务器就可以找到U2了。而且,这样的话,服务器也不用维持那么多线程了。 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |