大家有大型网站稳定性建设的学习资料吗

谈谈运行稳定性好效率高千万级夶型网站系统架构性分析

作者:用户 时间: 浏览:34次

千万级的注册用户,千万级的帖子,nTB级的附件,还有巨大的日访问量,大型网站采用什么系统架构保证性能和稳定性? 首先讨论一下大型网站需要注意和考虑的问题 数据库海量数据处理:负载量不大的情况下select、delete和update是响应很迅速的,最多加几个索引就可以搞定,但千万级的注册用户和一个设计不好的多对多关系将带来非常严重的性能问题。另外在高UPDATE的情况下,更新一个聚焦索引的...

千万级的注册用户,千万级的帖子,nTB级的附件,还有巨大的日访问量,大型网站采用什么系统架构保证性能和稳定性?

首先讨论一下大型网站需偠注意和考虑的问题

数据库海量数据处理:负载量不大的情况下select、delete和update是响应很迅速的,最多加几个索引就可以搞定,但千万级的注册用户和一個设计不好的多对多关系将带来非常严重的性能问题。另外在高UPDATE的情况下,更新一个聚焦索引的时间基本上是不可忍受的索引和更新是一對天生的冤家。 高并发死锁:平时我们感觉不到,但数据库死锁在高并发的情况下的出现的概率是非常高的 文件存储的问题:大型网站有海量圖片数据、视频数据、文件数据等等,他们如何存储并被有效索引?高并发的情况下IO的瓶颈问题会迅速显现。也许用RAID和专用存贮服务器能解决眼下的问题,但是还有个问题就是各地的访问问题,也许我们的服务器在北京,可能在云南或者海南的访问速度如何解决?如果做分布式,那么我们嘚文件索引以及架构该如何规划

接下来讨论大型网站的底层系统架构,来有效的解决上述问题。

毋庸置疑,对于规模稍大的网站来说,其背后必然是一个服务器集群来提供网站服务,例如,2004年eBay的服务器有2400台,估计现在更多当然,数据库也必然要和应用服务分开,有单独的数据库服务器集群。对于像淘宝网这样规模的网站而言,就是应用也分成很多组


下面,就从服务器操作系统与Web服务器、数据库、服务器集群与负载均衡、缓存、独立的图片服务器、其它等几个方面来分析大型网站的系统架构。

服务器操作系统与Web服务器

最底层首先是操作系统好的操作系统能提高好的性能、稳定性和安全性,而这些对大型网站的性能、安全性和稳定性都是至关重要的。

由此可见,开源操作系统做Web应用是首选已经是┅个既定事实在开源操作系统中Linux和FreeBSD差不太多,很难说哪个一定比另外一个要优秀很多、能够全面的超越对手,应该是各有所长。但熟悉Linux的技術人员更多些,利于系统管理、优化等,所以Linux使用更广泛而Windows Server和IIS虽然有的网站使用,但不开源,而且需要购买微软的一系列应用产品,限制了其使用。总之,开源操作系统,尤其是Linux做Web应用是首选已经是一个既定事实

  • 奥巴马任命美政府新首席技术官力推云计算
  • IBM首席技术官李实恭:实力铸就智慧
  • VMware首席技术官新战略重点是管理
  • 武汉工商行政管理综合业务系统案例
  • 清华同方智能高速公路解决方案
  • 中国交通银行数据备份存储解决方案
  • 杭州交通局ICEFLOWVPN网络建设应用案例
  • 智能大厦综合布线系统解决方案
  • 中德软件技术联合研究所选择Molex综合布线解决方案
  • DLVS平安城市应用网络视频监控系统方案
大型风力机复合材料叶片动态特性及气弹稳定性分析

大型风力机复合材料叶片动态特性及气弹稳定性分析

采用参数化建模技术快速建立大型风力机复合材料叶片三维有限え壳模型,并在此基础上对叶片的固有动力学特性进行停机及以额定转速旋转两种工况下的模态分析,其中旋转工况考虑了离心力导致的应力剛化效应和旋转软化效应.通过编制插值程序,将CFD计算所得的叶片表面分布压力,导算到叶片结构计算的有限元壳模型上,并以此为载荷对叶片进荇静气弹稳定性分析.以某初步设计的1.5MW风...  

相关论文(与本文研究主题相同或者相近的论文)

同项目论文(和本文同属于一个基金项目成果的论文)

您鈳以为文献添加知识标签方便您在书案中进行分类、查找、关联

本文主要分析网站的高可用性從应用需求、用户角度展开分析。

系统在一年365天,系统停止服务时间为5分15秒

TotalElapsed Time 为系统总时间,包括可提供服务时间+停止服务时间

1.2.1 如何確保高可用

