大型电商网站系统架构演变过程

97 篇文章 67 订阅
订阅专栏

一个成熟的大型网站(如淘宝、天猫、腾讯等)的系统架构并不是一开始设计时就具备完整的高性能、高可用、高伸缩等特性的,它是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随着业务的扩展而逐步完善的,并不是一蹴而就;不同业务特征的系统,会有各自的侧重点,例如淘宝,要解决海量的商品信息的搜索、下单、支付,例如腾讯,要解决数亿用户的实时消息传输,百度它要处理海量的搜索请求,他们都有各自的业务特性,系统架构也有所不同。尽管如此我们也可以从这些不同的网站背景下,找出其中共用的技术,这些技术和手段广泛运用在大型网站系统的架构中,下面就通过介绍大型网站系统的演化过程,来认识这些技术和手段。

一、最开始的网站架构

最初的架构,应用程序、数据库、文件都部署在一台服务器上,如图:

 

二、应用、数据、文件分离

随着业务的扩展,一台服务器已经不能满足性能需求,故将应用程序、数据库、文件各自部署在独立的服务器上,并且根据服务器的用途配置不同的硬件,达到最佳的性能效果。

 

三、利用缓存改善网站性能

在硬件优化性能的同时,同时也通过软件进行性能优化,在大部分的网站系统中,都会利用缓存技术改善系统的性能,使用缓存主要源于热点数据的存在,大部分网站访问都遵循28原则(即80%的访问请求,最终落在20%的数据上),所以我们可以对热点数据进行缓存,减少这些数据的访问路径,提高用户体验。

 

缓存实现常见的方式是本地缓存、分布式缓存。当然还有CDN、反向代理等,这个后面再讲。本地缓存,顾名思义是将数据缓存在应用服务器本地,可以存在内存中,也可以存在文件,OSCache就是常用的本地缓存组件。本地缓存的特点是速度快,但因为本地空间有限所以缓存数据量也有限。分布式缓存的特点是,可以缓存海量的数据,并且扩展非常容易,在门户类网站中常常被使用,速度按理没有本地缓存快,常用的分布式缓存是Memcached、Redis。

四、使用集群改善应用服务器性能

应用服务器作为网站的入口,会承担大量的请求,我们往往通过应用服务器集群来分担请求数。应用服务器前面部署负载均衡服务器调度用户请求,根据分发策略将请求分发到多个应用服务器节点。

常用的负载均衡技术硬件的有F5,价格比较贵,软件的有LVS、Nginx、HAProxy。LVS是四层负载均衡,根据目标地址和端口选择内部服务器,Nginx和HAProxy是七层负载均衡,可以根据报文内容选择内部服务器,因此LVS分发路径优于Nginx和HAProxy,性能要高些,而Nginx和HAProxy则更具配置性,如可以用来做动静分离(根据请求报文特征,选择静态资源服务器还是应用服务器)。

 

五、数据库读写分离和分库分表

随着用户量的增加,数据库成为最大的瓶颈,改善数据库性能常用的手段是进行读写分离以及分库分表,读写分离顾名思义就是将数据库分为读库和写库,通过主备功能实现数据同步。分库分表则分为水平切分和垂直切分,水平切分则是对一个数据库特大的表进行拆分,例如用户表。垂直切分则是根据业务的不同来切分,如用户业务、商品业务相关的表放在不同的数据库中。

 

六、使用CDN和反向代理提高网站性能

假如我们的服务器都部署在成都的机房,对于四川的用户来说访问是较快的,而对于北京的用户访问是较慢的,这是由于四川和北京分别属于电信和联通的不同发达地区,北京用户访问需要通过互联路由器经过较长的路径才能访问到成都的服务器,返回路径也一样,所以数据传输时间比较长。对于这种情况,常常使用CDN解决,CDN将数据内容缓存到运营商的机房,用户访问时先从最近的运营商获取数据,这样大大减少了网络访问的路径。比较专业的CDN运营商有蓝汛、网宿。而反向代理,则是部署在网站的机房,当用户请求达到时首先访问反向代理服务器,反向代理服务器将缓存的数据返回给用户,如果没有缓存数据才会继续访问应用服务器获取,这样做减少了获取数据的成本。反向代理有Squid,Nginx。

 

七、使用分布式文件系统

用户一天天增加,业务量越来越大,产生的文件越来越多,单台的文件服务器已经不能满足需求,这时就需要分布式文件系统的支撑。常用的分布式文件系统有GFS、HDFS、TFS。

 

八、使用NoSql和搜索引擎

