门户网站架构设计文档_第1页
门户网站架构设计文档_第2页
门户网站架构设计文档_第3页
门户网站架构设计文档_第4页
门户网站架构设计文档_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载门户网站架构设计文档门户网站架构 网站 架构前台门户网站架构设计方案门户网站架构目录 12 3设计思路 3系 统 结构3网络规划及性能计算错误!未定义书签。网络架构网络架构说错误!未定义书签。采用双防火墙双交换机做网络冗精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 5 余, 保 障 平 台 服务络 衡 8 算采用硬件设备负载均衡器,实现网系 统 测流 量 的 负 载 均错误!未定义书签。 系统处理能力要求34业务 处 理 能 力要求错误!未定义书签。系统话务模错误!未定义书签。配置核算错误!未定义书签。 数据库服务

2、器性能核算精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 2 错误!未定义书签。WEB服务 器 集 群 性 能 核错误!未定义书签。WEB服务集群内存性能核算.宽错误!未定义书签。 网络带35 4性能模拟测试及性能推错误!未定义书签试垣错误!未定义书签。测试结O错误!未定1个客户端模拟不同线和并发误!未定义书签。10个客户端请精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载求错误!未定义书签。结果分析错误!未定义书签。根据测试结果推算错误!未定义书签。设备清单35 硬件设备配置清单错误!未定义书签。设备技术规格错误!未定义书签。平 台 扩 容 的 建议35网站架构

3、门户网站架构 1网站的性能瓶颈分析精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 4 网站的性能影响因素很多,下面主要从 如下4个方面进行分析说明:1)网络 负载 a)公网负载b)内网负载2) WEB应用服务器性能 a) CPU b)存储,I/O访问c)内存 d)并发 TCP/IP连接数3)数据库服务器性能 a)数据库参数配置 b)服务器性能 c)数据结构的合理性 4)不同 WEB应用的处理方式而对不同的性能 瓶颈 a)对于静态的网站:静态的HTML页面严格地标准的HTML标 示语言构成,并不需要服务器端即时运 算生成。这意味着,对一个静态HTML文档发出访问请求后,服务器端只

4、是简 单地将该文档传输到客户端。从服务器 运行的那个时间片来看,这个传输过程 仅仅占用了很小的CPU资源。对于静态 HTML的访问瓶颈为:网络带宽、磁盘 I/O以及cached速缓冲存储器)。b)对 于动态页面因为服务器解析动态页面必须在其传输到客户端前就通过服 务器来进行解释,这样就会给应用服务 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 5 器添加额外的性能消耗,如果进一步要 访问数据库,则会增加数据库服务器的 性能消耗,则动态页面还有额外的瓶颈: 应用服务器的性能,数据库服务器的性 能。 2系统架构设计总体思路 为提高网站的高并发性能,提高 开发效率及运营效率,主要按

5、如下几个思 路进行规划设计:负载均衡 1)四 层交换负载均衡:采用负载均衡器来实现硬件级的四层交换负载均衡,或 采用LVS来实现软件的四层交换负载均 衡。 网站架构 门户网站架构 2)通过第三方软件来实现负载均衡,同 时实现页面请求的缓存。通过Nginx实现反向代理服务器集群,同时搭 建squid集群以作为静态页面和图片的 缓存。 3)通过web服务器的配置 来实现负载均衡即通过apache或是Nginx将客户请求均衡的分给 tomcat1,tomcat2去处理。WEB 应用开发架构思路1)应用开发实现MVC架构三层架构进行web应用开发 精选公文范文,管理类,工作总结类,工作计划类文档,感谢

6、阅读下载 6 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=2)页面尽可能静态化以减少动态数据 访问,如果是资讯类的网站可以考虑采 用第三方开源的CMS系统来生成静态的内容页面。3)采用Oscache实现页面缓存,采用Memcached实现数 据缓存4)采用独立的图片服务器集群 来实现图片资源的存储及WEB请求数据存储的设计思路1)数据库拆分,把生产数据库和查询数据库分离,对 生产数据库采用 RAC实现数据库的集 群。 2)采用高效的网络文件共享 策略,采用图片服务器来实现页面的图 片存储。 不同网络用户访问考虑 1)通过引入CDN来解决不同网络服务 商的接入速度问题,一般

