大型网站架构技术一览

2018-09-05 15:10:09 浏览数 (1)

大型网站架构技术一览

网站系统架构层次如下图所示:

1、  前端架构

前端指用户请求到达网站应用服务器之前经历的环节,通常不包含网站业务逻辑,不处理动态内容。

(1)    浏览器优化技术;

(2)    CDN;

(3)    动静分离,静态资源独立部署;

(4)    图片服务;

(5)    反向代理;

(6)    DNS:域名服务,将域名解析成IP地址,利用DNS可以实现DNS负载均衡,配置CDN也需要修改DNS,使域名解析后指向CDN服务器。

2、  应用层架构

应用层是处理网站主要业务逻辑的地方

(1)    开发框架;

(2)    页面渲染;

(3)    负载均衡;

(4)    Session管理;

(5)    动态页面静态化;

(6)    业务拆分;

(7)    虚拟化服务器;

3、  服务层架构

提供基础服务,供应用层调用,完成网站业务。

(1)    分布式消息:利用消息队列机制,实现业务与业务、业务和服务之间的异步消息发送及低耦合的业务关系;

(2)    分布式服务;提供高性能、低耦合、易复用、易管理的分布式服务,在网站实现面向服务架构(SOA);

(3)    分布式缓存:通过可伸缩的服务器集群提供大规模热点数据的缓存服务,是网站性能优化的重要手段;

(4)    分布式配置;

4、  存储层架构

提供数据、文件的持久化存储访问与管理服务。

(1)    分布式文件;

(2)    关系数据库;

(3)    NoSQL数据库;

(4)    数据同步;

5、  后台架构

网站应用中,除了要处理用户的实时访问请求外,还有一些后台非实时数据分析要处理。

(1)    搜索引擎:即使是网站内部的搜索引擎,也需要进行数据增量更新及全量更新、构建索引等。这些操作通过后台系统定时执行;

(2)    数据仓库:根据离线数据,提供数据分析与数据挖掘服务;

(3)    推荐系统:社交网站及购物网站通过挖掘任何人之间的关系,任何商品之间的关系,发觉潜在的人际关系和购物兴趣,为用户提供个性化推荐服务;

6、  数据采集与监控

监控网站访问情况与系统运行情况,为网站运营决策和运维管理提供支持保障。

(1)    浏览器数据采集:通过在网站页面中嵌入JS脚本采集用户浏览器环境与操作记录,分析用户行为;

(2)    服务器业务数据采集:服务器业务数据包括两种,一种是采集在服务端记录的用户请求操作日志;一种是采集应用程序运行期业务数据,比如待处理消息数目等;

(3)    服务器性能数据采集;

(4)    系统监控;

(5)    系统报警;

7、  安全架构

保护网站免遭攻击及敏感信息泄露。

(1)    Web攻击;

(2)    数据保护;

8、  数据中心机房架构

大型网站需要的服务器规模数以万计,机房物理架构也需要关注。

(1)    机房架构

(2)    机柜架构

(3)    服务器架构

0 人点赞