netty http重连机制吗
作者&投稿:侯忠 (若有异议请与网页底部的电邮联系)
netty本身实现的长连接,就是一个连接一个worker。worker的数量是有限的(通常是cpu cores+1),所以你的服务器要是连接数多的话,得考虑使用“异步”Request(netty的http没实现这么个功能),或者说“Continuation”,当连接“无事可做”的时候,放弃线程的使用权,当要处理事务的时候,才重新拿到一个线程。
当然,如果你只想实现长连接而不在意request 一直占有worker,那么你只要不放弃连接就可以了(websocket本身也是一种长连接,netty里面有websocket的例子)。
netty本身实现的长连接,就是一个连接一个worker。worker的数量是有限的(通常是cpu cores+1),所以你的服务器要是连接数多的话,得考虑使用“异步”Request(netty的http没实现这么个功能),或者说“Continuation”,当连接“无事可做”的时候,放弃线程的使用权,当要处理事务的时候,才重新拿到一个线程。 当然,如果你只想实现长连接而不在意request 一直占有worker,那么你只要不放弃连接就可以了(websocket本身也是一种长连接,netty里面有websocket的例子)。
netty本身实现的长连接,就是一个连接一个worker。worker的数量是有限的(通常是cpu cores+1),所以你的服务器要是连接数多的话,得考虑使用“异步”Request(netty的http没实现这么个功能),或者说“Continuation”,当连接“无事可做”的时候,放...栋桦阿奇: 这个要分情况了. 如果是UDP的话,就不存在连接不连接的问题了.因为这个是面向无连接的,直接发送数据即可. 如果是TCP的话,就需要连接了.你应该这么办: 首先每隔一段时间查看是否与服务器断开了,或者根据你具体的要求来查看是否断开. 第...
蛟河市17227198128: 怎么使用netty写一个http长连接服务器 - ?
栋桦阿奇: netty本身实现的长连接,就是一个连接一个worker.worker的数量是有限的(通常是cpu cores+1),所以你的服务器要是连接数多的话,得考虑使用“异步”Request(netty的http没实现这么个功能),或者说“Continuation”,当连接“无事可做”的时候,放弃线程的使用权,当要处理事务的时候,才重新拿到一个线程.当然,如果你只想实现长连接而不在意request 一直占有worker,那么你只要不放弃连接就可以了(websocket本身也是一种长连接,netty里面有websocket的例子).
蛟河市17227198128: netty为什么不能将同一个bytebuf发送多次 - ?
栋桦阿奇: 这个机制并不是netty独有的,它是java的bytebuffer决定的.因为同一个byte数据,你write之后,底层会对这个bytebuffer执行数据拷贝,即读取这个bytebuffer中的数据,bytebuffer中有一个position的标记,你发送之后,它就会把position标记到bytebuffer的最后,你再次发送时,已读取的数据是不会再读取了,相当于你的bytebuffer中已经没有数据了.如果你想要多次发送,需要修改一下:for(int i = 0;i b.markReaderIndex(); ctx.write(b); b.resetReaderIndex(); }
蛟河市17227198128: 为什么选择Netty作为基础通信框架 - ?
栋桦阿奇: 一、什么是Netty Netty是一个高性能 事件驱动、异步非堵塞的IO(NIO)Java开源框架,Jboss提供,用于建立TCP等底层的连接,基于Netty可以建立高性能的Http服务器,快速开发高性能、高可靠性的网络服务器和客户端程序.支持HTTP、 ...
蛟河市17227198128: netty httpclient和httpclient的区别 - ?
栋桦阿奇: netty是nio服务端客户端框架.可以快速简单的开发网络程序.netty httpclient底层基于netty对httpclient进行的实现.httpclient你可能指的是apache的httpclient组件.2种实际上是实现的同一种工具,只是实现方式不一样.可以理解为宝马和奥迪都是汽车,可以驾驶,但是是不同厂商使用不同工艺和技术制造出来的.
蛟河市17227198128: 有没有NETTY接收文件的例子 - ?
栋桦阿奇: Netty中封装了对Http chunked协议的支持,使用方式如下:1 write一个response,且设置chunked参数,告知客户端将返回chunked类型数据;2 开始写chunk数据;3 按照chunk协议标准返回chunk数据结束标记;4 关闭channel连接.具体代码如...
蛟河市17227198128: netty 短连接 有没有办法实现session类的 - ?
栋桦阿奇: 长连接就是建立TCP连接后,一直保持这个连接,一般会中间彼此发送心跳来确认对应的存在,中间会做多次业务数据传输,一般不会主动断开连接. 短连接一般指建立连接后,做一些操作 如:http请求,然后就关掉这个连接.所以就做短连接.
蛟河市17227198128: netty可以做什么 - ?
栋桦阿奇: netty是做为网络通信的框架,它可以做服务器端,也可以做客户端.应用的场景也很多,比如游戏服务器开发,rpc框架开发,http服务器,消息中间件开发等等.
蛟河市17227198128: netty能同时支持http和https吗 - ?
栋桦阿奇: 首先你的去ca机构申请一张合法的ssl证书,然后安装下面的教程配置即可.http://www.wosign.com/docdownload/index.htm
蛟河市17227198128: java web既然已经有了tomcat为什么还要使用netty - ?
栋桦阿奇: 但是nio直接使用比较难用,所以有了mina,netty这些针对网络io部分(tcp/udp-传输层)的封装(nio也有非网络io部分),为了使nio更易用. http是应用层的协议. servlet3.0则是另外一种东西,不是对协议的封装,javaee6众多规范中的一个,...