7、只能解决静态 页面的访问问题。 2)在不同运营商机 房部署服务器,通过镜像技术来实现不 同网络服务商的接入速度问题。 网站架构门户网站架构总体架构网站的系统分层架构硬件四层交换软件四层交换负载均衡器 LVSNginx proxySquidNginx cache 负载 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 7 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=均衡反向代理软件WEB服务SquidcacheApacheTomatControlTomatWEB 服务器架构MVC应用架构应用级缓存 Model数据持久层(ibatis)页 面缓存 (OSCach

8、e)View数据缓存(Memcached直 询数据库数据存储文件共享NFSHDFS 数据库生产数据库网站架构门户网站架构网站的物理架构 Internet用户浏览页面 负载均衡器1服务器1服务器2服务器 3服务器2代理服务器集群服务器n服务 器2服务器1服务器2服务器1服务器 2服务器1服务器2服务器1服务器n 图片服务器集群Web服务器集群AWeb 服务器集群BSquid服务器集群网站架构 门户网站架构网站的开发架构通讯层消息中心业务层WEB服务器持久层数据层数据存储 SMSMMSWAP PUSH 基于 struts 的 MVC 框架 ControlORMI/O 文件存储 HDFS数据库消息中

9、心WEB容器请求ibatis数据ViewModelDB连接池生产数 据库 JDBC 页面缓存 ApacheTomat.Tomat短信群发器彩信群 发器C3p0生产数据库业务支撑模块后 台支撑模块HTML静态化模块统计支撑 模块查询数据库网站架构 门户网站架构网络拓扑结构Internet主防火墙备防火墙主交换机 VRRP备交换机负载均衡器1负载均衡 器2服务器2服务器1服务器n服务器 1月艮务器n月艮务器2服务器2服务器2. 服务器2服务器1服务器n服务器1服 务器n服务器1服务器n服务器1服务 器2代理服务器集群网站服务器集群图 片服务器集群应用服务器集群光纤交换 机生产DB服务器集群查询DB

10、服务器组 管理终端光纤交换机磁盘阵列柜磁盘阵 列柜备注:1)采用双防火墙双交换机做网络冗余,保障平台服务 采用双防火墙通知接通2线路互联网接 入,设备之间采用 VRRP协议,在任何 一个防火墙、互联网发生故障后均可自动将流量切换到另一端,保证网站的正 运行,设备或网络恢复后,自动恢复。 采用双千兆交换机分别接在 2台防火墙 上,当某台设备或者网络链路发生故障 后,好设备自动接管已坏设备的工作, 不影响网站的整体运行,根据业务及真 实服务器的数量,交换机可以随时增加。 2)采用硬件设备负载均衡器,实现网络 流量的负载均衡使用硬件设备负载均衡器,将网络流量均衡的分担到 WEB服务器集群各节点服务器

11、,保障平 台服务器资源均衡的使用。3)采用代理服务器,实现软件级的网络负载 均衡。4)数据库服务器分离成生产数据库集群和查询数据库集群,实现 生产读写与后台查询统计进行分离,同时生产数据库采用 rac技术进行 网站架构门户网站架构 架构涉及技术的详解负载均衡 1.基于DNS的负载均衡-一个域名绑定多 个IP DNS负载均衡技术是最早的 负载均衡解决方案,它是通过DNS服务中的随机名字解析来实现的,在DNS服 务器中,可以为多个不同的地址配置同 一个名字,而最终查询这个名字的客户 机将在解析这个名字时得到其中的一个 地址。因此,对于同一个名字,不同的 客户机会得到不同的地址,它们也就访 问不同地

12、址上的 Web服务器,从而达到 负载均衡的目的。这种技术的优点是,实现简单、实施容易、成本低、适 用于大多数TCP/IP应用;但是,其缺点 也非常明显,首先这种方案不是真正意 义上的负载均衡,DNS服务器将Http 请求平均地分配到后台的Web服务器上,而不考虑每个 Web服务器当前的负 载情况;如果后台的 Web服务器的配置 和处理能力不同,最慢的 Web服务器将 成为系统的瓶颈,处理能力强的服务器 不能充分发挥作用;其次未考虑容错, 如果后台的某台 Web服务器出现故障, DNS服务器仍然会把DNS请求分配到 这台故障服务器上,导致不能响应客户 端。最后一点是致命的,有可能造成相当一部分客

13、户不能享受 Web服务,并且 于DNS缓存的原因,所造成的后果要持 续相当长一段时间(一般DNS的刷新周 期约为24小时)。所以在国外最新的建 设中心Web站点方案中,已经很少采用 这种方案了。2.通过硬件四层交换实现 负载均衡在硬件四层交换产品领域,有一些知名的产品可以选择,比如 Alteon、F5等,这些产品很昂贵,但是 物有所值,能够提供非常优秀的性能和 很灵活的管理能力。Yahoo中国当初接 近2000台服务器使用了三四台Alteon就搞定了 3.通过软件四层交换实现负 载均衡软件四层交换我们可以使用Linux上常用的LVS来解决,LVS就 是Linux Virtual Server,

