请问一下,flink jdbc 对数据库的连接理论上一直是占用着是吗?
Flink JDBC 对数据库的连接不是一直占用的。连接在需要执行查询或更新操作时才会被创建,并在操作完成后被释放。
当使用 Flink JDBC 时,可以配置连接池来管理连接。
如果使用线程池的话,理论上有一个最小连接数占用着,如果是短链接,用完即销毁。
此答案来自钉钉群“【2】Apache Flink China 社区”
理论上来说,Flink JDBC连接数据库是长连接的方式,并且会一直占用连接资源,直到关闭连接。
当使用JDBC连接器时,连接由连接池缓存并重复使用以花费更少的资源。对于关系型数据库来说,连接的创建和释放操作是一个耗时的操作,因此连接池在一定程度上可以优化性能。
但是,如果持久的占用数据库连接而不归还连接资源的话,可能会影响系统整体性能,尤其当连接池空间不足并且连接请求被拒绝时,会造成系统的崩溃。
因此,需要合理的管理和使用JDBC连接,例如及时释放连接、使用连接池来提高性能和降低连接池空间不足的风险等。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。