1
WildCat 2014-07-28 16:21:40 +08:00 2
哥们,这么不注意大小写真的好吗?
|
2
yangxiongwei 2014-07-28 16:44:24 +08:00 1
哈哈,讨论Java的主题真的好少
记得本科的时候也写过类似的 用socket和rmi各自实现过一遍 btw,bin这种目录直接ignore掉会更好,不然每次修改代码class文件也跟着在变 |
3
xujialiang 2014-07-28 16:52:18 +08:00
大小写啊~~~~~~~~~~~~~
|
4
nybux 2014-07-28 17:04:55 +08:00
一个链接一个线程,这样的服务器性能不行呀
|
5
mantianyu 2014-07-28 17:11:06 +08:00 1
一看 Eclipse, 就没继续点下去
|
7
incompatible 2014-07-28 17:23:41 +08:00 2
php和python短糙快 java的开发效率毕竟没法比
楼主的代码粗略看了看,挑点小毛病,望海涵 1. ChatManager里面用了HashMap,但是HashMap不是线程安全的。建议改成ConcurrentHashmap 2. MyServer 里每过来一个请求就新启一个线程,很不经济。建议改成线程池 3. UserDaoImpl 里做完jdbc操作后,没有关闭ResultSet和Connection,这样是不对的。另外异常应该往外抛,不应该printStackTrace后直接返回 4. DaoInstance的getUserDao()方法有问题,它不是线程安全的。建议在方法上加上synchronized关键词 |
8
thinkmore OP @nybux 不是呀!所以客户端都去找服务器,服务器知识开了一个线程为其服务而已,难道我只用一个线程就可以为多个客户端服务吗?
|
9
thinkmore OP @yangxiongwei 第一次把东西放在上面,下次我注意了,thanks
|
11
incompatible 2014-07-28 17:32:04 +08:00
客户端代码中的问题:
不要在mouseClicked()或actionPerformed()中做耗时操作,这样会导致swing的event dispatcher线程阻塞,会使界面卡住 具体原理你可以参考 http://blog.itpub.net/13685345/viewspace-374940/ |
12
nybux 2014-07-28 17:33:05 +08:00
恩,如果要做到大并发,必须不能一个连接一个线程。可以参考一下epoll/iocp或者nio或者netty
|
13
sdysj 2014-07-28 17:54:46 +08:00
因为java代码不好看。。。
|
14
lu18887 2014-07-28 18:01:09 +08:00
|
15
thinkmore OP |
16
zts1993 2014-07-28 21:59:13 +08:00 via Android
哈哈哈哈
|