14、他提供了基于心 跳线heartbeat的实时灾难应对解决方 案,提高系统的鲁棒性,同时可供了灵 活的虚拟VIP配置和管理功能,可以同 时满足多种应用需求,这对于分布式的 系统来说必不可少。 一个典型的使 用负载均衡的策略就是,在软件或者硬件四层交换的基础上搭建squid集群,这 种思路在很多大型网站包括搜索引擎上 被采用,这样的架构低成本、高性能还 有很强的扩张性。4.通过反向代理服务 器实现负载均衡反向代理服务器又称为 WEB加速服务器,它位于 WEB服务器的前端,充当WEB服务器 的内容缓存器,反向代理服务器是针对 WEB服务器设置的,后台 WEB服务 器对互联网用户是透明的,用户只能看

15、到反向代理服务器的地址,不清楚后台 WEB服务器是如何组织架构的。当互联 网用户请求 WEB服务时,DNS将请求 的域名解析为反向代理服务器的IP地址,这样URL请求将被发送到反向代 理服务器,反向代理服务器负责处理用 户的请求与应答、与后台 WEB服务器 交互。利用 网站架构门户网站架构反向代理服务器减轻了后台WEB服务器的负载,提高了访问速度, 同时避免了因用户直接与 WEB服务器 通信带来的安全隐患。目前有许多反向代理软件,比较有名的有 Nginx 和 Squid 。 Nginx 是 Igor Sysoev为俄罗斯访问量第二的站点开发的,是一个高性能的HTTP和反向 代理服务器,也是一个

16、 IMAP/POP3/SMTP 代理服务器。 Squid是美国政府大力资助的一项研究 计划,其目的为解决网络带宽不足的问 题,支持 HTTP, HTTPS, FTP等多种 协议,是现在 Unix系统上使用、最多 功能也最完整的一套软体。1) SquidSquid是一个开源的软件,利用它的反 向代理技术可以提高网站系统的访问速 度,下面将重点介绍 Squid反向代理的 实现原理和在提高网站性能方面的应 用。 Squid反向代理服务器位于本 地 WEB服务器和Internet之间,组 织架构如下图:客户端请求访问WEB服务时,DNS将访问的域名解 析为Squid反向代理服务器的 IP地 址,这样客

17、户端的URL请求将被发送到反向代理服务器。如果 Squid反向代精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 17 精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载理服务器中缓存了该请求网站架构门户网站架构 的资源,则将该请求的资源直接返回给客户 端,否则反向代理服务器将向后台的 WEB服务器请求资源,然后将请求的应 答返回给客户端,同时也将该应答缓存 在本地,供下一个请求者使用。 Squid反向代理一般只缓存可缓冲的数 据,而一些CGI脚本程序或者ASP、 JSP之类的动态程序默认不缓存。它根 据从WEB服务器返回的 HTTP头标 记来缓冲静态页面,有四个最重

18、要 HTTP头标记:? ? ? ?Last-Modified:告诉反向代理页面什么 时间被修改 Expires:告诉反向代理页 面什么时间应该从缓冲区中删除 Cache-Control:告诉反向代理页面是否 应该被缓冲Pragma:用来包含实现特定的指令,最常用的是 Pragma:no-cache 注:DNS 的轮询 机制将某一个域名解析为 多个IP地址。2) Nginx Nginx ( "engine x 是彳瑜 罗斯人Igor Sysoev(塞索耶夫)编写的一 款高性能的HTTP和反向代理服务器。 Nginx已经在俄罗斯最大的门户网站 Rambler Mediat运彳f 了 4

19、年时间, 同时俄罗斯超过20%的虚拟主机平台采 用Nginx作为反向代理服务器。在国内,已经有新浪博客、新浪播客、搜 狐通行证、网易新闻、网易博客、金山 逍遥网、金山爱词霸、校内网、YUPOO 相册、豆瓣、迅雷看看等多家网站、频 道使用 Nginx服务器。 Nginx特 点如下: 1)工作在OSI模型的第7 层2)高并发连接官方测试能够支撑5万并发连接,在实际生产环境中 跑到23万并发连接数。 3)内存消 耗少 在3万并发连接下,开启的10 个Nginx进程才消耗150M内存。4) 配置文件非常简单风格跟程序一样通俗易懂。5)成本低廉 Nginx 为开源软件,可以使用。而购买F5 BIG-IP

