返回
Netty V2022 正式版

Netty

立即下载

小编提示:PC版不适合移动端,如下载有问题点击反馈!

软件介绍

Netty是一款编程人员必备的网络应用开发框架。专业好用的网络应用开发框架Netty。它可以帮助用户开发高性能协议服务器或网络应用程序。将软件直接部署到开发平台,以配置服务通信协议模式,设置请求模式,设置I / O通信规则以及配置异步事件处理方案。用户配置TCP通信和配置服务器处理异步事件规则更加方便。 Netty具有丰富的功能,可以处理多线程请求数据,可以配置各种数据传输通信方案,并且可以快速设置服务器的数据处理功能和通信功能。帮助用户快速维护和构建NIO客户端的服务器功能,并提高服务器处理数据的整体性能。如果您需要Netty框架,可以下载此软件!

使用说明:

写一个丢弃服务器

世界上最简单的协议不是“ Hello,World!”。但是DISCARD。这是一个丢弃任何收到的数据而没有任何响应的协议。

要实现DISCARD协议,您唯一需要做的就是忽略所有接收到的数据。让我们直接从处理程序实现开始,该实现处理Netty生成的I / O事件。

Netty

1. DiscardServerHandler扩展了ChannelInboundHandlerAdapter,该适配器实现了ChannelInboundHandler。 ChannelInboundHandler提供了可以覆盖的各种事件处理程序方法。到目前为止,扩展ChannelInboundHandlerAdapter而不是自己实现处理程序接口就足够了。

参照图2,我们在channelRead()中重写事件处理程序方法。每当从客户端接收到新数据时,都会使用接收到的消息来调用方法。在此示例中,接收到的消息的类型为ByteBuf。

3.为了实现DISCARD协议,处理程序必须忽略收到的消息。 ByteBuf是一个引用计数的对象,必须通过release()方法显式释放。请记住,释放传递给处理程序的所有引用计数对象是处理程序的责任。通常,channelRead()处理程序方法实现如下:

Netty

4.调用exceptionCaught()事件处理方法,当由于I / O错误而引起Netty升高时,或者由于正在处理的事件引起的异常而由处理器实现时,可以引发异常。在大多数情况下,您应该在此处记录捕获的异常并关闭其关联的通道,尽管此方法的实现可能会有所不同,具体取决于您在处理特殊情况时要采取的措施。例如,您可能想在关闭连接之前发送带有错误代码的响应消息。

到现在为止还挺好。我们已经实现了DISCARD服务器的前半部分。现在剩下的就是编写使用main()启动服务器的DiscardServerHandler方法。

Netty

5.检查收到的数据

现在,我们已经编写了第一台服务器,我们需要测试它是否真正起作用。测试它的最简单方法是使用telnet命令。例如,您可以远程登录localhost 8080并在

命令行。

但是,我们可以说服务器工作正常吗? 我们真的不知道这是因为它是一台废弃的服务器。 您根本不会得到任何回应。 为了证明它确实有效,让我们修改服务器以打印接收到的内容。

我们已经知道channelRead()每次接收数据时都会调用此方法。 让我们将一些代码放入channelRead()方法DiscardServerHandler中:

Netty

实际上,此低效循环可以简化为:System.out.println(in.toString(io.netty.util.CharsetUtil.US_ASCII))

另外,您也可以在.release()中执行此操作。

如果再次运行telnet命令,您将看到服务器打印收到的内容。

丢弃服务器的完整源代码位于io.netty.example.discard分发包中。

软件功能:

Netty是异步事件驱动的网络应用程序框架,

用于快速开发可维护的高性能协议服务器和客户端。

Netty

Netty是一个NIO客户端服务器框架,可以快速轻松地开发网络应用程序,例如协议服务器和客户端。它极大地简化和简化了网络编程,例如TCP和UDP套接字服务器。

“快速简便”并不意味着最终的应用程序将遭受可维护性或性能问题。 Netty经过精心设计,并结合了许多协议(例如FTP,SMTP,HTTP和基于二进制和文本的各种旧式协议)的实施经验。结果,Netty成功地找到了一种无需妥协即可轻松实现开发,性能,稳定性和灵活性的方法。

设计

适用于各种传输类型的统一API-阻塞套接字和非阻塞套接字

基于灵活且可扩展的事件模型,可以清晰地将关注点分离

高度可定制的线程模型-单线程,一个或多个线程池,例如SEDA

真正的无连接数据报套接字支持(从3.1开始)

软件功能:

1.使用方便

记录良好的Javadoc,用户指南和示例

没有其他依赖关系,JDK 5(Netty 3.x)或6(Netty 4.x)就足够了

注意:某些组件(例如HTTP / 2)可能有更多要求。

2.性能

更高的吞吐量,更低的延迟

减少资源消耗

减少不必要的内存复制

3.安全

完的SSL / TLS和StartTLS支持

精品推荐
猜你喜欢
用户评论