记录最近发生并解决的一个问题

原因

在一个事务内,操作多个数据库,当其中一个数据库挂掉后,默认无限重连,导致事务无法正常结束,导致系统卡死

解决

将无限重连改成有限次数即可

datasource:
  db1:
    driver-class-name: oracle.jdbc.driver.OracleDriver
    url: jdbc:oracle:thin:@//ip:1521/ORCL
    username: 账号
    password: 密码
    druid:
      breakAfterAcquireFailure: true
      connectionErrorRetryAttempts: 5
  db2:
    driver-class-name: oracle.jdbc.driver.OracleDriver
    url: jdbc:oracle:thin:@//ip:1521/ORCL
    username: 账号
    password: 密码
    druid:
      breakAfterAcquireFailure: true
      connectionErrorRetryAttempts: 5

看下源码,DruidDataSourceCreator

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