20、、NetScaler等硬件负载均衡交换机则需要十多万至几十万人民币。6)支持Rewrite重写规则 能够根据域 名、URL的不同,将HTTP请求分到不 同的后端服务器群组。 7)内置的健康 检查功能如果Nginx Proxy后端的某台Web服务器宕机了,不会影响前端访问)节省带宽支持GZIP压缩,可以添加浏览器本地缓存的Header头。9)稳定性高用于反向代理,宕机的概率微乎其微。3) Nginx+squid页面缓存来实现反向代 理负载均衡 通过Nginx反向代理和 squid缓存实现动静分离的架构图如下所 示: 网站架构门户网站架构5. Apache +tomcat集群实现负载均衡。 使用a

21、pache和多个tomcat配置一个可 以应用的web网站,用Apache进行分流, 把请求按照权重以及当时负荷分 tomcat1,tomcat2.去处理,要达到以下要 求: 网站架构门户网站架构1) Apache 做为 HttpServer,通过 mod_jk 连接器连接多个tomcat应用实例,并进 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 17 行负载均衡。2)同时还要配置session 复制,也就是说其中任何一个tomcat的 添加的session,是要同步复制到其它tomcat,集群内的tomcat都有相同的 session,并为系统设定 Session超时时

22、间。缓存 1.系统架构方面的缓存 1) Squid缓存 架构方面使用 Squid进行缓存。注:SQUID使用了 LM算法,LM就是页面Header里时 间(Date)和 Last-Modified 时间的差。Date 一般是Squid从后面取页面的时间, Last-Modified 一般是页面生成时间。2) Nginx的缓存功能Nginx从版本开始,支持了类似Squid的缓存功能; 缓存把URL及相关组合当作 Key,用 md5编码哈希后保存;Nginx的Web缓存服务只能为指定URL或状态码 设置过期时间,不支持类似Squid的PURGE指令,手动清除指定缓存页面; 采用MMAP实现,设置的

23、缓存区大小不 能超过物理内存+SWEB的值3) 基于 memcached 的缓存nginx 对=精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=memcached有所支持,但是功能并不是 特别之强,性能上还是非常之优秀。location /mem/ setmemcached_passexpires 70; if ( $uri $memcached_key:11211;这个配置会将/mem/abc指明至ll memcached的 abc 这个key去取数据。Nginx目前没有写入 memcached的任何机制,所 以要往 memcached里写入数据得用后台的动态 语言完成,可以

24、利用404定向到后端去 写入数据。Nginx传统缓存的缺点也是它和squid等缓存软件的不同之特 色,所以也可看作其优点。在生产应用 中它常常用作和squid的搭档,squid对 于带?的链接往往无法阻挡,而nginx能 将其访问拦住,例如:/?和/在squid上会 被当做两个链接,所以会造成两次穿透; 而nginx只会保存一次,无论链接变成网 站架构门户网站架构/?1还是/?123,均不能透过nginx缓存,从而 有效地保护了后端主机。nginx会非常老实地将链接形式保存到文件系统 中,这样对于一个链接,可以很方便地 查阅它在缓存机器上的缓存状态和内 容,也可以很方便地和别的文件管理器 如r

25、sync等配合使用,它完完全全就是一 个文件系统结构。2.应用程序方面的缓存 1) OSCacheOSCacheOpenSymphony®计,它是一种 开创性的JSP定制标记应用,提供了在 现有JSP页面之内实现快速内存缓冲的 功能,OSCache是个一个广泛采用的高 性能的J2EE缓存框架,OSCache能用于 任何Java应用程序的普通的缓存解决方 案。OSCache有以下特点:缓存任何对 象,你可以不受限制的缓存部分jsp页面 或HTTP请求,任何java对象都可以缓 存。拥有全面的API-OSCache API给你 全面的程序来控制所有的OSCache特性。永久缓存-缓存能随

26、意的写入硬盘, 因此允许昂贵的创建数据来保持缓存, 甚至能让应用重启。支持集群-集群缓存 数据能被单个的进行参数配置,不需要修改代码。缓存记录的过期-你可以有最 大限度的控制缓存对象的过期,包括可 插入式的刷新策略。OSCache是当前运用最广的缓存方案, JBoss,Hibernate,Spring 等都对其有支持。 OSCache的特点:1)缓存任何对象:你可以不受限制的缓存部分jsp页面 或HTTP请求,任何java对象都可以缓 存。 2)拥有全面的API: OSCache API 允许你通过编程的方式来控制所有的 OSCache特性。3)永久缓存:缓存能 被配置写入硬盘,因此允许在应用

