加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 服务器 > 安全 > 正文

一个迅速发展创业公司的 RDS 重塑之路

发布时间:2021-01-16 22:56:35 所属栏目:安全 来源:网络整理
导读:《一个迅速发展创业公司的 RDS 重塑之路》要点: 本文介绍了一个迅速发展创业公司的 RDS 重塑之路,希望对您有用。如果有疑问,可以联系我们。 RDS 是关系型数据库服务.有赞为什么重新打造 RDS 东西?这要从四个角度去分析:背景、问题、发展、实现. 有赞四个

Console 是作为总管理端和操作入口.Proxy 是从一开始就有,这是用户访问的代理层.而 HA Master 是作为 HA 检测和切换操作.Canal Manager 是作为数据驱动的事件通知系统,Tablet 是部署我在每个 MySQL 主机上面的代理,是一个 Local Agent,Tablet 现在能够承载于启动 MySQL 指令,能够对 MySQL 进行白名单的过滤,而 MySQL 本身是我们互联网重度依赖的一个开源的软件数据库的.在每个单机上会部署多个数据组.M 就是 Master1 的使令,Tablet 是跟 RDS 交互,当然 MySQL HA 要做的时候,检测中 MySQL Master 挂了,要启动其中的一个 F1 或者 0,是通过 Master 检测和控制的.本身 HA-Master 跟 Console 可以放同一个进程里,但是迭代是比较快,所以为了稳定性拆开,后续会考虑合并.然后把 MySQL 上面的 Realy 尽量搜集到且回放给 log.通过这样链路的调整之后,我们现在够去掉了原先 VIP 那个 RDS 的方案.右下角这端相对而言是互联网里比较常用的事件驱动源的架构对孵化的进程中,这个可以忽略.

效果展示

这个是当时梳理的系统架构,系统里的概念,主要针对运维的需求和线上开发人员,还有 DBA 的一些需求和 MySQL 自己本身的一些概念所做的一些梳理.所以对 RDS 做了这些 Proxy 改造和 DDL 的工作流之后,我们对 RDS 有一个相对比较大的提升.整个控制台可以看到所有的都在这个控制台,可以看到单纯的流量是多少等等.这里截了两张图,没有太多的演示,因为这个产品界面本身也在不断的改,主要是这两个功能是比较重要的.

写在最后

最重要的一点,我觉得在 300-1000 人或者在未来更多人的团队里,工作流是非常重要的,而且在使用 MySQL 过程中,它的本身就很复杂,无论它的合理实现或者不合理实现都会引发概念上或者实现上的一些区别,所以我们对 DDL 进行工作流的支持,这样的话就可以提高整个业务线上面开发效率,能够缩短业务上线时间.我认为这个是比较重要的工作效率的提高.虽然说很多的所谓想做高并发软件设计不适合做这个,但是这个是很重要的事.关于 RDS 前面讲了我们所做的,可能没那么多高大上的事情,但是实际上是我们已经做的事,和关于 RDS 未来我们还会继续往以下的系统模块再继续加深.RDS-Console,做更好的测试,RDS Proxy 做更好的性能和流量的划分.HA Master 会引入 Roft 协议做诊断,而不是像前面所看到的图里面,它是中间是居前判断.而 CanalManager 会并入,不是通过 Canal 量,而是通过整套系统输出的.而 Tablet 会做更多的试用和运维的动作,而 MySQL 没有太多的改造,只会做更新迭代.

?提问:请问 DDL 具体怎么提高工作效率的?

林足雄:我不知道多少人经历过 0-300 人团队或者 300 人团队.DDL 本身开发给 DBA 提交 DDL 的时候,它是通过口对口,或者文本文件或者是后来稍微改进一点的,比如工作流,在这里提交一个工单,然后 DBA 每天去过那些工单.过完工单之后,DBA 把具体的 DDL 在 MySQL 上通过命令函 CL 显示执行 DDL.而 DDL 本身当时来说是没有问题的.

我前面提到了,业务线非常多的时候,在七八个语句的时候效率蛮高的,当又有分片的时候来说,每条具体的语句就要形成 1014 个执行任务,DDL 的时间就会很大量的占用 DBA 的时间.还包括 DDL 对于每一个 Sharding 上是否成功 DBA 也关心.而是否成功这个动作本身还是需要同步等待的.比如说一百句数据库的话它就得等,或者过一段时间再检查.而改造变成把这些工作流全放在管理系统里.管理系统里通过开发人员在管理系统里提交工单,然后给具体的执行 MySQL,把执行的后果和进度提交到 Console 系统上,上报到 Console 系统可以通过界面展示,并且连动手机的报警和短信,或者我们有赞内部的 APP 系统搜集就可以.这样会减少 DBA 凌晨执行任务的时间.因为大量的 DBL 是在凌晨跑的.比如说十句以下的 DDL 下去,DBA 在凌晨不需要值班,以前是需要的.所以 DBA 的生命还是蛮宝贵的.

作者介绍

林足雄,有赞架构师,2010-2013 金山软件,开发经理 + 架构师;2013-2015 蘑菇街,架构师;2015- 至今 有赞,中间件 TL+ 架构师.

文章来自微信公众号:高效开发运维

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读