高并发大型网站架构设计

一个大型的网站网站应该由如下6个子系统组成

负载均衡系统

反向代理系统

Web服务器系统

分布式存储系统

底层服务系统

数据库集群系统

为什么要做高并发系统设计?

事实上,针对于任何单一的网络服务器程序,其可承受的同时连接数目是有理论峰值的,通过C++中对TSocket的定义类型:word,我们可以判 定这个连接理论峰值是65535,也就是说,你的单个服务器程序,最多可以承受6万多的用户同时连接。但是,在实际应用中,能达到一万人的同时连接并能保 证正常的数据交换已经是很不容易了,通常这个值都在2000到5000之间,能达到上万已经很不错了。目前的门户网站动辄几千万的访问量,所以,高并发的 系统架构在所难免。

整体架构

真实中的网站架构也许并不如此也可以实现高性能。但是高性能的网站莫不过如此。如下图所示。

第一 负载均衡系统

负载均衡系统分为硬件和软件两种。

硬件负载均衡效率高,但是价格贵,比如F5等。

软件负载均衡系统价格较低或者免费,效率较硬件负载均衡系统低,不过对于流量一般或稍大些网站来讲也足够使用,比如lvs。

第二 反向代理系统

目前普遍使用Squid或者nginx,或者Lighttpd,Varish。

这四者又各自有很大的差异。

Squid:主要用来做反向代理,使用内存+硬盘

Nginx:可以反向代理+负载均衡+WWW解析

Lighttpd:反向代理能力一般,处理FastCGI比较好,消耗内存很小

Varish:主要做内存的反向代理,性能最优

第三 Web服务器系统

由Apache负责解析PHP内容,也可以用Nginx,或者Lighttpd,相对来说Apache比较稳定。

第四 分布式存储系统

存储量很大,经常会达到单台服务器无法提供的规模,比如相册、视频等应用。因此需要专业的大规模存储系统。

第五 底层服务系统

根据各自需要由C/C++开发设计供上层CGI调用。

第六 数据库系统

1)使用MySQL数据库,考虑到Web应用的数据库读多写少的特点,我们主要对读数据库做了优化,提供专用的读数据库和写数据库,在应用程序中实现读操作和写操作分别访问不同的数据库。

2)使用同步机制实现快速将主库(写库)的数据库复制到从库(读库)。一个主库对应多个从库,主库数据实时同步到从库。

3)写数据库有多台,每台都可以提供多个应用共同使用,这样可以解决写库的性能瓶颈问题和单点故障问题。

高并发大型网站架构设计

时间: 2024-08-27 01:32:47

高并发大型网站架构设计的相关文章

高并发高流量的网站架构设计 (转)

Web2.0的兴起,掀起了互联网新一轮的网络创业大潮.以用户为导向的新网站建设概念,细分了网站功能和用户群,不仅成功的造就了一大批新生的网站,也极大的方便了上网的人们.但Web2.0以用户为导向的理念,使得新生的网站有了新的特点——高并发,高流量,数据量大,逻辑复杂等,对网站建设也提出了新的要求. 本文围绕高并发高流量的网站架构设计问题,主要研究讨论了以下内容: 首先在整个网络的高度讨论了使用镜像网站,CDN内容分发网络等技术对负载均衡带来的便利及各自的优缺点比较.然后在局域网层次对第四层交换技

亿级数据的高并发通用搜索引擎架构设计(转-张宴)

[文章作者:张宴 本文版本:v1.0 最后修改:2008.12.09 转载请注明原文链接:http://blog.zyan.cc/post/385/] 曾经在七月,写过一篇文章──<基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计>, 前公司的分类信息搜索基于此架构,效果明显,甚至将很大一部分带Where条件的MySQL SQL查询,都改用了Sphinx+MySQL搜索.但是,这套架构仍存在局限:一是MySQL本身的并发能力有限,在200-300个并发连接下,查询 和更新就

大型网站架构设计(图)

=>传统网站架构与优化(图) 大型网站架构设计(图)

高并发大访问量架构设计演进之路 归纳总结

第01:大型架构的演进之路第02(上):分布式缓存第02(下):分布式缓存第03:分布式消息队列第04:分布式数据存储第05:分布式服务框架第06:高性能系统架构第07:高可用系统架构第08:系统的安全架构第09:架构实战案例分析第10:如何成为技术专家 系统的垂直伸缩,水平伸缩系统的性能瓶颈:分部式缓存:分布式数据存储,分布式服务架构: 强烈的好奇心,工程技术,产生价值赚钱(科学研究不同)扎实的软件技术基础:操作系统,数据结构,设计模式,编程语言,出色的编程能力:优秀的代码深刻领悟主流技术产品

大型网站架构设计方向初探

一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构.性能的要求都很简单,随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件.编程语言.数据库.WebServer.防火墙等各个领域都有了很高的要求,已经不是原来简单的html静态网站所能比拟的. 大型网站,比如门户网站.在面对大量用户访问.高并发请求方面,

[转]大型网站架构的优化与架构演变(整理)

=============大型网站架构的优化===================== 一个小型的网站,比如个人 网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构.性能的要求都很简 单,随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬 件到软件.编程语言.数据库.WebServer.防火墙等各个领域都有了很高的要求,已经不是原来简

《大型网站技术架构》读书笔记一:大型网站架构演化

一.大型网站系统特点 (1)高并发.大流量:PV量巨大 (2)高可用:7*24小时不间断服务 (3)海量数据:文件数目分分钟xxTB (4)用户分布广泛,网络情况复杂:网络运营商 (5)安全环境恶劣:黑客的攻击 (6)需求快速变更,发布频繁:快速适应市场,满足用户需求 (7)渐进式发展:慢慢地运营出大型网站 二.大型网站架构演化过程 (1)初始阶段网站架构:一台Server就刚需-应用程序.数据库.文件等所有资源都集中在一台Server上,典型案例:基于LAMP架构的PHP网站 (2)应用和数据

大型网站架构演化

一.大型网站系统特点 (1)高并发.大流量:PV量巨大 (2)高可用:7*24小时不间断服务 (3)海量数据:文件数目分分钟xxTB (4)用户分布广泛,网络情况复杂:网络运营商 (5)安全环境恶劣:黑客的攻击 (6)需求快速变更,发布频繁:快速适应市场,满足用户需求 (7)渐进式发展:慢慢地运营出大型网站 二.大型网站架构演化过程 (1)初始阶段网站架构:一台Server就刚需—应用程序.数据库.文件等所有资源都集中在一台Server上,典型案例:基于LAMP架构的PHP网站 (2)应用和数据

读书笔记1: 大型网站架构演化

大型网站系统的特点 高并发,大流量,PV巨大 高可用,7*24 海量数据,P级别 用户分布广泛,网络情况复杂,不同运营商 安全环境恶劣,黑客攻击 需求快速变更,发布频繁,快速跟进市场,需求变更快 渐进式发展,从小网站一步一步进化 ? 大型网站架构的演化历程 初始阶段网站架构,一台服务器, 一台Server就部署-应用程序.数据库.文件等所有资源都集中在一台Server上,典型案例:基于LAMP架构的PHP网站 应用服务和数据库服务分离, 三台Server平天下-业务发展,单台不再适应业务的发展,