27、服务 器的多次生命周期间缓存创建开销昂贵 的数据。4)支持集群:集群缓存数据能被单个的进行参数配置,不需要 修改代码。 5)缓存过期:你可以 有最大限度的控制缓存对象的过期,包 括可插入式的刷新策略。2) Memcachedmemcache提高性能的分布式内存缓存服务器。一般的使用目 的是,通过缓存数据库查询结果,减少 数据库访问次数,以提高动态 Web应用的速度、 提高可扩展性。Memcached是以Key/Value的形式单个 对象缓存。网站架构门户网站架构3)自主开发的内存数据缓存服务a)独立进程方式的缓 存服务对于一些常用的动态数据通过开发程序服务缓存在内存中,提供 给其他子系统调用,

28、如下面的数据就可 以通过这样方式进行缓存。1)用户基本信息及状态的信息缓冲2)列表缓存,就像论坛里帖子的列表3)记录条数的缓存,比如一个论坛板块里 有多少个帖子,这样才方便实现分页。4) 复杂点的 group, sum, count查询, 比 如积分的分类排名b)集成在WEB应 用中的内存缓存在web应用中对于热点的功能,考虑使用完全装载到内 存,保证绝对的响应速度,对于需要频 繁访问的热点数据,采用集中缓存(多个 可以采用负载均衡),减轻数据库的压 力,比如:很多配置信息,操作员信息 等等。页面静态化静态的HTML精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 25 精选公文

29、范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载页面严格地标准的 HTML标示语言构 成,并不需要服务器端即时运算生成。 这意味着,对一个静态 HTML文档发出 访问请求后,服务器端只是简单地将该 文档传输到客户端。从服务器运行的那 个时间片来看,这个传输过程仅仅占用 了很小的CPU资源。页面静态化就是采用效率最高、消耗最小的纯静态 化的html页面来替换动态页面。我们尽 可能使我们的网站上的页面采用静态页 面来实现,这个最简单的方法其实也是 最有效的方法。网站架构门户网站架构同时采用第三方开源的 CMS系统来实现网 站内容的管理。对于大量内容并且频繁 更新的网站,我们无法全部手动去挨个

30、 实现页面静态化,所以我们需要引入常 见的信息发布系统(CMS),信息发布系统 (CMS)可以实现最简单的信息录入自动 生成静态页面,对于一个大型网站来说, 拥有一套高效、可管理的CMS是必不可 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 23 少的。 同时,HTML静态化也是某 些缓存策略使用的手段,对于系统中频 繁使用数据库查询但是内容更新很小的 应用,可以考虑使用HTML静态化来实 现,比如论坛中论坛的公用设置信息, 这些信息目前的主流论坛都可以进行后 台管理并且存储再数据库中,这些信息 其实大量被前台程序调用,但是更新频 率很小,可以考虑将这部分内容进行后 台更新的

31、时候进行静态化,这样避免了 大量的数据库访问请求。在进行html静态化的时候还可以使用一种折中 的方法,就是前端继续使用动态实现, 在一定的策略下通过后台模块进行定时 把动态网页生成静态页面,并定时判断 调用,这个能实现很多灵活性的操作。 为了提高静态HTML的访问效率,主要 可以对以下几个方面进行优化:网络带 宽、磁盘I/O以及cache倚速缓冲存储 器)。 数据库配置及优化1.数据 库集群对生产数据库采用 RAC实现数据库的集群。 2.数据库及表 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 24 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=的散列

32、把生产数据库和查询数据 库进行分离,针对系统业务数据的特点, 把大的表进行拆分,对于访问较多的表 采用分区表。使用读/写数据库分离,随着系统变得越来越庞大,特别是 当它们拥有 很差的SQL时,一台数据 库服务器通常不足以处理负载。但是多 个数据库意味着重复,除非你对数据进 行了分离。更一般地,这意味着建立主/ 从副本系统,其中程序会对主库编写所 有的Update、Insert和Delete变更语句, 而所有Select的数据都读取自从数据库。 尽管概念上很简单,但是想要合理、精 确地实现并不容易,这可能需要大量的 代码工作。因此,即便在开始时使用同 一台数据库服务器,也要尽早计划在 PHP中使

