网站的伸缩性架构--一

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

  1.网站架构的伸缩性设计

网站的伸缩性设计分为两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩。前者是不同服务器部署不同的服务,提供不同的功能;后者是集群内的服务器部署相同的任务,提供相同的功能。

  1.1不同功能进行物理分离实现伸缩

分层后分离(横向分离):将业务处理流程上的不同部分分离部署,实现系统伸缩性。

业务分割后分离(纵向分离):将不同的业务模块分离部署。

  1.2单一功能通过集群规模实现伸缩

将相同服务部署在多台服务器上构成一个集群整体对外提供服务。集群伸缩性又可以分为应用服务器集群伸缩性和数据服务器集群伸缩性。

  2.应用服务器集群的伸缩性设计

实现负载均衡的基础技术主要包括以下几种:

  2.1HTTP重定向负载均衡

HTTP重定向服务器是一台普通的应用服务器,其唯一的功能就是根据用户的HTTP请求计算一台真实的Web服务器地址,并将Web服务器地址写入HTTP重定向相应中(响应状态码为302)返回给浏览器。这种负载均衡方案的优点是比较简单。缺点是浏览器需要发送两次请求服务才能完成一次访问性能较差;重定向服务器自身的处理能力有限可能成为性能瓶颈,整个集群的伸缩性规模有限;使用HTTP302响应码重定向,有可能使搜索引擎判断为SEO作弊,降低搜索排名。

  2.2DNS域名解析负载均衡

  利用DNS处理域名解析请求的同时进行负载均衡处理的一种方案。

每次域名解析请求都会根据负载均衡算法计算一个不同的IP地址返回,这样A记录中配置的多个服务器就构成了一个集群,并可以实现负载均衡。

  2.3反向代理负载均衡

反向代理服务器处于Web服务器前端,管理一组Web服务器,将请求根据负载均衡算法转发到不同的Web服务器上。Web服务器处理完成的响应也需要通过反向代理服务器返回给用户。由于Web服务器不直接对外提供服务,因此Web服务器不需要使用外部IP地址,而反向代理服务器则需要配置双网卡和内部外部两套IP地址。

  由于反向代理服务器转发请求在HTTP协议层面,因此也叫应用层负载均衡。其优点是和反向代理服务器功能集成在一起,部署简单。缺点是反向代理服务器是所有请求和相应的中转站,其性能会成为瓶颈。

  2.4IP负载均衡

在网络层通过修改请求目标地址进行负载均衡。

  2.5数据链路层负载均衡

  数据链路层负载均衡是指在通信协议的数据链路层修改mac地址进行负载均衡

  2.6负载均衡算法

时间: 2024-11-09 02:49:50

网站的伸缩性架构--一的相关文章

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

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

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

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

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

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

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

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

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

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

学习笔记7:《大型网站技术架构 核心原理与案例分析》之 永无止境:网站的伸缩性架构 【李智慧 著】

伸缩性:不需要改变网站的软硬件设计,仅仅通过改变部署的服务器的数量就可以扩大或者缩小系统的服务处理能力. 最重要的技术手段是服务器集群,能做到向集群中加入服务器的数量和集群的处理能力成线性关系. 一.伸缩性设计 1.不同功能进行物理分离实现伸缩:数据库分离,缓存分离,静态资源分离 纵向分离:数据库,基础技术服务,可复用业务服务,网站具体产品 横向分离:各个业务模块分离,横向分离的力度可以非常小,甚至一个关键性网页部署一个独立服务,比如电商网站非常重要的产品详情页面,商铺页面,搜索列表页面. 2.

大型网站技术架构,6网站的伸缩性架构之分布式缓存集群的伸缩性设计

和所有服务器都部署相同应用的应用服务器集群不同,分布式缓存服务器集群中不同的服务器中缓存的数据各不相同,缓存访问请求不可以在缓存服务器集群中的任意一台处理,必须先找到缓存有需要数据的服务器,然后才能访问. 这个特点制约了分布式缓存集群的伸缩性设计,因为新上线的缓存服务器没有缓存任何数据,而已下线的缓存服务器还缓存这网站的许多热点数据. 必须让新上线的缓存服务器对整个分布式缓存集群影响最小,也就是说新加入的缓存服务器应使整个缓存服务器集群中已经缓存的数据尽可能还被访问到,这是分布式缓存集群伸缩性设

大型网站技术架构(七)--网站的可扩展性架构

大型网站技术架构(一)--大型网站架构演化 大型网站技术架构(二)--架构模式 大型网站技术架构(三)--架构核心要素 大型网站技术架构(四)--网站的高性能架构 大型网站技术架构(五)--网站高可用架构 大型网站技术架构(六)--网站的伸缩性架构 扩展性是指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力. 设计网站可扩展架构的核心思想是模块化,并在此基础上,降低模块间的耦合性,提供模块的复用性.模块通过分布式部署,独立的模块部署在独立的服务器上(集群)从物理上分离模块之间的耦合关系

大型网站技术架构(八)--网站的安全架构

大型网站技术架构(一)--大型网站架构演化 大型网站技术架构(二)--架构模式 大型网站技术架构(三)--架构核心要素 大型网站技术架构(四)--网站的高性能架构 大型网站技术架构(五)--网站高可用架构 大型网站技术架构(六)--网站的伸缩性架构 大型网站技术架构(七)--网站的可扩展性架构 从互联网诞生起,安全威胁就一直伴随着网站的发展,各种Web攻击和信息泄露也从未停止.常见的攻击手段有XSS攻击.SQL注入.CSRF.Session劫持等. 1.XSS攻击 XSS攻击即跨站点脚本攻击(C