Chinaunix首页 | 论坛 | 博客
  • 博客访问: 391733
  • 博文数量: 63
  • 博客积分: 3142
  • 博客等级: 中校
  • 技术积分: 838
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-06 13:35
文章分类

全部博文(63)

文章存档

2011年(2)

2010年(114)

2009年(3)

我的朋友

分类: 系统运维

2010-02-09 13:07:16

高可用负载均衡最佳实践一:项目
发布者:IT168  日期: 2009-10-29 00:00:00 浏览次数:29 (共有0条评论) |
 
【内容导航】
  • 第1页:高考中国网现行的运行架构
  • 第2页:功能需求

  高考中国主要包含"高考志愿通"志愿填报系统的研究开发、产品运营;高考中国网站()的开发、维护与运营。

  "高考志愿通"是经过数十位全国高考志愿填报指导专家、计算机网络专家、数学模型专家和数据统计专家历时多年精心打造。成为中国第一套高考志愿填报综合分析系统,信息最全最新的高考志愿填报综合分析系统,分析最科学、最精确的填报指导系统。

  目前已经开发了服务全国高考考生的志愿填报辅助参考系统--《高考志愿通》网络版,光盘版和校园版。高考志愿通每年服务上百万考生,目前在全国20多个省市设立销售机构。

  他们独创的位次、线差、曲线填报方式,为考生们科学合理的填报志愿,提供了方法和依据,让所有家长和考生一看就能够清楚明白好用的系统。从03年推广至今,深受家长和考生们的好评。高达98%以上的志愿填报成功率,帮助考生实现上大学、上好大学好专业的梦想。

  高考中国网站()是以刊登高考最新动态、高考新闻、招生信息、各大院校最新信息、备考辅导、政策法规等高考相关内容为主。高考中国网站本着发布最新最全的高考信息为目标,为高考生打造一个专业的高考门户网站。

  1、高考中国网现行的运行架构

  高考中国网的基本架构是典型的LAMP架构,即系统采用linux,应用使用apache整合php,然后加上开源数据库mysql.经验证明,这是一个比较高效而且节省成本的解决方案:除了硬件而外,每个组件都是免费的。当初,由于用户数量少,就把所有的组件都安装在一个服务器硬件上面;其主要目的是节省带宽费、托管费以及硬件购置费。图1-1是其基本结构逻辑。
 

  图1-1 所有应用运行在一个服务主机上的逻辑图

  随着公司商业推广的进行,访问该网站的用户数量急剧增加。加之高考即将临近,估计未来几个月内,用户数量可能成几何级的增长,这对于公司来说,应该是件好事。但是,随着用户的增长,现行的平台将无法支撑更大规模的访问服务。

  由于是商业网站,保证其365*7*24可用是必须的了。以一个服务器运行所有程序,将可能面临如下几个问题:

  ◆ 故障:只要任何一个组件服务出故障,整个服务都会停止。

  ◆ 扩展:为提高性能或存储容量,可以增加内存等部件,但总有一个限度。

  ◆ 性能:用户越多,性能越差,速度越慢。

  ◆ 带宽:用户越多,消耗的带宽也就越大,但是单个服务器的带宽是固定的,理论值是1G,当带宽消耗带一定量时,即不能提供访问,也无法在增加带宽。

  ◆ 硬件冗余:服务器任何一个部件实效,整个网站的服务都不再可用。

  把这些不利状况归纳起来,就是现行的网站不具备高可用、可扩展、负载均衡的特点。尽管当前网站运行状况还能应付,但对于上述几个方面的忧虑却令企业负责人寝食难安,他要求务必在高考来临之前解决这些问题。

【内容导航】
  • 第1页:高考中国网现行的运行架构
  • 第2页:功能需求

  2、 功能需求

  本系统为典型的互联网服务型网站,需要达到365*7*24可提供访问服务,用现在流行的专业术语描述,就是高可用、可扩展、负载均衡的架构;只有这样的架构,才有可能达到这个要求。

  高可用

  高可用是指在一段时间内(通常是一年),系统能正常提供服务的时间,它是以一个百分比来度量,如可用性99.99%。当然,没有任何人能保证系统可用性达到100%,但可以通过良好的设计,不断地接近100%。对外宣称小数点后能到达9的个数,是一个技术团队实力的体现。

  可扩展

  用户的增加,引起访问数乃至流量的增加,这种情形下,需要对系统进行扩容,以应对这种快速增长。对于提供高可用服务的互联网网站,其对可扩展的基本要求就是在保持系统服务不终止的情况下,透明的扩充容量,即用户不知道扩容的存在,或者说是扩容不对现有的服务产生任何负面作用。这些扩展主要包括:带宽扩展、服务器扩展、存储容量扩展、数据库扩展等,当然也包括主机增加内存等方面的扩展。只要能保证可以在线扩展,我们就可以认为系统具有很好的扩展性。

  负载均衡

  一个应用或服务由数个物理服务器提供,并且每个物理服务器运行的应用或服务是相同的,我们可以让用户的访问通过某种控制策略,把负载分摊到不同的物理服务器,从而保持每个物理服务器有比较合理的负载。同时,负载均衡还具备故障隔离的功能,当某些物理服务器失效时,自动从负载转发队列剔除故障服务器,一旦故障得以恢复,用户访问负载则自动加载上来。负载均衡一般是2层架构:转发器和真实提供服务或应用的服务器。除了真实服务器可以失效且不影响服务外,转发器也能做到其中一个失效,另外一个自动失败切换,从来保持服务的可用性。

  当整个系统的负载趋于饱和时,通过增加物理服务器和扩充物理带宽来扩容。增加物理服务器以后,系统的负载情况将重新在所有集群的物理服务器之间按照指定的算法重新达到新的均衡。例如:现在有50000个并发连接,4个机器,按照wlc 等权值的负载策略,则每个物理服务器的大概连接数为1250;此时再增加一个服务器,负载策略不变,则稳定后的每个物理服务器连接数大概为1000。

  平台状态可视化

  尽管有前面描述的措施保证系统的高可用、可扩展及负载均衡,但我们还需要随时知道系统的运行状态,一旦有机器失效或者某个服务不可用,应当及时发现并及时处理,而不要让故障一直积累,直到所有的服务都不可用以后,再来处理就谈不上什么高可用了。因此,监控平台的启用是不可或缺的了,有了它,就相当于多了一双"眼睛",随时随地,我们都可以知道整个平台是否正常运行。

  监控平台可视化可以以以下几个方面予以表现:

  ◆ web方式,即通过浏览器观看被监控的对象;如正常状态下,其状态(status)是以绿色填充并显示一个OK。

  ◆邮件通知,发生故障时,到达设定重试次数和探测间隔时间后发送邮件给管理员或相关人员,报告问题的大致情况。

  ◆手机短信,这是非常有用和及时的功能。深夜时分,再也没可能看web页面或查阅邮件,可以一旦发生故障,手机短信却能随时通知管理员所发生的故障。

  一般情况下,这3者是同时进行的:上班时间通过浏览器查看页面显示、打开邮件程序定时收取邮件、保持手机24小时在线。

     下篇文章,介绍其方案选择,敬请关注。

阅读(979) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~