@Override
    public void stop() {
        if (!started.compareAndSet(true, false)) {
            return;
        }
        if (timerRefCnt.decrementAndGet() == 0) {
            timerObj.stop();
        }
        this.bootstrap.config().group().shutdownGracefully();
        this.maintThread.shutDown();
        long startTime = System.currentTimeMillis();
        if (!this.reqTimeouts.isEmpty()) {
            notifyInflightMsgClosed();
        }
        this.activeNodes.clear();
        logger.info("ClientMgr({}) stopped, release cost {} ms!",
                senderId, System.currentTimeMillis() - startTime);
    }
Build up the connection between the server and client.
inlong-sdk/dataproxy-sdk/src/main/java/org/apache/inlong/sdk/dataproxy/network/tcp/TcpClientMgr.java