网站架构伸缩性概论

所谓网站的伸缩性是指不需要改变网站的软硬件设计,仅仅通过改变部署的服务器数量就可以扩大或者缩小网站的服务处理能力。

大型网站的“大型”,在用户层面可以理解为大量用户及大量访问,如Facebook有超过10亿用户;

在功能方面可以理解为功能庞杂、产品众多,如腾讯有超过1600种产品;

在技术方面可以理解为网站需要部署大量的服务器,如Google有近100万台服务器。

大型网站不是一开始就是大型网站的,而是从小型网站逐步演化而来,Google诞生的时候也只有一台服务器。

设计一个大型网站和设计一个大型软件系统,和将一个小网站逐渐演化成一个大网站,其技术方案是完全不同的。

前者如银行系统在设计之初就决定了银行的规模,如要服务的用户数,要处理的交易数等,

然后采购大型计算机等昂贵的设备,将软件系统部署在上面,即成为一个大型系统,

如果有一天这个系统不能满足需要求,那就打造一个更大规模的系统。

而网站不可能一开始就规划出自己的规模,也不可能有如此多的资金去开发一个大型系统,

更不可能到了某个阶段再重新打造一个系统,只能摸着石头过河,从一台廉价的PC服务器开始自己的大型系统演化之路。

在这个渐进式的演化过程中,最重要的技术手段就是使用服务器集群,通过不断的向集群中添加服务器来增强整个集群的处理能力。

这就是网站系统的伸缩性架构,只要技术上能做到向集群中加入服务器的数量和集群的处理能力呈线性关系,

那么网站就可以以此手段不断的提升自己的规模,从一个服务十几人的小网站到服务几亿人的大网站。

这个演化过程整体来说是渐进式的,而且总是在“伸”,也就是说网站的规模和服务器的规模总是在不断的扩大。

但是这个过程中也可能因为运营上的需要而出现脉冲,比如说一个电商网站在进行促销活动时,

网站的访问量和交易量爆炸增长,之后又回到正常状态。

这时就需要网站的技术架构有极好的伸缩性,活动开始时增加服务器满足需求,活动结束时将服务器顺利下线。

后面我们会从应用服务器集群的伸缩性设计、分布式缓存集群的伸缩性设计、数据存储服务器的伸缩性设计这个单个方面来说明。

原文地址:https://www.cnblogs.com/yangmingxianshen/p/8449135.html

时间: 2024-08-30 16:28:12

网站架构伸缩性概论的相关文章

《大型网站技术架构》读书笔记之六:永无止境之网站的伸缩性架构

此篇已收录至<大型网站技术架构>读书笔记系列目录贴,点击访问该目录可获取更多内容. 首先,所谓网站的伸缩性,指不需要改变网站的软硬件设计,仅仅通过改变部署的服务器数量就可以扩大或者缩小网站的服务处理能力.在整个互联网行业的发展渐进演化中,最重要的技术就是服务器集群,通过不断地向集群中添加服务器来增强整个集群的处理能力. 一.网站架构的伸缩性设计 1.1 不同功能进行物理分离实现伸缩 (1)纵向分离:将业务处理流程上得不同部分分离部署,实现系统的伸缩性: (2)横向分离:将不同的业务模块分离部署

软件架构设计学习总结(12):大型网站技术架构(六)网站的伸缩性架构

网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力."伸"即网站的规模和服务器的规模总是在不断扩大. 1.网站架构的伸缩性设计 网站的伸缩性设计可以分成两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩.前者是不同的服务器部署不同的服务,提供不同的 功能:后者是集群内的多台服务器部署相同的服务,提供相关的功能. 1.1 不同功能进行物理分离实现伸缩 纵向分离:即分层后分离,将业务处理流程上的不同部分分离

大型网站技术架构——网站架构的伸缩性设计

