netty
百度百科上netty的介绍
Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。
也就是说,Netty 是一个基于NIO的客户、服务器端编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户、服务端应用。Netty相当于简化和流线化了网络应用的编程开发过程,例如:基于TCP和UDP的socket服务开发。
“快速”和“简单”并不用产生维护性或性能上的问题。Netty 是一个吸收了多种协议(包括FTP、SMTP、HTTP等各种二进制文本协议)的实现经验,并经过相当精心设计的项目。最终,Netty 成功的找到了一种方式,在保证易于开发的同时还保证了其应用的性能,稳定性和伸缩性。 [1]
Netty的组件
1 |
|
回到我正在弄得项目,查看与客户端(即安卓端)进行交互的主要代码中向客户端发送消息的主要代码
//发送消息
public synchronized void sendmsg(ChannelHandlerContext ctx,String msg){
//System.out.println("发送:"+msg);
try {
if (new VVersion().pwdPloy.equals("1")){
msg=DesUtil.encrypt(msg,DesUtil.keyStatic);
}
byte[] req;
if(checkMsgFlag){
req = getSendMsgNew(msg,versionCode);
}else{
req = msg.getBytes("UTF-8");
}
//System.out.println(new String(req));
ByteBuf pingMessage = Unpooled.buffer();
//ByteBuf pingMessage=PooledByteBufAllocator.DEFAULT.directBuffer(1024);
pingMessage.writeBytes(req);
ctx.writeAndFlush(pingMessage);
//pingMessage.release();
} catch (Exception e) {
e.printStackTrace();
}
}
其中主要是使用netty的接口ChannelHandlerContext用此接口的writeAndFlush()进行消息发送
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!