对于海量数据的查询和分析,我们使用nosql数据库加上搜索引擎可以达到更好的性能。并不是所有的数据都要放在关系型数据中。常用的NOSQL有mongodb、hbase、redis,搜索引擎有lucene、solr、elasticsearch。

 

九、将应用服务器进行业务拆分

随着业务进一步扩展,应用程序变得非常臃肿,这时我们需要将应用程序进行业务拆分,如百度分为新闻、网页、图片等业务。每个业务应用负责相对独立的业务运作。业务之间通过消息进行通信或者共享数据库来实现。

 

十、搭建分布式服务

这时我们发现各个业务应用都会使用到一些基本的业务服务,例如用户服务、订单服务、支付服务、安全服务,这些服务是支撑各业务应用的基本要素。我们将这些服务抽取出来利用分部式服务框架搭建分布式服务。阿里的Dubbo是一个不错的选择。

 

小结

大型网站的架构是根据业务需求不断完善的,根据不同的业务特征会做特定的设计和考虑,本文只是讲述一个常规大型网站会涉及的一些技术和手段。

系统架构图:



文章来源:http://blog.csdn.net/u012388609/article/details/58086636
https://www.cnblogs.com/lfs2640666960/p/9021205.html
https://blog.csdn.net/woshiyeguiren/article/details/80345925

