撑千万级,大型电商分布式架构解析(20)

服务化

将多个子系统公用的功能/模块 , 进行抽取 , 作为公用服务使用 。 比如本案例的会员子系统就可以抽取为公用的服务 。

消息队列

消息队列可以解决子系统/模块之间的耦合 , 实现异步 , 高可用 , 高性能的系统 。 是分布式系统的标准配置 。 本案例中 , 消息队列主要应用在购物 , 配送环节 。

(1) 用户下单后 , 写入消息队列 , 后直接返回客户端;

(2) 库存子系统:读取消息队列信息 , 完成减库存;

(3) 配送子系统:读取消息队列信息 , 进行配送;

目前使用较多的 MQ 有 Active MQRabbit MQZero MQ , MS MQ 等 , 需要根据具体的业务场景进行选择 。 建议可以研究下 Rabbit MQ 。

其他架构(技术)

除了以上介绍的业务拆分 , 应用集群 , 多级缓存 , 单点登录 , 数据库集群 , 服务化 , 消息队列外 。 还有 CDN , 反向代理 , 分布式文件系统 , 大数据处理等系统 。

推荐阅读