flink使用hikariCP数据库连接池,导致连接泄露

1、flink使用hikariCP数据库连接池

java 复制代码
    private static volatile HikariDataSource dataSource; 
    private static final Object SOURCE_LOCK = new Object(); 
    private DataSource() { 
    }

    private static HikariDataSource getDataSource(StartupParams startupParams) {
        if (dataSource== null || dataSource.isClosed()) {
            synchronized (SOURCE_LOCK) {
                if (dataSource== null || dataSource.isClosed()) {
                    HikariConfig config = new HikariConfig();
                    try {
                        config.setJdbcUrl("XXX");
                        config.setUsername("XXX");
                        config.setPassword("XXX");
                        config.setMaximumPoolSize(20);
                        config.setMinimumIdle(10);
                        config.setConnectionTimeout(30000); 
                    } catch (Exception e) {
                        log.error("初始化HikariCP连接池配置时发生异常,{}", ExceptionUtils.getStackTrace(e));
                    }
                    dataSource= new HikariDataSource(config);
                }
            }
        }
        return dataSource;
    }

在flink中使用hikariCP当做连接池

2、hikariCP的连接泄露

①在flink的启动模式中,如果是job和task分开部署时,最好不在job中使用连接池,否则会在jobmanager中的持有连接

②所有用到连接的地方都要关闭,try-catch-flinally关闭连接

相关推荐
xsd2024111812 小时前
RelateAnything:53M小模型如何把视觉关系检测从50个谓词里解放出来
人工智能·1024程序员节
Brilliantwxx15 小时前
【STM32】 内部 Flash 详解:寄存器逐位拆解 + 工作流程顺序全讲 + EEPROM再实现
stm32·单片机·嵌入式硬件·1024程序员节
一只鹿鹿鹿16 小时前
智算算力、AI-芯片与产品解析(PPT文件)
大数据·运维·网络·人工智能·物联网·1024程序员节
xwz小王子16 小时前
Science Advances 让机器人触觉在重压下继续分辨微小变化
机器人·1024程序员节
小小AK16 小时前
聚水潭售后单到金蝶退货单同步实战:从增量拉取到目标单据落库的全流程拆解
1024程序员节
Ai-_Man1 天前
Coze扣子还是不可以导出左侧所有对话,只能点进去单条内容导出,方法不对吗?
开发语言·人工智能·ai·小程序·1024程序员节
Android系统攻城狮1 天前
Linux FFmpeg深度解析之av_dump_format调用流程与实战(十一)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Android系统攻城狮1 天前
Linux FFmpeg深度解析之avcodec_find_decoder调用流程与实战(十二)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
1-1=01 天前
.NET Core 文件系统
.net·.netcore·1024程序员节