FireNioProject
FireNio是基于javaio开发的一款可快速构建网络通讯项目的异步IO框架,其以简单易用的API和优良的性能深受开发者喜爱。
项目特色支持协议扩展,已知的扩展协议有:LegthValue协议,支持传输文本数据HTTP1.1协议(lite),示例: https://www.fireio.com/WebSocket协议,示例: https://www.fireio.com/web-socket/chat/idex.htmlProtobase(自定义协议),支持传输文本或二进制数据轻松实现断线重连(轻松实现心跳机制)支持SSL(jdkssl,opessl)压力测试tfbbechmark快速入门Mave引用:<depedecy><groupId>com.fireio</groupId><artifactId>fireio-all</artifactId><versio>1.2.1</versio></depedecy>SimpleServer:publicstaticvoidmai(Strig[]args)throwsExceptio{IoEvetHadleevetHadleAdaptor=ewIoEvetHadle(){@Overridepublicvoidaccept(Chaelch,Framef)throwsExceptio{Strigtext=f.getStrigCotet();f.setCotet(ch.allocate());f.write("yesserveralreadyacceptyourmessage:",ch);f.write(text,ch);ch.writeAdFlush(f);}};ChaelAcceptorcotext=ewChaelAcceptor(8300);cotext.addChaelEvetListeer(ewLoggerChaelOpeListeer());cotext.setIoEvetHadle(evetHadleAdaptor);cotext.addProtocolCodec(ewLegthValueCodec());cotext.bid();}SimpleCliet:publicstaticvoidmai(Strig[]args)throwsExceptio{ChaelCoectorcotext=ewChaelCoector("127.0.0.1",8300);IoEvetHadleevetHadle=ewIoEvetHadle(){@Overridepublicvoidaccept(Chaelch,Framef)throwsExceptio{System.out.pritl();System.out.pritl("____________________"+f.getStrigCotet());System.out.pritl();cotext.close();}};cotext.setIoEvetHadle(evetHadle);cotext.addChaelEvetListeer(ewLoggerChaelOpeListeer());cotext.addProtocolCodec(ewLegthValueCodec());Chaelch=cotext.coect(3000);LegthValueFrameframe=ewLegthValueFrame();frame.setStrig("helloserver!");ch.writeAdFlush(frame);}更多样例详见{fireio-test}演示及用例HTTPDemo:https://www.fireio.com/idex.htmlWebSocket聊天室Demo:https://www.fireio.com/web-socket/chat/idex.html(后端基于fireio,前端基于:https://github.com/socketio/socket.io/ )WebSocket小蝌蚪Demo:https://www.fireio.com/web-socket/rumpetroll/idex.html(后端基于fireio,前端基于:https://github.com/daielmahal/Rumpetroll )LiceseFireNioisreleaseduderthe ApacheLicese2.0.










评论