当前位置:文档之家› 大型网站技术架构方案总结及解析

大型网站技术架构方案总结及解析


Web前端系统 负载均衡系统 数据库集群系统 缓存系统 分布式存储系统 分布式服务器管理系统 代码分发系统
整个网站体系的高可靠性保证
数据库服务器和应用服务器分离 读写分离 主从同步、备份机制 读、写数据库集群 从数据库负载均衡: BigIP
Web前端系统 负载均衡系统 数据库集群系统 缓存系统 分布式存储系统 分布式服务器管理系统 代码分发系统
2013年9月
大型网站架构的目标与挑战 网站架构各子系统介绍 网站监控系统 讨论及总结
定义: IDtN (I don’t know, 没有统一标准。)
PV>1M 网站内容 “动态”
➢ 负载均衡 ➢ 数据备份 ➢ 异地容灾 ➢ 。。。
➢ 高速缓存 ➢ 并行计算 ➢ 异地镜像 ➢ 。。。
每个目标背后面临着技术、设计、维护等诸 多方面的挑战。 而目标本身的期望值也会根据实际情况进
Rsync (remote sync) 可以镜像保存整个目录树和文件系统; 可以很容易做到保持原来文件的权限、时间、软硬链接等等; 无须特殊权限即可安装; 快速、安全、支持匿名传输,以方便进行网站镜象。
大型网站架构的目标与挑战 网站架构各子系统介绍 网站监控系统 讨论及总结
Nagios (实时)
Web前端系统 负载均衡系统 数据库集群系统 缓存系统 分布式存储系统 分布式服务器管理系统 代码分发系统
大型网站解决高负荷访问和大量并发请求采用的 终极解决办法
➢ Http server ➢ Reverse Proxy ➢ Mail server ➢ LB server: >50,000 connection ➢ Bug free ➢ 7*24 ➢ Easy to upgrade ➢…
行调整,这也意味着网站架构建设是个不 断调整的过程
➢ 开发框架 ➢ 多层设计 ➢ 业务分割 ➢ 。。。
大型网站架构的目标与挑战 网站架构各子系统介绍 网站监控系统 讨论及总结
Web前 端系统 负 载均衡系统 数 据库集群系统 缓 存系统 分 布式存储系统 分 布式服务器管理系统 代 码分发系统
Web前端系统 负载均衡系统 数据库集群系统 缓存系统 分布式存储系统 分布式服务器管理系统 代码分发系统
存储量很大:相册、视频
负载均衡cluster中的每个节点操作的数据从逻 辑上看只能是一个整体,不是各自独立的数据 资源
开源的轻量级分布式文件系统 文件存储、文件同步、文件访问 动态添加,方便扩充
Web动、静分离 CDN、GAD
浏览器缓存:
➢ Header参数 ➢ HTTP1.1协议 ➢ +GET、-POST ➢ Content-Encoding、 gzip ➢ +Cookie、- Sessions, AJAX ➢ PLUGIN ➢ HTML5
能够让浏览器缓存的数据一定要缓存;浏览器能够处 理的运算,决不放在服务器端来处理。
Munin (趋势)
Drraw (汇聚)
大型网站架构的目标与挑战 网站架构各子系统介绍 网站监控系统 讨论及总结
大型网站架构是怎么样子的? 存在万能的架构吗?架构本质是什么? 网站架构如何选型?开发语言重要吗?
架构只是浮云?神马才是重要的?。。。
Thank you ! Q&A
Web前端系统 负载均衡系统 数据库集群系统 缓存系统 分布式存储系统 分布式服务器管理系统 代码分发系统
目标:
集中式的、分组的、批量的、自动化的对服务器进行管理,能 够批量化的执行计划任务
高效的实现大规模的服务器集群管理
执行基于策略的配置管理 完成后期安装任务,例如配置网络界面信息; 编辑系统配置文件以及其它文件; 管理系统服务器进程; 检验、更正文件许可及所有权; 删除无用文件、压缩被选文件、在网络中分发文件; 自动挂载NFS文件系统; 检查重要文件和文件系统是否存在及其完整性。 执行命令及脚本。 应用安全相关的补丁以及相似系统的修正。 。 。。
缓存分为文件缓存、内存缓存、数据库缓存。在大型 Web应用中使用最多且效率最高的是内存缓存
数据库缓存
➢ Query Cache ➢ Data Buffer ➢ App server cache
前端页面缓存
采用具备缓存功能的http反向代理服务器作前端页面缓 存器, Varnish\Squid\Ncache\AiCache(商业)…【硬件F5】
Web前端系统 负载均衡系统 数据库集群系统 缓存系统 分布式存储系统 分布式服务器管理系统 代码分发系统
开发环境内测环境公测环境生产环境 源代码管理和版本控制

SVN: 管理方便,逻辑明确,符合一般人思维习惯; 易于管理,集中式服务器更能保证安全性; 代码一致性非常高,更新速度快; 适合开发人数不多的项目开发; 学习成本低,快速上手
相关主题