前言
Netty是什么,简而言之,Netty就是一个高性能、事件驱动的异步的非堵塞的IO(NIO)框架,本是JBoss做的一个Jar包,用于快速开发高性能、高可靠性的网络服务器和客户端程序,通俗来讲,就是一个处理Socket的工具。更多讨论详见知乎https://www.zhihu.com/question/24322387。接下来我们从简单的入门程序开始了解一下Netty。
服务端
package com.server;
import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.Channel;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.nio.NioServerSocketChannel;
import io.netty.handler.codec.string.StringDecoder;
import io.netty.handler.codec.string.StringEncoder;
/**
* netty5服务端
* @author -师德帅-
*
*/
public class Server {
public static void main(String[] args) {
//服务类
ServerBootstrap bootstrap = new ServerBootstrap();
//boss和worker,两个线程池
EventLoopGroup boss = new NioEventLoopGroup();
EventLoopGroup worker = new NioEventLoopGroup();
try {
//设置线程池
bootstrap.group(boss