没有合适的资源?快使用搜索试试~ 我知道了~
网易IM云服务为百万商家亿级终端用户提供即时通信服务。商家产品爆款、用户活跃交流都在考验着我们的业务系统。如何保障系统的稳定运行,支撑更大的并发,提供真正的可扩展的IM云服务一直是我们非常关注的一个问题。在数据库选择上我们使用了网易私有云中的分布式数据库服务(云DDB)其架构图如下云DDB主要包括以下几个组件1.NLB2.SQLProxy3.DBN4.Master5.SYSDBNLB是负载均衡服务,基于LVS打造,负责将应用请求转发到后端SQLProxy,同时定时检测后端SQL
资源推荐
资源详情
资源评论
MySQL分布式数据库高可用实践:架构、复制机制、多机房分布式数据库高可用实践:架构、复制机制、多机房
网易IM云分布式数据库架构介绍
网易IM云服务为百万商家亿级终端用户提供即时通信服务。商家产品爆款、用户活跃交流都在考验着我们的业务系统。如何
保障系统的稳定运行,支撑更大的并发,提供真正的可扩展的IM云服务一直是我们非常关注的一个问题。
在数据库选择上我们使用了网易私有云中的分布式数据库服务(云DDB)
其架构图如下
云DDB主要包括以下几个组件
1. NLB 2. SQL Proxy 3. DBN 4.Master 5. SYSDB
NLB是负载均衡服务,基于LVS打造,负责将应用请求转发到后端SQL Proxy, 同时定时检测后端SQL Proxy的可用性,及时将
故障机器从集群中摘除
SQL Proxy实现了MySQL协议,接收客户端请求,同时负责将请求路由到具体的后端数据库节点,并返回数据给客户端。如
果数据请求分布在多个节点,则可能使用2PC协议进行分布式事务(保障数据一致性)
DBN则是底层真正负责数据存取的服务,通常是一个关系型数据库,目前支持MySQL、Oracle
Master是管理服务,负责管理集群,比如新建表、设置数据路由策略、设置客户端连接池参数、DBN切换、配置变更通知
等,操作结果(集群元数据)将持久化到SYSDB
SYSDB是一个数据库,负责存储分布式数据库的元数据信息,包括表、字段、权限、数据路由等信息
DBN与SYSDB使用的是网易私有云RDS,其它组件则部署在使用云主机上,云DDB服务的核心组件SQL Proxy以及DBN都是
可扩展的,并且高可用的。
DDB处理逻辑简单来说就是应用请求通过NLB转发到具体SQL Proxy上,SQL Proxy解析SQL生成执行计划,下发请求至底层
节点,收到DBN数据后做一定的处理返回给客户端
高可用分布式DB服务构建指南
网易IM云服务对客户承诺支持弹性扩展、消息必达。那就需要保证高吞吐、高性能的同时,对数据可用性要求也极高,数据
可用性说白了就是数据存储服务要高可用并且数据不丢失
因关系型数据库发展几十年在稳定性方面对比其他数据存储方案来说存在非常大的优势,基于此,业务很多对数据一致性的场
景都是直接依赖于DB,比如为了保证消息准确到达,发送方的消息需要先持久化到DB,再发送到接收方,接收方收到之后更
新为已接收状态,因此对数据库是重度依赖。
对关系型数据库来说高性能高可用跟数据不丢失又往往是鱼跟熊掌的关系,要保证数据完全不丢失的话,数据必然是要同时写
入到主库与从库才算完成,此时如果从机异常,数据写入将失败,这将导致数据库服务不可用,相信很少有人能接受。所以通
常在数据一致性与服务可用性上会做一定的妥协,即正常情况下表现为主从强一致性模式,异常情况下则退化为异步模式。这
在MySQL里面我们称之为Semi sync复制,Oracle 复制(DataGuard) 里面则为最大保护模式
在保证数据服务高性高吞吐的情况下尽量避免数据丢失,我们对网易云DDB底层DBN做了如下设置
资源评论
weixin_38714653
- 粉丝: 3
- 资源: 929
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功