33、用分离的DB连接来进行读写 操作。如果正确地完成该项工作,那么 系统就可以扩展到2台、3台甚至12台 服务器,并具备高可用性和稳定性。3) 拥有良好的DB配置和备份很多公司都没有良好的备份机制,也不知精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 29 精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载道如何恰当地完成这项工作。只有imp 是不够的,还需要进行热备份,从而得 到超快的速度和超高的可靠性。网站架构 门户网站架构 另外, 在将所有备份文件从服务器上转移出来 之前要进行压缩和加密。另外还要确保 拥有设计合理的、有用的关于安全、性 能和稳定性问题的设定,包括

34、防止数据 败坏,其中很多设定都是非常重要的。文件存储1.文件共享1) HDFS HDFS是Apache Hadoop项目中的一个 分布式文件系统实现,基于Google于2003 年 10 月发表的 Google File System(GFS尼文。?特性 1)硬件要求低2)高容错性3)易可扩展 4)配置简单 5)超大文件 HDFS 采用 master/slave架构。一个 HDFS集群是一个 Namenode和一定数目的 Datanodes组成。网站架构门户网站架构2) NFS与GFS比较首先从它们的功能上进行分析。NFS即网络文件系统,是SUN公司开发 精选公文范文,管理类,工作总结类,工作

35、计划类文档,感谢阅读下载 26 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=的。它是FreeBSD支持的文件系统中的 一种,允许一个系统在网络上与它人共 享目录和文件。通过使用 NFS,用户和 程序访问远端系统上的文件就像访问本 地文件一样。 而GFS是Google为 了满足本公司迅速增长的数据处理要求 而开发的文件系统。GFS是一个可扩展 的分布式文件系统,用于大型的、分布 式的、对大量数据进行访问的应用。它 是针对Google的计算机集群进行设计 的,专门是为Google页面搜索的存储进 行了优化。所以从功能上看,它们两者是完全不同的概念。其次从结构上比较,NFS至少

36、包括两个主要部分: 一台服务器,以及至少一台客户机。被 共享的目录和文件存放在服务器上,客 户机远程地访问保存在服务器上的数 据。 GFS则一台Master(通常有几 台备份)和若干台TrunkServer构成。GFS 中文件备份成固定大小的 Trunk分别存 储在不同的 TrunkServer上,每个Trunk 有多份(比如3)拷贝,也存储在不同的TrunkServer上。Master负责维护 GFS 中 的Metadata,即文件名及其Trunk信息。 客户端先从 Master上得到文件的 Metadata,根据要读取的数据在文件中的 位置与相应的TrunkServer通信,获取文 件数据

37、。再从跨平台性上,NFS的基本原则是 容许不同的客户端及服务 端通过一组 RPCs分享相同的文件系 统”,它是独立于操作系统的,容许不同 的操作系统共同地进行文件的共享。而GFS则没有这一特点,文件只能被集 群系统中的PC所访问,而且这些PC的 操作系统一般是Linux o 最后从规 模上比较,HDFS只应用在大批量的数 据共享上。目前Google拥有超过200个 的GFS集群,其中有些集群的PC数量 超过5000台。集群的数据存储规模可以 达到5个PB,并且集群中的数据读写吞 吐量可达到每秒40G。而NFS 一般没有这么巨大的规模。2.文件的多服 务器自动同步 使用Linux内核的 inot

38、ify监控Linux文件系统事件。精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 31 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=利用开源的lsync监听某一目录,如果目 录内文件发生增、删、改,利用 Rsync 协议自动同步到多台服务器。3.图片服 务器分离特别是如果程序与图片都放在同一个 APAHCE的服务器下, 每一个图片的请求都有可能导致一个 HTTPD进程的调用。使用独立的图片服务器不但可以避免以上这个情 况,更可以对不同的使用性质的图片设 置不同的过期时间,以便同一个用户在 不同页面访问相同图片时不会再次从服 务器取数据,不但快速,而且还省了

39、带 宽。还有就是,对于缓存的时间上,亦 可以做独立的调节。网站架构门户网站架构网络问题解决方案你不可能要求所有的使用人员,都和你 的服务器在一个运营商的网络内,而不 同网络之间访问速度会很慢,我们可以 采用镜像网站和引入 CDN来解决这一 问题。用户动态内容静态内容智能DNS解析电信用户网通用户 CDN其他 用户服务器1服务器n服务器1服务器n服务器1服务器n电信机房多线机房网 通机房 1.智能DNS解析 我 们可以在不同的网络运营商部署 web服 务器,通过linux上的rsync工具自动同 步到不同网络接入商的 web服务器上, 以作为主站的镜像。然后通过配置智能DNS解析来引导不同网络的

