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关闭连接

相关推荐
unable code3 天前
[HNCTF 2022 WEEK2]ez_ssrf
网络安全·web·ctf·1024程序员节
unable code4 天前
[NISACTF 2022]easyssrf
网络安全·web·ctf·1024程序员节
unable code5 天前
BUUCTF-[第二章 web进阶]SSRF Training
网络安全·web·ctf·1024程序员节
开开心心就好6 天前
进程启动瞬间暂停工具,适合调试多开
linux·运维·安全·pdf·智能音箱·智能手表·1024程序员节
仰泳之鹅7 天前
【51单片机】第一课:单片机简介与软件安装
单片机·嵌入式硬件·51单片机·1024程序员节
海海不瞌睡(捏捏王子)8 天前
C#知识点概要
java·开发语言·1024程序员节
小浣熊熊熊熊熊熊熊丶9 天前
飞牛NAS 安装 Teslamate 教程(docker版)
1024程序员节
程高兴9 天前
模糊PID控制的永磁同步电机矢量控制系统-SIMULINK
matlab·1024程序员节
海海不瞌睡(捏捏王子)9 天前
Unity知识点概要
unity·1024程序员节
unable code9 天前
[网鼎杯 2020 玄武组]SSRFMe
网络安全·web·ctf·1024程序员节