OBProxy路由策略与使用运维-简介

背景

OceanBase数据库是分布式数据库,每个表甚至每个表的不同分区都可能存放在不同的机器上。想要对表进行读写,必须先要定位到数据所属的表或是分区的主副本位置,然后才能执行相应的SQL DML语句,这在应用层面而言是几乎不可能做到的

OBProxy作为OceanBase数据库专用的反向代理软件,其核 心功能就是路由以将客户端发起的数据访问请求转发到正确的OBServer上

客户端通过OBProxy访问OceanBase数据库的数据链路如 图所示,用户通过任意Client驱动发出请求,请求通过负载 均衡组件访问到任意一台无状态的 OBProxy上,然后OBProxy 再将用户请求转发到后端 OceanBase 集群中最佳的 OBServer 上去执行

                                 

OBProxy核心功能(路由)

OBProxy作为OceanBase的高性能反向代理服务器,其核心功能就是路由转发

OBProxy路由的目标是将具体SQL转发到最恰当的Server上执行,路由的核心过程包括:

简单的SQL Parser,LDC路由,读写分离,备优先读,黑名单机制,下图为OBproxy的路由逻辑

 路由功能举例

OBProxy核心功能(连接管理)

在observer宕机/升级/重启时,客户端与OBProxy的连接不会断开,OBProx可以迅速切换到正常的server上,对应用透明

OBProxy支持用户通过同一个OBProxy访问多个OceanBase集群

Server session对于每个client session独占

同一个client session对应server session状态保持相同(session变量同步)

OBProxy核心功能(监控&&运维)

周期性汇报统计项到OCP,实现了语句级别,事务级别,session级别,Obproxy级别的各种统计

Xflush日志监控(包括慢查询监控、error包监控等)

SQL Audit功能

实现了大量内部命令来实现远程监控,查询和运维

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柯西极限存在准则

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值