开发者社区> 问答> 正文

OceanBase数据库jdbc负载均衡模式直接连接后面多个obproxy其中一个obproxy故障

OceanBase数据库jdbc负载均衡模式直接连接后面多个obproxy时,其中一个obproxy故障了,jdbc多久会隔离该节点,后续如何判断该proxy节点恢复并重连?

展开
收起
闲o月 2024-03-17 18:37:52 138 0
来自:OceanBase
3 条回答
写回答
取消 提交回答
  • "obproxy会依赖于连接超时或者重试策略来识别和隔离故障的节点。
    https://www.oceanbase.com/docs/common-odp-doc-cn-1000000000517536 可以看下这个。

    1. 可以观察OBProxy的日志,确认是否已经解决
      2.可以手动执行SHOW PROCESSLIST
      麻烦社区问答发个贴吧。可以详细说明的。https://ask.oceanbase.com/ 此回答整理自钉群:“[社区]技术答疑群OceanBase”"
    2024-03-18 18:32:11
    赞同 展开评论 打赏
  • JDBC在连接OceanBase数据库时,若配置为负载均衡模式并连接多个obproxy节点,当其中一个obproxy发生故障时,具体的故障隔离时间和重连机制取决于JDBC连接池实现以及OceanBase数据库客户端对失效探测和重试策略的设定。通常情况下,现代的数据库连接池都会提供超时检测和故障转移的功能,一旦发现某个代理节点不可达或响应超时,会迅速将该节点标记为不可用,并将其从可用列表中移除,然后将新的连接请求转发至其他健康的proxy节点。

    对于proxy节点恢复后的重连,同样依赖于连接池的自我修复机制,一般会在一定周期后尝试重新连接故障恢复的proxy节点,具体间隔时间可以在连接池配置中设定。为了确保及时性,可以配置健康检查机制定期探测所有proxy节点的状态。

    2024-03-18 16:36:27
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    OceanBase的JDBC连接在遇到后端的OBProxy节点故障时,会在约30秒后自动隔离该故障节点

    在使用OceanBase数据库时,JDBC连接可以通过配置扩展信息中的OBLB_STRATEGYLOAD_BALANCE_STRATEGY参数以及URL Option中的loadBalanceStrategy来实现负载均衡。当使用多个OBProxy节点时,如果其中一个出现故障,JDBC连接会自动检测到这一情况,并在大约30秒后将故障节点从连接池中移除,以避免后续请求被发送到无效的节点上。

    此外,为了判断一个故障的OBProxy节点是否已经恢复并重新加入集群,可以监控OceanBase的相关日志或使用系统提供的健康检查工具来确认节点状态。一旦确认节点已恢复,JDBC连接会根据配置的负载均衡策略自动重新连接到可用的OBProxy节点上。

    2024-03-17 20:17:17
    赞同 1 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
蚂蚁OceanBase数据库团队,用于OceanBase技术原理、运维经验和案例分享、对外交流。
问答排行榜
最热
最新

相关电子书

更多
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
阿里云瑶池数据库精要2022版 立即下载
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载