<table id="80gss"></table>
<menu id="80gss"><label id="80gss"></label></menu>
  • <object id="80gss"></object>
  • <small id="80gss"></small>
  • RELATEED CONSULTING
    相关咨询
    选择下列产品马上在线沟通
    服务时间:9:30-22:00
    你可能遇到了下面的问题
    关闭右侧工具栏
    大型网站架构技术一览
    • 作者:
    • 发表时间:2017-08-04 17:14
    • 来源:网络整理

    大型网站架构技术一览

    2016-02-03 分类:网站架构 阅读(9183) 评论(1)

    本站采用[知识共享署名-非商业性使用-相同方式共享 许可协议]进行许可,转载请在正文明显处注明原文地址

    大型网站的挑战主要来自庞大的用户,高并发的访问和海量数据,任何简单的业务一旦需要处理数以P计的数据和面对数以亿计的用户,问题就会变得棘手。大型网站架构主要就是解决这类问题。更多内容也可以阅读各大互联网公司架构演进之路汇总、大型网站架构演化历程两篇文章。

    本文内容大部分来自《大型网站技术架构》,这本书很值得一看,强烈推荐。

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

    20150507171005663

    1.前端架构

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

    浏览器优化技术

    并不是优化浏览器,而是通过优化响应页面,加快浏览器页面的加载和显示,常用的有页面缓存、合并HTTP减少请求次数、使用页面压缩等。

    CDN

    内容分发网络,部署在网络运营商机房,通过将静态页面内容分发到离用户最近最近的CDN服务器,使用户可以通过最短路径获取内容。

    动静分离,静态资源独立部署

    静态资源,如JS、CSS等文件部署在专门的服务器集群上,和Web应用动态内容服务分离,并使用专门的(二级)域名。

    图片服务

    图片不是指网站Logo、按钮图标等,这些文件属于上面提到的静态资源,应该和JS、CSS部署在一起。这里的图片指用户上传的图片,如产品图片、用户头像等,图片服务同样适用独立部署的图片服务器集群,并使用独立(二级)域名。

    反向代理

    部署在网站机房,在应用服务器、静态资源服务器、图片服务器之前,提供页面缓存服务。

    DNS

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

    2.应用层架构

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

    开发框架

    网站业务是多变的,网站的大部分软件工程师都是在加班加点开发网站业务,一个好的开发框架至关重要。一个号的开发框架应该能够分离关注面,使美工、开发工程师可以各司其事,易于协作。同时还应该内置一些安全策略,防护Web用攻击。

    页面渲染

    将分别开发维护的动态内容和静态页面模板集成起来,组合成最终显示给用户的完整页面。

    负载均衡

    将多台应用服务器组成一个集群,通过负载均衡技术将用户请求分发到不同的服务器上,以应对大量用户同时访问时产生的高并发负载压力。

    Session管理

    为了实现高可用的应用服务器集群,应用服务器通常设计为无状态,不保存用户请求上下文信息,但是网站业务通常需要保持用户会话信息,需要专门的机制管理Session,使集群内甚至跨集群的应用服务器可以共享Session。

    动态页面静态化

    对于访问量特别大而更新又不很频繁的动态页面,可以将其静态化,即生成一个静态页面,利用静态页面的优化手段加速用户访问,如反向代理、CDN、浏览器缓存等。

    业务拆分

    将复杂而庞大的业务拆分开来,形成多个规模较小的产品,独立开发、部署、维护,除了降低系统耦合度,也便于数据库业务分库。按业务对关系数据库进行拆分,技术难度相对较小,而效果又相对较好。

    虚拟化服务器

    将一台物理服务器虚拟化成多态虚拟服务器,对于并发访问较低的业务,更容易用较少的资源构架高可用的应用服务器集群。

    3.服务层架构

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

    分布式消息

    利用消息队列机制,实现业务和业务、业务和服务之间的异步消息发送及低耦合的业务关系。

    分布式服务

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

    分布式缓存

    通过可伸缩的服务器集群提供大规模热点数据的缓存服务,是网站性能优化的重要手段。

    分布式配置

    系统运行需要配置许多参数,如果这些参数需要修改,比如分布式缓存集群加入新的缓存服务器,需要修改应用程序客户端的缓存服务器列表配置,并重启应用程序服务器。分布式配置在系统运行期提供配置动态推送服务,将配置修改实时推送到应用系统,无需重启服务器。

    4.存储层架构

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

    分布式文件
    光大彩票(上海)有限公司 彩宝贝| 乐彩网| 9号彩票| 彩票巴巴| 彩99| 掌上彩| 彩吧助手| http://www.dmmr.com.cn http://www.al-aaa.com http://www.rizhaohanfu.com