@Override
    public boolean start(ProcessResult procResult) {
        // build http client
        if (!HttpUtils.constructHttpClient(httpConfig.isRptDataByHttps(),
                httpConfig.getHttpSocketTimeoutMs(), httpConfig.getHttpConTimeoutMs(),
                httpConfig.getTlsVersion(), procResult)) {
            return false;
        }
        this.httpClient = (CloseableHttpClient) procResult.getRetData();
        // build async report workers
        for (int i = 0; i < httpConfig.getHttpAsyncRptWorkerNum(); i++) {
            workerServices.execute(new HttpAsyncReportWorker(i));
        }
        logger.info("ClientMgr({}) started!", this.sender.getSenderId());
        return procResult.setSuccess();
    }
HTTP Client Manager class

Used to manage HTTP clients, including periodically selecting proxy nodes,
 finding available nodes when reporting messages, maintaining inflight message
 sending status, finding responses to corresponding requests, etc.
inlong-sdk/dataproxy-sdk/src/main/java/org/apache/inlong/sdk/dataproxy/network/http/HttpClientMgr.java