public void start()

in impl/src/main/java/org/apache/rocketmq/remoting/impl/netty/NettyRemotingServer.java [94:118]


    public void start() {
        super.start();

        this.serverBootstrap.group(this.bossGroup, this.ioGroup).
            channel(socketChannelClass).childHandler(new ChannelInitializer<SocketChannel>() {
            @Override
            public void initChannel(SocketChannel ch) throws Exception {
                ChannelPipeline cp = ch.pipeline();

                cp.addLast(workerGroup,
                    new Encoder(),
                    new Decoder(),
                    new IdleStateHandler(serverConfig.getConnectionChannelReaderIdleSeconds(),
                        serverConfig.getConnectionChannelWriterIdleSeconds(),
                        serverConfig.getConnectionChannelIdleSeconds()),
                    new ServerConnectionHandler(),
                    new RemotingCommandDispatcher());
            }
        });

        applyOptions(serverBootstrap);

        ChannelFuture channelFuture = this.serverBootstrap.bind(this.serverConfig.getServerListenPort()).syncUninterruptibly();
        this.port = ((InetSocketAddress) channelFuture.channel().localAddress()).getPort();
    }