大型网站的特点:高并发面对高并发用户,大流量访问,淘宝2012双十一活动开始一分钟独立访问用户达到1000万。
高可用:7*24小时不断间的服务。
海量数据:需要存储 管理海量的数据 需要使用大量的服务器 facebook每周上传的照片接近10亿。
安全环境恶劣:由于互联网的开放性 使得互联网网站更容易受到攻击 大型的网站几乎每天都会被黑。
需求快速变更 发布频繁:office产品以年为单位发布 一般大型网站以周发布 中小型网站发布就更加的频繁了 有时候一天可以发布十几次
渐进式发展:从小型的王章慢慢演化为大型网站 比如Google第一台的服务器部署在斯坦福大学的实验室里。
大型网站的发展历程:小型网站的结构:操作系统linux 应用程序使用php 数据库mysql
随着业务的增加 越来越多的用户访问导致性能越来越差 越来越多的数据导致数据库的空间不足 这时需要应用和数据分离
分离后需要使用三台服务器 分别是:应用服务器 文件服务器和数据库服务器
应用服务器: 需要处理大量的业务逻辑,因此需要强大的CPU
数据库服务:需要快速磁盘检索和数据缓存,因此需要更快的硬盘和更大的内存
文件服务器:需要存储大量用户上传的文件,因此需要更大的硬盘
缓存:
缓存就是将数据放在离计算机最近的位置以加快处理的速度
使用缓存改善网站的性能:大部分的人只有一小部分的人会经常发微博 就把这一小部分的人的数据缓存在内存中,这样就减少数据库的压力了
网站使用的缓存可以分为两种:缓存在应用服务器上的本地缓存和缓存在专门的分布式缓存服务器上的远程缓存
本地缓存:本地缓存的访问速度更快一些但是受应用服务器内存限制,缓存数据有限,而且会出现和应用程序争用内存的情况
远程缓存:远程分布式缓存可以使用集群的方式部署大内存的服务器作为专门的缓存服务器,可以在理论上做到不受内容,容器限制的缓存服务