大型网站技术架构方案2013年9月大型网站架构的目标与挑战(2)每个目标背后面临着技术、设计、维护等诸多方面的挑战。而目标本身的期望值也会根据实际情况进行调整,这也意味着网站架构建设是个不断调整的过程负载均衡数据备份异地容灾。。。高速缓存并行计算异地镜像。。。开发框架多层设计业务分割。。。网站架构各子系统介绍Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统一个典型的大型网站架构图Web前端系统Web动、静分离CDN、GAD浏览器缓存:Header参数HTTP1.1协议+GET、-POSTContent-Encoding、gzip+Cookie、-Sessions,AJAXPLUGINHTML5能够让浏览器缓存的数据一定要缓存;浏览器能够处理的运算,决不放在服务器端来处理。网站架构各子系统Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统负载均衡系统大型网站解决高负荷访问和大量并发请求采用的终极解决办法8代码分发系统:SVN+RsyncSVN:管理方便,逻辑明确,符合一般人思维习惯;易于管理,集中式服务器更能保证安全性;代码一致性非常高,更新速度快;适合开发人数不多的项目开发;学习成本低,快速上手Rsync(remotesync)可以镜像保存整个目录树和文件系统;可以很容易做到保持原来文件的权限、时间、软硬链接等等;无须特殊权限即可安装;快速、安全、支持匿名传输,以方便进行网站镜象。负载均衡系统:NginxHttpserverReverseProxyMailserverLBserver:50,000connectionBugfree7*24Easytoupgrade…网站架构各子系统介绍Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统数据库集群系统整个网站体系的高可靠性保证数据库集群系统:Mysql数据库服务器和应用服务器分离读写分离主从同步、备份机制读、写数据库集群从数据库负载均衡:BigIP网站架构各子系统介绍Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统缓存系统缓存分为文件缓存、内存缓存、数据库缓存。在大型Web应用中使用最多且效率最高的是内存缓存缓存系统数据库缓存QueryCacheDataBufferAppservercache前端页面缓存采用具备缓存功能的http反向代理服务器作前端页面缓存器,Varnish\Squid\Ncache\AiCache(商业)…【硬件F5】网站架构各子系统介绍Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统分布式存储系统存储量很大:相册、视频负载均衡cluster中的每个节点操作的数据从逻辑上看只能是一个整体,不是各自独立的数据资源分布式存储系统:FastDfs开源的轻量级分布式文件系统文件存储、文件同步、文件访问动态添加,方便扩充19网站架构各子系统介绍Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统分布式服务器管理系统目标:集中式的、分组的、批量的、自动化的对服务器进行管理,能够批量化的执行计划任务高效的实现大规模的服务器集群管理21分布式服务器管理系统:Cfengine执行基于策略的配置管理完成后期安装任务,例如配置网络界面信息;编辑系统配置文件以及其它文件;管理系统服务器进程;检验、更正文件许可及所有权;删除无用文件、压缩被选文件、在网络中分发文件;自动挂载NFS文件系统;检查重要文件和文件系统是否存在及其完整性。执行命令及脚本。应用安全相关的补丁以及相似系统的修正。。。。22网站架构各子系统介绍Web前端系统负载均衡系统数据库集群系统缓存系统分布式存储系统分布式服务器管理系统代码分发系统代码分发系统开发环境内测环境公测环境生产环境源代码管理和版本控制24Thankyou!Q&A