40、访问用 户到对应的网络运营商的 web服务器。2. CDN如果有足够的投资,也可以采用CDN(内容分发网),把静态内容进 行CDN缓存,以减轻服务器压力。CDN 的全称是 Content Delivery Network,即内容分发网络。它采取了分 布式网络缓存结构,其目的是通过在现 有的Internet中增加一层新的网络架构, 将网站的内容发布到最接近用户的网络 边缘,使用户可以就近取得所需的内容, 解决Internet网络拥挤的状况,提高用 户访问网站的响应速度。从技术上全面 解决于网络带宽小、用户访问量大、网 点分布不均等原因所造成的用户访问网 站响应速度慢的问题。(也就是一个服精选公文

41、范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 # 精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载务器的内容,平均分部到多个服网站架 构 门户网站架构 务器上,服 务器智能识别,让用户获取离用户最近 的服务器,提高速度。目前,国内访问量较高的大型网站如新浪、网易等, 均使用CDN网络加速技术,虽然网站的 访问巨大,但无论在什么地方访问都会 感觉速度很快。而一般的网站如果服务 器在网通,电信用户访问很慢,如果服 务器在电信,网通用户访问又很慢。WEB应用开发架构设计思路1.基于MVC的三层应用开发架构应用开发实现MVC三层架构进行web应用开 发,采用ibatis作为持久

42、层框架,c3p0 作为数据库连接池。iBATIS是一个可以设计和实现更好的 Java应用程 序持久化层的框架。iBATIS把对象和存 储过程或者使用 XML描述符的SQL 语句进行了关联。简单是 iBATIS最大 的优势? ibatis-使用ibatis的十个理1.至少能操作10种以上的数据库 2.可配置的caching(包括从属)3.精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 31 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=支持 DataSource、 local transaction management口 global transaction

43、 4.简单的XML配置文档5.支持Map,精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 # Collection, List和简单类型包装(如 Integer, String) 6.支持 JavaBeans 类 (get/set方法)7.支持复杂的对象映射(如 populating lists, complex object models) 8.对象模型从不完美(不需要修 改)9.数据模型从不完美(不需要修改) 10.你已经知道SQL,为什么还要学习其他东西网站架构门户网站架构 1)MVC架构示意网站架构门户网站架构 2) Struts架构 客户端发送一个HTTP请求,通过S

44、truts 框架最后获得一个HTTP响应,这一过 程非常重要,它是理解 Struts框架的重 点。上图描述了 Struts框架的结构,而 下图通过一个活动图更具体描述接受请 求直至返回响应的整个过程: 网站 架构门户网站架构2.面向服务的应用架构面向服务的应用架构是指构建可分布式的、去中 心化的服务器平台,以提供许多不同的 应用,数据库被分成很多个小部分,围 绕每个部分都会创建一个服务接口 (API), 并且该接口是访问数据库的唯一途径。 最终数据库演变成一个非常庞大的共享 资源。这种架构是松散耦合的,并且围绕着服务进行构建。面向服务的架 构提供给他们隔离特性,一个服务可能 有很多台数据库服务

45、器,他们之间的数 据是相通的,而对外他们的接口只有一 个,外面是无法知道这个服务后面的数 据组织是如何搭建的。网站架构门户网站架构这样就有了越来越多的应用服务器。这些应用服务器从数 据众多的服务中聚合信息,然后生成我 们所看到的的各个网站页面。这样各种服务如插件一样组成了 一个开放的 平台,这样团队的规模就会比较小,比 较灵活。注Amazon就是采用了这种架 构来构 建的,它拥有上千台服务器。=精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=系统软件参数优化在一定的架构基础上,要提高并发处理能力则需要调 整服务器的操作系统内核参数、web服务器,以使其性能达到最优化。操作系统优

46、化调整系统的内核参数,增大连接数及TCP/IP的超时设置。Linux 系统中:在/etc/配置文件中增加如下内核参数: _syncookies = 1 _tw_reuse =1 _tw_recycle = 1 _fin_timeout = 5 tomcat血务器优化一底大并发连接 数,调整内存参数的设置。1、JDK内存优化:当应用程序需要的内存超出 堆的最大值时虚拟机就会提示内存溢 出,并且导致应用服务崩溃。因此一般 建议堆的最大值设置为可用内存的最大值的;0%。Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的)需要调大.Tomcat默认可以使用的内存为128

47、MB,Windows下,在文件/bin/, Unix下)在文件/bin/的 前面,增加如下设置:JAVA_OPTS= '-Xms【初始化内存大小】 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 34 -Xmx【可以使用的最大内存】需要把 这个两个参数值调大。例如: JAVA_OPTS= '-Xms256m -Xmx512m 表 示初始化内存为256MB,可以使用的最 大内存为512MB。2、连接器优化:在 tomcat配置文件中的配置中,和连接数 相关的参数有:maxThreads: Tomcat使用线程来处理接收的每个请求。这个 值表示Tomcat可创建的最

