《大型网站技术架构》笔记(二)
2016-02-28 00:32
573 查看
一,大型网站软件系统的特点
高并发,大流量(pv)
高可用(不间断服务)
海量数据
用户分布广泛,网络情况复杂(各地网络运营商互通难)
安全环境恶劣(用户信息泄露)
需求快速变更,发布频繁
渐进式发展(从小到大,慢慢演化)
任何简单的业务需要数以p计的数据和上亿的用户,问题就变得很棘手
二,大型网站架构演化历程
一开始小型网站,一台服务器绰绰有余,应用程序、数据库、文件都在一台服务器上
随着业务发展,一台服务器访问性能差,存储空间小,应用服务和数据服务分离,分离后使用三台服务器,应用服务器处理逻辑需要好的cpu,数据库服务器需要磁盘索引和数据缓存,需要大硬盘和大内存,文件服务器需要大硬盘
随着用户量增加,数据库查询缓慢,80%的业务集中在20%的数据上(eg淘宝),把这20%的数据缓存在内存,缓存分两种,本地缓存和远程缓存,本地缓存访问速度快,但存在争用内存的情况,而远程缓存采用集群,不受内存限制
当一台应用服务器处理能力和存储不足时,不要企图换更强的服务器,因为再强的服务器也满足不了业务的增长。因此采用集群增加应用服务器数量,分担访问和存储需求,通过负载均衡服务器把请求分配到任何一台服务器
网站使用了缓存,但存在缓存不被命中,缓存过期等问题,还是要访问数据库,所以提出数据库主从关系,读写分离方案
中国复杂的网络环境,网络访问延迟,网站需要加速,主要手段是cdn和反向代理,实质都是缓存,区别在于cdn在距离自己最近的机房获取数据,而反向代理是在自己网站机房获取
分布式文件系统,分布式数据库系统
使用NoSql和搜索引擎
业务拆分
分布式服务
高并发,大流量(pv)
高可用(不间断服务)
海量数据
用户分布广泛,网络情况复杂(各地网络运营商互通难)
安全环境恶劣(用户信息泄露)
需求快速变更,发布频繁
渐进式发展(从小到大,慢慢演化)
任何简单的业务需要数以p计的数据和上亿的用户,问题就变得很棘手
二,大型网站架构演化历程
一开始小型网站,一台服务器绰绰有余,应用程序、数据库、文件都在一台服务器上
随着业务发展,一台服务器访问性能差,存储空间小,应用服务和数据服务分离,分离后使用三台服务器,应用服务器处理逻辑需要好的cpu,数据库服务器需要磁盘索引和数据缓存,需要大硬盘和大内存,文件服务器需要大硬盘
随着用户量增加,数据库查询缓慢,80%的业务集中在20%的数据上(eg淘宝),把这20%的数据缓存在内存,缓存分两种,本地缓存和远程缓存,本地缓存访问速度快,但存在争用内存的情况,而远程缓存采用集群,不受内存限制
当一台应用服务器处理能力和存储不足时,不要企图换更强的服务器,因为再强的服务器也满足不了业务的增长。因此采用集群增加应用服务器数量,分担访问和存储需求,通过负载均衡服务器把请求分配到任何一台服务器
网站使用了缓存,但存在缓存不被命中,缓存过期等问题,还是要访问数据库,所以提出数据库主从关系,读写分离方案
中国复杂的网络环境,网络访问延迟,网站需要加速,主要手段是cdn和反向代理,实质都是缓存,区别在于cdn在距离自己最近的机房获取数据,而反向代理是在自己网站机房获取
分布式文件系统,分布式数据库系统
使用NoSql和搜索引擎
业务拆分
分布式服务
相关文章推荐
- 《大型网站技术架构》笔记(一)
- Keepalived+HAProxy实现MySQL高可用负载均衡的配置
- discuz 网站空白怎么解决
- 大型分布式网站架构技术总结
- Varnish配置文件详解(架构师之路)
- 如何分析业务问题
- why+how+what
- 动态网站访问过程——php语言
- Android Camera Subsystem 架构(Binder机制)及显示分析
- heartbeat报错解决
- JavaScript全讲-架构原则解析
- 【Heritrix基础教程之3】Heritrix的基本架构
- Java集群--大型网站是怎样解决多用户高并发访问的
- 常用网站链接
- 大型网站架构系列:电商网站架构案例(1)
- 大型网站架构系列:消息队列(二)
- 大型网站架构系列:分布式消息队列(一)
- 大型网站架构系列:20本技术书籍推荐
- 信息安全学习的网站
- 用户画像的技术选型与架构实现