大型网站架构及演化【1】-网站演化

本文介绍了大型网站架构的发展历程,从初始阶段的一台服务器到应用服务和数据服务分离,再到使用缓存、应用服务器集群、数据库读写分离等技术改善性能。此外还探讨了分布式文件系统、NoSQL、搜索引擎和业务拆分等高级主题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1大型网站软件的特点

高并发,大流量,高可用,海量数据,用户分布广泛,网络情况复杂,安全环境恶略,需求快速变更,发布频繁,渐进式发展

1.2 大型网站架构演化发展历程

1.2.1 初始阶段的网站架构

一台服务器

1.2.2 应用服务和数据服务分离

三台服务器:
应用服务器:需要更快更强大的CPU
文件服务器:更大的硬盘
数据库服务器:需要快速磁盘检索和数据缓存,更快的硬盘和更大的内存
缺点:用户数量的增多,数据库压力太大导致访问延迟,进而影响整个网站的性能

1.2.3 使用缓存改善网站性能

%80的业务访问集中在%20的数据上
网站使用的缓存分为两种:应用服务器上的本地缓存和缓存在专门的分布式缓存服务器上的远程缓存。
本地缓存:访问数据更快一些,缓存数据量有限
远程缓存:可以使用集群的方式,理论上可以做到不受缓存容量的限制
缺点:网站高峰期的时候,单一的应用服务器成为了整个网站的瓶颈

1.2.4 使用应用服务器集群改善网站的并发处理能力

使用集群式解决高并发,海量数据问题的常用手段,增加一台服务器分担原有服务器的访问及存储压力。通过负载均衡来调度服务器,可以将用户浏览器的访问请求分发到应用服务器集群中的任何一台服务器上,如果有跟多的用户,就添加更多的服务器

1.2.5 数据库读写分离

目前大部分的主流数据库都提供主从热备功能,通过配置两台数据库的主从关系,可以将一台数据库服务器的数据更新同步到另一台服务器上。一个数据库进行读操(从数据库)作,一个数据库进行写操作(主数据库)

1.2.6 使用反响代理和CDN加速网站响应

不同地区的用户访问网站时,速度差别很大,加速网站的访问速度。
CDN 服务器-》方向代理服务器-》负载均衡调度服务器
CDN和反向代理的基本原理都是缓存。

1.2.7 使用分布式文件系统和分布式数据库系统

将数据库服务器和文件服务器变成多个

1.2.8 使用NoSQL和搜索引擎

1.2.9 业务拆分

将一个网站拆分为不同的应用,每一个应用独立部署维护,通过消息队列进行数据分发。

1.2.10 分布式服务

将公用的业务服务提取出来,独立部署。由这些可复用的业务链接数据库,提供供用业务服务。

1.3 网站架构设计误区

1.3.1 一味追随大公司的解决方案

1.3.2 为了技术而技术

1.3.3 企图用技术解决所有问题

#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值