大型网站架构系列:电商网站架构案例(3)
本文章是电商网站架构案例的第三篇,主要介绍数据库集群,读写分离,分库分表,服务化,消息队列的使用,以及本电商案例的架构总结。
6.5数据库集群(读写分离,分库分表)
大型网站需要存储海量的数据,为达到海量数据存储,高可用,高性能一般采用冗余的方式进行系统设计。一般有两种方式读写分离和分库分表。
读写分离:一般解决读比例远大于写比例的场景,可采用一主一备,一主多备或多主多备方式。
本案例在业务拆分的基础上,结合分库分表和读写分离。如下图:
(1) 业务拆分后:每个子系统需要单独的库;
(2) 如果单独的库太大,可以根据业务特性,进行再次分库,比如商品分类库,产品库;
(3) 分库后,如果表中有数据量很大的,则进行分表,一般可以按照Id,时间等进行分表;(高级的用法是一致性Hash)
(4) 在分库,分表的基础上,进行读写分离;
相关中间件可参考Cobar(阿里,目前已不在维护),TDDL(阿里),Atlas(奇虎360),MyCat(在Cobar基础上,国内很多牛人,号称国内第一开源项目)。
分库分表后序列的问题,JOIN,事务的问题,会在分库分表主题分享中,介绍。
6.6服务化
将多个子系统公用的功能/模块,进行抽取,作为公用服务使用。比如本案例的会员子系统就可以抽取为公用的服务。
6.7消息队列
消息队列可以解决子系统/模块之间的耦合,实现异步,高可用,高性能的系统。是分布式系统的标准配置。本案例中,消息队列主要应用在购物,配送环节。
(1) 用户下单后,写入消息队列,后直接返回客户端;
(2) 库存子系统:读取消息队列信息,完成减库存;
(3) 配送子系统:读取消息队列信息,进行配送;
目前使用较多的MQ有Active MQ,Rabbit MQ,Zero MQ,MS MQ等,需要根据具体的业务场景进行选择。建议可以研究下Rabbit MQ。
6.8其他架构(技术)
除了以上介绍的业务拆分,应用集群,多级缓存,单点登录,数据库集群,服务化,消息队列外。还有CDN,反向代理,分布式文件系统,大数据处理等系统。
此处不详细介绍,大家可以问度娘/Google,有机会的话也可以分享给大家。
七、架构总结
以上是本次分享的架构总结,其中细节可参考前面分享的内容。其中还有很多可以优化和细化的地方,因为是案例分享,主要针对重要部分做了介绍,工作中需要大家根据具体的业务场景进行架构设计。
以上是电商网站架构案例的分享一共有三篇,从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。
关于负载均衡,业务拆分,集群架构,读写分离,分库分表,服务化,消息队列等常用技术和架构实现,本博客将会推出系列文章,进行介绍。欢迎小伙伴们围观。
相关推荐
【大型网站架构系列:电商网站架构案例】 电商网站架构的设计是一项复杂的任务,它涉及到多个关键要素,包括系统容量预估、高可用性设计、非功能需求的考虑以及系统的可扩展性。本文通过一个电商网站的案例,探讨了...
本文档旨在全面阐述一个针对中小型企业研发团队的架构实践案例,特别是聚焦于电商领域的总体架构设计。编写的核心目的在于为研发团队提供一个清晰的方向与蓝图,帮助他们理解整体框架的同时,也能深入到各个细节层面...
这本书详细讲解了电商行业的核心业务流程、中台架构设计以及供应链管理等多个重要方面,结合实际案例,提供了丰富的实践经验和思考。 1. **电商后台系统**:电商后台系统是电商平台的核心组成部分,包括订单管理、...
9. **系统架构与技术选型**:讲解电商后台系统的架构设计原则,如高并发处理、数据一致性、安全性等方面的技术挑战和解决方案。 10. **合规与法规**:提醒产品经理关注电商平台应遵循的法律法规,如消费者权益保护...
总结来说,论文通过对“双十一”电商直播的案例分析,揭示了网络直播对于现代电商行业的重要作用和影响。文章强调了消费者心理的洞察、消费行为的引导以及传统媒体与新媒体融合的必要性,为电商行业发展提供了专业...
《大型网站技术架构:核心原理与案例分析》是李智慧先生的一部著作,该书深入探讨了构建和优化大型网站所需的关键技术和实践经验。在大型互联网公司的日常运营中,技术架构的选择和演进对于系统的稳定性和扩展性至关...
对于初学者和开发者来说,这是一个极好的学习资源,可以帮助他们掌握前端开发的核心技能,同时理解电商网站的架构和设计原则。在使用过程中,务必遵循非商用的原则,尊重并遵守开源社区的规定。
《大数据架构和算法实现之路:电商系统的技术实战》是一本深度探讨大数据技术在电商系统中应用的专业书籍。这本书旨在帮助读者理解如何利用大数据技术解决实际的电商问题,提升业务效率和决策精度。以下是对该书内容...
1. **电商后台系统架构**:后台系统通常包括订单管理、库存管理、商品管理、用户管理、支付系统、物流管理等多个模块。这些模块如何协同工作以确保平台高效运行是产品经理需要掌握的基础。 2. **订单处理流程**:从...
《商业摄影实拍案例:电商服装摄影指南》这本书深入探讨了商业服装摄影的实操技术与艺术表现,对于从事服装摄影的专业人士或爱好者来说,无疑是一本宝贵的参考资料。 书中首先指出了服装摄影的艺术性和在商业中的...
5. 行业信心:电商企业期望以凡客诚品和京东商城为代表的成功案例带动行业信心,但已上市的电商企业表现不佳,可能影响投资者对整个行业的看法。 6. 企业文化和价值观:凡客诚品初创时期的激情和梦想是吸引和留住...
大型电商网站架构设计的原因可以分为三类:大型门户、SNS 网站和电商网站。电商网站具备以上两类的特点,比如产品详情可以采用 CDN,静态化,交互性高的需要采用 NOSQL 等技术。 二、电商网站需求 客户需求包括: ...
电商网站案例,一共有三篇本篇主要说明网站的需求,网站初始架构,系统容量估算方法。分布式大型网站,目前看主要有几类1.大型门户,比如网易,新浪等;2.SNS网站,比如校内,开心网等;3.电商网站:比如阿里巴巴,...
1. 分布式计算:大型网站通常采用分布式计算架构,将任务分散到多台服务器上,以提高处理能力并增强系统的可用性。 2. 微服务架构:将单个庞大应用拆分为多个小型、独立的服务,每个服务专注于特定业务功能,便于...
3. **数据库优化**:大型网站通常采用分布式数据库、分片技术、读写分离等策略来处理海量数据。例如,MySQL集群可以实现数据的水平扩展,NoSQL数据库(如MongoDB、HBase)则适用于非结构化数据的存储。 4. **CDN...
### 从大型电商架构演进看互联网高可用架构设计 #### 一、互联网架构演进 **五种架构模型介绍** 1. **单体架构**:最初期的软件架构模式,将所有功能集成在一个紧密耦合的应用程序中。易于理解和部署,但随着系统...
随着互联网技术的快速发展,电商行业已成为当今商业竞争的新高地。其中,电商代运营作为电商平台运营的延伸,正日益受到品牌商和零售企业的重视。本篇报告深入分析了电商代运营行业的市场现状、发展趋势以及行业...