首先,所谓网站的伸缩性,指不需要改变网站的软硬件设计,仅仅通过改变部署的服务器数量就可以扩大或者缩小网站的服务处理能力.在整个互联网行业的发展渐进演化中,最重要的技术就是服务器集群,通过不断地向集群中添加服务器来增强整个集群的处理能力. 一.网站架构的伸缩性设计 1.1 不同功能进行物理分离实现伸缩 (1)纵向分离:将业务处理流程上得不同部分分离部署,实现系统的伸缩性: (2)横向分离:将不同的业务模块分离部署,实现系统的伸缩性: 1.2 单一功通过集群规模实现伸缩 使用服务器集群,即将相同服务

大型网站技术架构(六)--网站的伸缩性架构(转)

网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力.“伸”即网站的规模和服务器的规模总是在不断扩大. 1.网站架构的伸缩性设计 网站的伸缩性设计可以分成两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩.前者是不同的服务器部署不同的服务,提供不同的 功能:后者是集群内的多台服务器部署相同的服务,提供相关的功能. 1.1 不同功能进行物理分离实现伸缩 纵向分离:即分层后分离,将业务处理流程上的不同部分分离部署,实现

大型网站技术架构(六)--网站的伸缩性架构

网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力.“伸”即网站的规模和服务器的规模总是在不断扩大. 1.网站架构的伸缩性设计 网站的伸缩性设计可以分成两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩.前者是不同的服务器部署不同的服务,提供不同的 功能:后者是集群内的多台服务器部署相同的服务,提供相关的功能. 1.1 不同功能进行物理分离实现伸缩 纵向分离:即分层后分离,将业务处理流程上的不同部分分离部署,实现

读书笔记6网站的伸缩性架构

首先,所谓网站的伸缩性,指不需要改变网站的软硬件设计,仅仅通过改变部署的服务器数量就可以扩大或者缩小网站的服务处理能力.在整个互联网行业的发展渐进演化中,最重要的技术就是服务器集群,通过不断地向集群中添加服务器来增强整个集群的处理能力. 一.网站架构的伸缩性设计 1.1 不同功能进行物理分离实现伸缩 (1)纵向分离:将业务处理流程上得不同部分分离部署,实现系统的伸缩性: (2)横向分离:将不同的业务模块分离部署,实现系统的伸缩性:单一功能通过集群实现伸缩,多台机器部署相同的功能 1.2 单一功通

网站的伸缩性架构--一

所谓网站的伸缩性是指不需要改变网站的软硬件设计,仅通过改变部署的服务器数量就可以扩大或缩小网站的服务处理能力. 1.网站架构的伸缩性设计 网站的伸缩性设计分为两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩.前者是不同服务器部署不同的服务,提供不同的功能:后者是集群内的服务器部署相同的任务,提供相同的功能. 1.1不同功能进行物理分离实现伸缩 分层后分离(横向分离):将业务处理流程上的不同部分分离部署,实现系统伸缩性. 业务分割后分离(纵向分离):将不同的业务模块分离部署

网站架构的伸缩性设计

回顾网站架构发展历程,网站架构发展史就是一部不断向网站添加服务器的历史,只要工程师能向网站的服务器集群中添加新的机器, 只要新添加的服务器能线性提高网站的整体服务处理能力,网站就无需为不断增长的用户和访问而焦虑. 一般来说网站的伸缩性设计可分为两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩. 前者是不同的服务器部署不同的服务,提供不同的功能:后者是集群内的多台服务器部署相同的服务,提供相同的功能. 1.不同功能进行物理分离实现伸缩 网站发展早期--通过增加服务器提高网站

(转)大型网站架构系列:电商网站架构案例(1)

大型网站架构是一个系列文档,欢迎大家关注.本次分享主题:电商网站架构案例.从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型.除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标). 根据实际需要,进行改造,扩展,支持千万PV,是没问题的. 本次分享大纲 电商案例的原因 电商网站需求 网站初级架构 系统容量估算 网站架构分析 网站架构优化 架构总结 电商网站案例,一共有三篇本篇主要说明网站的需求,网站初始架构,系统容量估算方法. 一.电商