48、大的线程数。默认值150o acceptCount指定当所有 可以使用的处理请求的线程数都被使用 时,可以放到处理队列中的请求数,超 过这个数的请求将不予处理。默认值10。 minSpareThreads Tomcat初始化时仓U建 的线程数。默认值 25 o maxSpareThreads 一旦创建的线程超过 这个值,Tomcat就会关闭不再需要的 socket线程。默认值 75。 网站架构 门户网站架构enableLookups: 是否反查域名,默认值为true。为了提高处理能力,应设置为 false connnectionTimeout:网络连接超时,默 精选公文范文,管理类,工作总结类

49、,工作计划类文档,感谢阅读下载 35 =精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载=认值60000,单位:毫秒。设置为0表示 永不超时,这样设置有隐患的。通常可 设置为 30000 毫秒 。maxKeepAliveRequests:保持请求数量, 默认值100。bufferSize:输入流缓冲 大小,默认值 2048 byteso compression:压缩传输,取值on/off/force,默认值off 其中和最大连接数相关的参数为maxThreads和 acceptCount 如果要力口大 并发连接数,应同时加大这两个参数。 web server允许的最大连接数还受制

50、于* 作系统的内核参数设置,通常 Windows 是2000个左右,Linux是1000个左右。 apache服务器优化加大并发数量和关闭不需要的模块。因为apache非常 消耗内存,尽量轻量化。Apache在配置ContentType的时候可以尽量少 支持,尽可能少的LoadModule,保证更 高的系统消耗和执行效率同时配置apache和tomcat的组合使之能作到动 静分离,apache处理静态页面,tomcat 处理动态页面。 在处理静态页面或者图片、js等访问方面,可以考虑使用lighttpd 代替Apache,它提供了更轻量级和更高 效的处理能力Nginx服务器的优化worker_

51、processes该参数的值最好跟cpu 核数相莓,能够发挥最大性能,如果 nginx所在服务器为2颗双核cpu,则建 议设定为4。3 Web服务架构评测主要对基于 tomcat和nginx+tomcat的 web服务器的处理性能进行测试,以作 为不同性能要求下架构选型的依据 测试环境网络环境1.内网带宽?千M内网。 ?内网ping包延迟: 网站架构门户网站架构 2.网络拓扑示意WEB服务高可用测试网络示意图千兆交换机测试服务器WEB服务:服务端服务器配置设备 Nginx硬件配置 旧M X3650 CPU:Intel(R) Xeon(R) E5150 2 核*2 内存: 4G千兆网卡操作系统

52、Redhat linuxas4 Tomcat1Hp DL580 G4 CPU:精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 43 精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载Intel(R) Xeon(TM)4核*2内存:8G千兆网卡 Redhat linux as5 Tomcat2 HpDL580 G4 CPU: Intel(R) Xeon(TM) 4 as5 Test1 Hp DL580 G5 CPU:Intel(R)核*2内存:G千兆网卡Redhat linuxXeon(R) E7310 4 核*2 内存:4G 千兆 网卡 IBM X3650 CPU:

53、 Intel(R) Xeon(R)E5150 2核*2内存:4G千兆网卡Redhat linux as5 Test2 Redhat linux as4 网站架构门户网站架构软件环境1.操作系统网络参数优化用做测试的各台服务器,均在/etc/配置文件 中增加如下内核参数: _syncookies = 1 _tw_reuse =1 _tw_recycle =1_fin_timeout = 5 2. Nginx 设置 主要配置 如 下 : user www www;worker_processes 4;error_log/usr/local/nginx/logs/nginx_pid/usr/loca

54、l/nginx/logs/;worker_rlimit_nofile51200;eventsuseepoll;worker_connections 51200; http 精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 38 精选公文范文,管理类,工作总结类,工作计划类文档,欢迎阅读下载精选公文范文,管理类,工作总结类,工作计划类文档,感谢阅读下载 45 includeapplication/octet-stream;gb2312;server_names_hash_bucket client_header_buffer_size large_client_header_buffersdefault_type#charsetsizesendfile on;tcp_nopush128;32k;32k;on;keepalive_timeout 1; tcp_nodelay on;#gzip on;#gzip_buffers#gzip_min_length 1k;#gzip_http_version ;debug;门#gzip_comp_level 2;416k;网站架构 户网站架构#gzip_typestext/plain appl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论