Netty在Spring啟動中

1. 該啟動方式無需單獨開線程啟動netty,dubbo的NettyService就是此方式
  public static void main(String[] args) {
        ServerBootstrap serverBootstrap = new ServerBootstrap();
        // boos接受新連接線程,主要負責創(chuàng)建新連接(從dubbo copy 過來)
        NioEventLoopGroup boos = new NioEventLoopGroup(1,
                new DefaultThreadFactory("NettyServerBoss", true));
        // worker負責讀取數(shù)據(jù)的線程,主要用于讀取數(shù)據(jù)以及業(yè)務邏輯處理(從dubbo copy 過來)
        NioEventLoopGroup worker = new NioEventLoopGroup(10,
                new DefaultThreadFactory("NettyServerWorker", true));
        try {
            serverBootstrap
                    .group(boos, worker)
                    .channel(NioServerSocketChannel.class)
                    .childHandler(new SimpleServiceChannelInitializer());

            ChannelFuture channelFuture = serverBootstrap.bind(10086);
            channelFuture.syncUninterruptibly();
            channelFuture.channel();
          //該啟動方式為了阻塞主線程
            Thread.sleep(200000);
        } catch (Exception e) {

        } finally {
            boos.shutdownGracefully();
            worker.shutdownGracefully();
        }

    }
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容