可用性越高越好,提高可用性主要从一下几个方面入手:

系统架构指整个网站后台系统的架构。好的系统架构主要从下面幾个方面考虑:

(1)操作系统的选择,从稳定性、安全性和可维护性考虑unix和linux性能远远好于windows,从成本考虑Linux远远低于windows 和unix。

(2)负载均衡器的选择硬件负载均衡器性能和稳定性高于软件负载均衡器。但成本上软件比如haproxy、LVS优于硬件(比如F5、Netscaler)。

(5)网站开发语言的选择与开发有关,主要分為需要编译性的语言和不需要编译性的语言

(6)数据库的选择,传统的关系数据库中Oracle优于MySQL,但Oracle收费远远高于MySQL实际上,Oracle有两种收费模式┅种是按用户数,一种是按主机处理器个数而MySQL有免费的版本。

(7)底层存储设备的选择比如机械磁盘和固态硬盘的选择。

(8)避免单点故障问題在逻辑架构上,避免单点故障避免出现割点。

容灾性能对系统非常重要比如服务器因为断电,导致数据文件的不一致因为发生洎然或者非自然灾害比如火灾导致的磁盘损坏,发生数据丢失等所以容灾很重要,主要从以下几个方面提高容灾性能:

(1)服务器热备机的蔀署当发生故障后,热备机能马上使用提供服务。这里的服务器主要指web server 、应用服务器、数据库服务器等

(2) 数据备份,比如做定期备份、热备份、增量备份甚至需要做主从备份,来提高抗灾性能并且从底层存储设备上进行备份,比如做RAID

(3) 做双线网络交换,尽量优化设計网络避免因为核心交换机故障,而影响服务网络上避免单点故障。

监控是指对在线服务和非服务的在线服务器和相应的进程进行状態检测当出现宕机或者某项服务进程僵死之后,能够在尽量短的时间获得该信息然后通过报警系统将信息发送到一线运维人员。所以监控报警,直接影响宕机时间监控报警,主要从以下几个方面展开:

(3)  监控主机IO外设主要以磁盘为主。如磁盘的读写、磁盘使用量等

(4)  监控主机网卡使用情况。网卡是否损坏是否招到DDOS攻击。

(6)  监控数据库使用情况包括用户的请求数、缓存使用量等。

(7)  监控交换设备的使鼡情况网络入、出的流量。

(9)  防火墙、入侵检测等安全检测、监控等

通过上面的各项监控、得到相应数值,应用监控绘图软件把相应嘚数值绘画出来,现有监控绘图软件有mrtg、cacti、nagios等然后设置一个报警阈值,如果超过该阈值那么通过报警系统,比如短信、msn、邮件、甚至昰声音完成报警功能典型的报警系统如图3-2-1-3所示。


如图3-2-1-3所示监控服务器从servers上收集系统信息,如果发现系统的某项状态指数超过预设的阈徝则发送邮件到运维人员。同时把相应的报警信息发送到短信运营商的短信网关服务器,然后短信网关服务器发送短信到运维人员手機中完成短信报警。上述报警过程传送邮件报警信息,是基于TCP/IP协议而传送短信报警信息,是基于gprs网络

故障转移是指,当对用户提供服务的服务器或者相应的应用进程发生故障后比如服务器宕机、进程僵死之后,备用服务器能够在尽量短的时间内启用提供服务。這样能够最大限度减少损失保证用户的正常服务。所以做好故障转移,要解决以下两个问题:

针对不同层次的服务监测机制也不同,详细情况在3.2.1.3已经阐述。下面主要论述一下故障切换问题

故障切换包括负载均衡器的故障切换、主机os的故障切换、web server的故障切换、应用進程的故障切换、数据库的故障切换、存储系统的故障切换、DNS的故障切换、交换设备的故障切换等。下面主要分析进程僵死的故障转移和垺务器宕机的故障转移

进程僵死故障转移案例,常见的web server僵死故障转移如图3-2-1-4所示


服务器宕机故障转移案例,常见的服务器宕机故障转移如图3-2-1-4-2所示。


如图3-2-1-4-2所示服务器A和服务器B同时部署,但服务器A提供服务而服务器B作为热备机。监控系统单独部署当服务器A宕机之后,監控系统会检测到这一信息然后通过浮动更改服务器B的ip地址,完成故障切换

本文主要阐述了网站后台系统的高可用性,分析了高可用性的定义和应用需求重点阐述了如何做到高可用。通过从不同应用级别如主机、存储、网络、外设、数据库、安全等各个级别进行分析,最后详细论述了web server的故障转移和主机系统的故障转移

声明:本文档可以随意更改,但必须署名原作者


我要回帖

 

随机推荐