Java互联网架构-如何构建高并发高可用电商充值平台架构演变过程
lvlei19911108的博客
10-31 162
概述高可用的架构目前,通常企业级应用系统(特别是政府部门和大企业的应用系统)一般会采用安规的软硬件设备,如IOE(IBM的小型机、Oracle数据、EMC存储设备)系列。而一般互联网公司更多地采用PC级服务器(x86),开源的数据库(MySQL)和操作系统(Linux)组建廉价且高容错(硬件故障是常态)的应用集群。(1)设计的目的?保证服务器硬件故障服务依然可用,数据依然保存并能够被访问。(2)主...
大型电商网站架构案例和技术架构【推荐】
热门推荐
jianai0602的博客
05-17 3万+
大型网站架构是一个系列文档,欢迎大家关注。本次分享主题:电商网站架构案例。从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。根据实际需要,进行改造,扩展,支持千万PV,是没问题的。本次分享大纲电商案例的原因电商网站需求网站初级架构系统容量估算网站架构分析网站架构优化架构总结电商网站案...
大型网站系统架构演化之路
weixin_33951761的博客
09-27 760
前言 一、最开始的网站架构 二、应用、数据、文件分离 三、利用缓存改善网站性能 四、使用集群改善应用服务器性能 五、数据库读写分离和分库分表 六、使用CDN和反向代理提高网站性能 七、使用分布式文件系统 八、使用NoSql和搜索引擎 九、将应用服务器进行业务拆分 十、搭建分布式服务 小结 前言 一个成熟的大型网站(如淘宝、天猫、腾讯等)的系统架构并不是...
大型网站系统架构演变
liqiangshuaixiaozia的专栏
09-26 928
解读大型网站系统架构的演化 2014-09-26 09:53 李平 LEE的博客 字号:T | T 大型网站的架构是根据业务需求不断完善的,根据不同的业务特征会做特定的设计和考虑,本文只是讲述一个常规大型网站会涉及的一些技术和手段。 AD:2014WOT全球软件技术峰会北京站 课程视频发布 11月21日-22日 与WOT技术大会相约深圳 现在抢票 前言 一个成
电商架构浅析
最新发布
kfashfasf的博客
07-19 750
简单说就是通过网络进行的商务活动。以前的人都是通过现金进行交易,就是所谓的一手交钱、一手交货。而电商,则是通过通过网上商城、物流配送、线上资金结算等过程来完成交易。本质就是买卖双方围绕线上商品进行交易履约的过程
说说大型网站架构的演化历程
读万卷书,行万里路
09-14 1199
现今,全球有近一半的人口在使用互联网,人们的生活因互联网而发生了巨大的改变。在互联网跨越式的发展历程的背后是不堪重负的网站架构,某些 B2C 网站逢促销必宕机似乎成为一种必然的规律,最著名的例子就是早期的铁道部的电子客票售卖平台O(∩_∩)O~1 大型互联网应用的特点 高并发,大流量:面对的是高并发的用户以及大流量的访问。 高可用:系统 7 * 24 小时不间断服务。 海量数据:需要存储并管理海量的
大型网站架构进化阶段
JohnShu的专栏
01-10 994
1、 最开始,由于某些想法或者爱好,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于我们先关注架构演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了。 初始阶段网站架构:一台Server满足刚需,应用程序、数据库、文件等所有资源都集中在一台Server上,典型案例:基于LAMP架构的PHP网站。 2、 经过一段时间的运营后,由于网站具备一定
大型级网站架构演变与变迁
微服务技术栈
07-24 206
大型网站都是从小型网站发展而来,架构也是一样。任何一个大型网站的架构都不是从一开始都是一层不变的,而是随着用户量和数据量的不断增加不断演进的结果。比如腾讯最初是靠ICQ起家,而阿里最初则是使用LAMP架构模式。了解大型网站的架构变迁更有助于我们了解微服务的由来。 单一应用架构 在网站建立之初,可能并没有特别多的用户,我们仅仅用一个服务器就可以满足需求了,这个时候我们将所有业务打成一个war包,与数据库一起部署在一台机器上。如下图为最初时期的单一应用架构: 应用于数据分离 随着用户的增多,业务量.
大型电商网站架构设计.docx
10-14
大型电商网站架构设计 本文将从电商网站的需求到单机架构,逐步演变为常用的分布式架构的原型。除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。 一、电商案例的原因...
各种系统架构图与详细说明
09-22
1 应用系统建设 本次项目的一项重点就是实现原有应用系统的全面升级以及新的应用系统的开发,从而建立行业的全面的应用系统架构群。整体应用系统通过SOA面向服务管理架构模式实现应用组件的有效整合,完成应用系统的统一化管理与维护。 2 应用资源采集 整体应用系统资源统一分为两类,具体包括结构化资源和非机构化资源。本次项目就要实现对这两类资源的有效采集和管理。对于非结构化资源,我们将通过相应的资源采集工具完成数据的统一管理与维护。对于结构化资源,我们将通过全面的接口管理体系进行相应资源采集模板的搭建,采集后的数据经过有效的资源审核和分析处理后进入到数据交换平台进行有效管理。 3 数据分析与展现 采集完成的数据将通过有效的资源分析管理机制实现资源的有效管理与展现,具体包括了对资源的查询、分析、统计、汇总、报表、预测、决策等功能模块的搭建。
各大知名网站系统架构
07-27
NULL 博文链接:https://ttion.iteye.com/blog/737120
大型网站系统架构演化实例_7.使用NoSQL和搜索引擎
huaqianzkh的专栏
04-20 1183
随着网站业务越来越复杂,对数据存储和检索的需求也越来越复杂,网站需要采用一些非关系数据库技术如NoSQL和非数据库查询技术如搜索引擎。NoSQL和搜索引擎都是源自互联网的技术手段,对可伸缩的分布式特性具有更好的支持。应用服务器则通过一个统一数据访问模块访问各种数据,减轻应用程序管理诸多数据源的麻烦。
10张图带你看懂大型网站架构演变
huangshulang1234的博客
01-22 2465
10张图带你看懂大型网站架构演变 一个普通的网站发展大型网站过程中的一种较为典型的架构演变历程。这一步涉及的知识体系非常的多,要求对通信、远程调用、消息机制等有深入的理解和掌握,要求的都是从理论、硬件级、操作系统级以及所采用的语言的实现都有清楚的理解。 架构演变第一步:物理分离webserver和数据库   架构演变第二步:增加页面
大型网站架构演进的五大阶段盘点
博文视点(北京)官方博客
08-14 743
一个创业公司起步时很可能就两台机器,一台Web 服务器、一台数据库服务器,在一个应用系统中集成了所有功能模块,但随着业务的发展、流量的增长,单应用远远不能满足业务需求。 下面我们一同来聊聊网站架构发展所经历的几次主要演进,包括:从PHP 到Java 的改造、分布式改造、无线化改造、中台的改造、国际化改造。   阶段一 从PHP 到Java 很多网站早期都是基于Linux+Apache+...
论软件体系结构的演化
追风落叶乔木生
10-25 806
本文结合项目实践经验,从需求管理与跟踪、制定系统演化计划、构件变更分析与实现、构件组装与测试、技术评审论述了在实际工作中的应用,通过建立软件体系结构演化的工作流水线,有效减少了重复开发工作,降低了系统改进中引入新的缺陷和风险点数量,减少了需求与系统功能不配配的情况,提升了用户的体验感,得到了用户的高度评价。
电商系统架构图分解
ahjxhy2010的博客
04-27 8204
系统分成应用层,服务层,数据层,各个应用有自己的子系统,服务层提供的是公共的服务,数据层是底层数据相关的存储。
聊一聊电商系统架构
蓝星花
04-12 1万+
电商行业很挣钱,找互联网相关的工作。 电商行业技术要求很高、高可用、海量数据的存储。 1.电商行业技术特点 Ø 技术新 Ø 技术范围广 Ø 分布式 Ø 高并发、集群、负载均衡、高可用 Ø 海量数据 Ø 业务复杂 Ø 系统安全     2.电商模式 B2B:商家到商家。阿里巴巴,慧聪网、铭万网。 B2C:商家到用户。京东。 C2C:用户到用户。淘宝。 B2B2C:商家到...
大型电商分布式系统实战与架构演进
大型电商系统架构演变中,从单一应用架构起步,这种架构最初可能包含首页、详情页、列表页、下单页、支付页以及后台管理等功能。然而,随着业务的增长,单一应用架构的问题逐渐显现,包括代码冗余、维护困难、...
写文章

热门文章

  • DDD(领域驱动设计) 268989
  • WebSocket介绍和Socket的区别 110145
  • Linux下安装MySQL 73190
  • elasticsearch的keyword与text的区别 54560
  • TCP CLOSE_WAIT 过多解决方案 43963

分类专栏

  • 架构设计 97篇
  • 大模型 22篇
  • elasticsearch 108篇
  • 缓存 34篇
  • Java 58篇
  • 分布式 14篇
  • NoSql 3篇
  • HBase 17篇
  • 性能分析 25篇
  • 数据库 38篇
  • ClickHouse 9篇
  • TiDB 7篇
  • 消息队列 22篇
  • Linux 12篇
  • 敏捷开发 7篇
  • Python 6篇
  • spring 7篇
  • 大数据 27篇
  • business 14篇
  • 面试 7篇
  • web 8篇
  • 其他 52篇

最新评论

  • AI 与大模型:物流行业的变革力量

    Francek Chen: 细节描写非常到位,博主的文章让我对这个主题有了全新的认识,希望能够得到博主的指导,欢迎互关互三支持~~

  • AI 与大模型:物流行业的变革力量

    2的n次方_: 文章内容丰富,干货满满,论述清晰,通俗易懂,无论是初学者还是资深从业者,都能从中获得不同层次的收获,感谢博主的分享

  • DDD(领域驱动设计)

    后端小肥肠: 这篇文章深入浅出地解释了复杂的概念,为读者提供了清晰而有条理的指导,无论是新手还是有经验的专业人士都能从中受益匪浅

  • AI 大模型落地金融:破局之道与应对之策

    程序边界: 博主的博客每一篇博文都如一本启发书,我从中汲取灵感,希望博主继续为我们献上这些珍宝。是我的学习良师,每篇文章都充满见解,让我茅塞顿开,你的文章总是让我对复杂的主题有更深入的理解,非常感激你的专业分享。期待更多分享。

  • AI 大模型落地金融:破局之道与应对之策

    2的n次方_: 文章内容丰富,干货满满,论述清晰,通俗易懂,无论是初学者还是资深从业者,都能从中获得不同层次的收获,感谢博主的分享

大家在看

  • python函数二:局部变量、全局变量、位置参数、关键字参数、缺省参数、不定长参数 1100
  • 高并发下保证接口幂等性的策略(数据一致性) 690
  • Cursor火出圈,未来程序员还有出路吗?
  • 论哈希是什么 1968
  • (开题)flask框架电竞酒店管理系统设计(程序+论文+python)

最新文章

  • AI 与大模型:物流行业的变革力量
  • 企业大模型落地的“最后一公里”攻略
  • 多云架构下大模型训练的存储稳定性探索
2024
09月 7篇
08月 27篇
07月 4篇
06月 5篇
05月 1篇
03月 3篇
02月 3篇
2023年18篇
2022年45篇
2021年40篇
2020年97篇
2019年93篇
2018年64篇
2017年77篇
2016年37篇
2015年56篇
2014年23篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

深圳SEO优化公司优化公司网站质云速捷真诚网站优化具体怎么做宣城网站关键词优化哪个品牌好网站霸屏优化汉中网站优化排名案例电子商务网站优化技巧南沙网站关键词优化多少钱梁溪区网站seo优化排名凤庆县网站seo优化排名上海网站页面优化快排网站优化网站优化找哪个公司好呢晋城关键词网站优化平顶山外贸网站优化推荐网站采集数据怎么优化镇康网站优化方案文章对网站优化的影响专注番禺网站优化网站排名优化吉金手指下拉三绍兴网站优化推荐合肥网站优化步骤什么语言的网站好优化石岩网站优化公司郑州家居行业网站优化推广渠道佛山网站关键词优化平台商城网站建设优化企业东台网站优化排名企业做网站优化常用的工具有繁昌网站优化推广公司贵阳如何优化网站推广歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化