看了之后感觉nio的优势是服务端,避免线程多,单个线程经常空闲,造成服务器资源的浪费,但是,客户端的话,好像没啥了。 我现在有种需求是 我这边客户端访问多个服务端读取数据并发到别的地方(相当于中转),每读一个服务端就建立一个新的线程,现在用的是java的socket,不知道用nio会有什么优势,或者是有什么思路可以减少我这边的性能开支。
感觉你这里的需求并不需要频繁的创建连接,而服务端通常又不会很多,那么连接数其实也不多,所以我觉得你的客户端应该是可以做连接缓存吧?每次需要读数据就缓存拿连接然后操作,连接数不多,而且也不频繁创建,我觉得性能不应该差。
######注册到selector管理呀######每读一个服务端就建立一个新的线程 ---------> 这个可以用线程池来管理。客户端用nio的意义不是太大。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。