`

大型网站后台架构的演变

 
阅读更多

随着用户访问量的不断增加,网站的后台也会不断变化以应对需求。本文主要从一个小型网站到大型网站的过度与变化来陈述。

  1.1 网站后台架构

  主要指由web server 、应用服务器、数据库、存储、监控等组成的网站后台系统。

  1.2 架构演变

  个人站点后台架构。如图2-1所示。

图2-1 单台一组

  如图所示,如果是个人站点,访问量不大,一般都是将web server、应用服务器、数据库部署在一台物理服务器上。从图中也可以看到,一个网站最基本的后台需要web server、应用服务器、数据库三部分组成。

  1.2.1 网站架构的进一步演变

  考虑到网站访问量的不断增加,网站的后台架构也必须不断调整和优化,进一步实现功能分离。特别是随着访问量不断增加以及考虑到数据库的负载和数据的重要性,数据库需要分离出来。从web server到数据库实现各个层次的负载均衡。

  1.2.1.1 数据库功能分离,数据库单台部署

  考虑到数据库的安全性和处理性能,数据库单台部署。如图2-2-1-1所示。

图2-2-1-1 数据库分离

  如图所示,数据库与web server 、应用服务器分离出来,单台部署。这样做有两个好处:

  (1)数据库服务器性能提高,不再和webserver 、应用服务器抢占资源。

  (2)数据库服务器安全性能提高,不会因为一台服务器宕机而影响所有服务,特别是数据库服务。

  1.2.1.2 前端负载均衡部署,用于缓解单台web server压力

  随着访问量的不断增加,单台web server 负载会加大,甚至有宕机的危险,所以需要在前端增加负载均衡器,实现web server层的负载均衡。缓解压力。如图2-2-1-2所示。

2-2-1-2 前端负载均衡

  如图所示,通过增加web server并用负载均衡器(load balance)来缓解前端的web server和应用服务器压力。并且,为了保证数据库的绝对安全,做了Master-Slave主从备份。这样当master db宕机之后,slave db可以立即启用。所以这样做有以下好处:

  (1) 前台web server 和 应用服务器压力减少,负载均衡器分流负载。

  (2) 后端数据库安全性加强,出现故障后,业务可以很快切换到slave db 上。

  1.2.1.3 增加缓存及数据库读写分离

  随着访问量的不断增加,发现整个系统的读写比例很大,对用户而言,读操作多于写操作,而且比例很大,这就需要进一步改善架构,实现读写分离。

  通过增加db proxy,实现读写分离。如图所示,2-2-1-3。

图2-2-1-3

  考虑到读写比例大的特点,如图2-2-1-3所示,通过增加db proxy,以及master-slaves ,实现读写分离,所有写操作在master db上进行,所有读操作在其他slave dbs 上进行,这样做有以下好处:

  (1) 缓解单台db的压力,减少单台db的负载

  (2) 增加多个slave,当master db宕机之后,可以很快切换到slave 上,减少所有db同时宕机的风险。

  很多用户访问,读与写操作比例很大,如图2-2-1-3所示,通过在web server层上增加缓存,可以提高访问速度。比如可以缓存css、jpg等静态文件。

  增加缓存有两个好处:

  (1) 加快用户的读请求访问速度。

  (2) 缓解web server的压力。

  1.2.1.4 解决单点故障问题,增加在线备份设备(交换设备和服务器)

  虽然上述几个架构图,从各个层面缓解了服务器压力,但是,还是存在当点故障的可能性。如果出现单点故障,没有在线物理设备提供使用,那该系统也不是一个高可用的系统。针对上述问题,增加在线物理备份设备,解决单点故障问题,如图2-2-1-4所示。

图 2-2-1-4

  如图2-2-1-4所示,增加了负载均衡器的在线备用设备和db proxy在线备用服务器,这样做可以在负载均衡器出现故障的时候,启用在线备用设备;如果db proxy出现故障,也可以启用在线备用db proxy,实现故障转移。保证系统的高可用性。

 

分享到:
评论

相关推荐

    大型网站后台架构的演变.docx

    大型网站后台架构的演变是一个复杂且持续的过程,随着网站用户量的增长和技术的发展,架构需要不断地进行优化和调整以满足更高的性能、稳定性和可扩展性需求。本文将探讨从小型网站到大型网站后台架构的演进过程,...

    大型网站架构演变文档

    ### 大型网站架构演变知识点解析 #### 架构演变第一步:物理分离Web服务器与数据库 **背景**:随着网站的逐步发展,最初的单一主机难以应对不断增长的访问量及由此产生的性能瓶颈。 **解决方案**:将Web服务器与...

    京东商城无线端运营后台(通天塔)架构演变

    ### 京东商城无线端运营后台(通天塔)架构演变 #### 一、背景与概述 随着移动互联网的快速发展,京东商城不断优化其无线端运营后台(通天塔),以应对日益增长的用户需求和业务挑战。通天塔作为京东无线端的核心...

    35个网站后台模板大集合

    技术架构介绍_6872707.pdf":这可能是淘宝官方对外的技术分享,涵盖了整体的技术栈、服务拆分、负载均衡等方面,为理解大型网站后台架构提供了宝贵的信息。 4. "网站后台模板1249562930_99810268_7762899.rar":这...

    大型网站技术架构:核心原理与案例分析

    书中可能包含如淘宝、京东、Netflix等知名网站的架构演进案例,展示如何从简单的单体架构逐步演变为分布式、云原生的架构,以及在此过程中遇到的问题和解决策略。 4. **技术栈选择** 会涉及各类常用技术选型,如...

    千万级规模高性能、高并发的网络架构经验分享

    大型网站的架构演变是一个持续进化的过程,这个过程中会不断遇到技术挑战和性能瓶颈。例如,新浪微博就经历了从简单的单体架构到分布式架构的转变,以及在服务化、缓存策略、分布式服务追踪等方面的深入研究和技术...

    QQ会员活动运营平台的架构设计演变:高效自动化运营

    QQ会员活动运营平台自成立以来,经历了多次架构设计的演变,其目的是为了适应日益增长和变化的运营需求。架构设计的核心在于实现高效自动化运营,主要面对的挑战包括活动上线周期短、个性化需求强烈、功能需求复杂...

    架构文章集合,搜索引擎,系统可伸缩性

    1. **大型网站架构演变和知识体系**:这个文档可能详细介绍了互联网公司如何随着用户数量的增长,从最初的简单架构演变为复杂的分布式系统。它可能涵盖了历史上的关键演变阶段,比如从单体应用到微服务,以及涉及的...

    某大型集团中台平台架构设计方案:数据中台业务中台架构中台两份资料.pptx

    - **分布式架构SOA**:随着业务复杂度的增加,又演变为分布式的SOA架构,强调服务的松耦合和可复用性。 - **SOA + 服务治理**:在此基础上加入了服务治理机制,提高了系统的稳定性和可用性。 - **微服务架构**:...

    基于MongoDB构建高性能网站技术研究.pdf

    高性能网站的系统架构建设经历了一个长期的演变过程,从最初的单个文件对应一个业务到现在普通使用的多台WEB服务器,前端使用负载均衡器进行负载均衡和会话保持,后台数据库使用集群,上传文件使用分布式文件系统...

    京东交易架构演进-高可用服务的保障-杨超

    京东商城交易平台的架构演变是一个持续不断的过程。它从早期的单体应用架构逐渐转变为分布式服务架构,进而发展到了今天的微服务架构。在这个过程中,涉及到的关键技术包括: ***与SQL Server的逻辑服务替换,这是...

    阿里直播平台架构文档

    架构演变 - **早期阶段**:直播平台的架构相对简单,主要依赖于传统的流媒体传输技术,如RTMP(Real Time Messaging Protocol)等。 - **发展中期**:为了应对双十一等大型活动带来的超高并发量,阿里直播平台进行...

    关于电商体系的搭建:如何设计电商后台的商品模块[汇编].pdf

    当业务量逐渐增大,原始的后台架构可能无法满足需求,这就需要对后台进行重构,例如从简单的电商模式升级到类似淘宝或京东的大型电商平台。 随着业务的扩展,商品模块作为电商后台的核心之一,需要具备高扩展性和...

    腾讯QQ会员活动运营平台架构演进

    腾讯QQ会员活动运营平台架构演进是基于腾讯QQ会员活动运营平台的架构设计演变的实践经验总结。该平台的架构设计演变是为了解决活动运营业务的挑战和背景,以满足快速增长的活动运营需求。 活动运营的特征点: 1. ...

    互联网高并发架构设计.docx

    在业务发展的初期,可能只需要单台服务器,但随着用户量的增长,服务器架构会演变为集群,再到分布式服务。负载均衡技术,如Nginx或阿里云SLB,能够将流量分发到多个服务器,避免单点故障。资源监控工具可以实时查看...

    从大型机到网格计算和虚拟化技术

    【大型机到网格计算与虚拟化的演变】 计算技术的发展历程是一个不断演进的过程,从最初的大型机到现在的网格计算和虚拟化技术,每个阶段都带来了计算能力的显著提升和使用体验的改善。大型机时代,计算机是昂贵且...

    价值十五万的物流公司网站源码(开发手册+使用说明)可以学习借鉴

    通过研究这套源码,开发者不仅可以了解物流行业的业务逻辑,还能深入学习大型Web应用的架构设计、数据库优化、性能调优等技术。同时,对于想要创业或改进现有物流系统的人员来说,这也是一份极具参考价值的实践案例...

    耶恩内容管理系统(yeencms) v1.0.rar

    企业网站:无论大型网站还是中小型企业,利用网络传递信息在一定程度上提高了办事的效率,提高企业的竞争力。 政府机关:通过建立政府门户,有利于各种信息和资源的整合,为政府和社会公众之间加强联系和沟通,从使...

    最完善的微前端解决方案.docx

    中后台应用因其生命周期较长的特点,更容易演变为难以维护的巨型单体应用。微前端架构在这些场景下的实践主要分为两种: 1. **单实例场景**:在同一时刻只展示一个子应用,根据URL变化来切换不同的子应用。这种场景...

    软件体系结构.docx

    在Web应用中,MVC架构的主要价值在于分离用户界面逻辑和业务逻辑,使开发者可以独立修改界面而不影响后台逻辑,同时也能轻松调整业务流程而无需改动用户界面。这种分离提高了代码的可测试性,降低了维护难度,并促进...

Global site tag (gtag.js) - Google Analytics