Skip to content

SQL工作台连接数过多 #542

@littleniannian

Description

@littleniannian

版本信息(Version)

release-4.2509.0

问题描述(Describe)

当在工作台中打开SQL窗口,或者下拉左侧数据源列表时,每次会创建三个数据库连接,造成资源浪费

截图或日志(Log)

  • odc中一个会话会注册三种连接(SYS,Console,Backend)
Image
  • SYS 使用SYS权限连接的用户
  • Console 会话连接的用户
  • Backend 负责一些批量任务的处理
    实际创建连接的连接(1个Console连接,2个Backend连接)
    创建2个druid连接池管理的连接。
    Image

如何复现(To Reproduce)

  • 在工作台中打开SQL窗口

问题原因

  • 每打开一个数据源会话,会在数据库创建三个连接,每次下拉数据库列表或者查看某个表的详情也会创建三个连接。每个会话的过期时间比较长为8小时,当生产环境用户多,并且每个用户打开的会话多的情况下,容易占用过多的数据库资源,可能会拖垮数据库。

解决方案

  • 目前SYS的数据库连接只在OBMYSQL版本小于1.4.79会被用到。所以将一些使用Backend的地方直接复用Console连接,减少数据库连接资源的消耗。
  • 修改后的现状,每次打开会话或者下拉某个数据库只会创建一个连接

变更影响面

受影响的模块或功能

外部引用的潜在问题或风险

版本兼容性

测试建议

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions