网站、数据库的衍变之路(5)
来源:cnblogs 发布时间:2009-09-26 20:03:00
(五)
本节与前四部分文章内容关联不大,将主要讨论网站在压力下演变过程中的一般性。
作为一个网站管理员来说,但网站遇到性能瓶颈,那就会思考,为什么网站遇到的性能问题,有什么样的解决思路。在前四篇中,我们讲到了一些办法,讲得最多的是拆分应用或者叫做垂直划分。那为什么会产生垂直划分这种思路?
来思考下以下的几种场景:
1、任何一台服务器安装Windows操作系统,并没有出现性能瓶颈;
2、全世界有那么多的小网站,如果把它们当作一个整体,那么他们并没有遇到性能瓶颈。
这就表明,性能瓶颈的出现是因为把用户往有限的服务器上集中而产生的。而作为一个网站,一般来说,为了方便我们的用户或者说是打造一个良好的品牌,一般来说只是有一个或者几个域名。那么问题就产生了。如果把大量的用户当作是一条河流,但网站初期的时候,这条河流是干枯的。随着网站的发展,河流里的水位越来越高,而我们的网站实际上起到了一个水闸的作用。但一个水闸不能满足的时候,我们用多个水闸来进行分流,像是98年特大洪水的时候在某些地方进行泄洪。这种应用就是垂直分割。而上面描述的第二中场景可以看成是有N个水闸的情况。但水流量过大,水闸越少,那么压力就越大。
实际上我认为,网站其本身是因为internet的产生而产生的,那其局限性也是由internet的解决方案引起的。假设,我们的一个域名可以绑定到N台服务器上,就不会产生web服务器性能上不能满足的情况。也就是说域名指向的那台服务器就是水闸,水闸能通过的水是有限的。要让水闸能通过尽可能多的水,有一些办法,在其他地方也开水闸,或者扩大这个水闸,或者加快水的流速。
在其他地方加水闸,就是垂直分割,把用户浏览导入到不同的子域名上,而子域名是可以绑定到不同的服务器上的。扩大水闸就是要在硬件上买更好的服务器,服务器就能有更好的性能。加快水的流速就是要让用户连接的时间尽可能短,这个不但是在web上,在网络游戏上也是如此。
实际上目前为止最为终极的解决方案还是让用户连接的时间尽可能短。为什么这么说呢?在理论上,一个网站可以划分为任意个子应用,但是不方便管理。比如你划分了5个应用,而5个应用中某个应用又产生了性能问题,怎么办?
在网络游戏服务端中(曾经作************,见过传奇的服务端),连接、登录游戏等应用是分开的。用户在使用时并没有感觉,那就像是你把网站的数据库服务器和web服务器分离,并不会让用户察觉道理是一样的。在我们普遍开发中使用缓存等方式,提高用户操作的响应速度,但是用户并没有离开服务器。比如把www.a.com这样的域名,指向到111.111.111.111这样的IP地址(假定为服务器A),虽然这个地址的服务器在局域网内使用了一些办法让用户响应速度更快,但是用户并没有离开这台服务器。而现在像集群这样的方式,是通过4底层TCP/IP协议让其到达A服务器的请求重新执向到B服务器,然后B服务器收到的数据直接回发给client。这样,A服务器实际上的工作量就很小了,从而实现了网站的高负载,而实际上这些负载已经被分发掉了。
要出去和朋友吃饭,就先到这里了....


猜你喜欢
- 介绍在日常的维护过程中创建用户操作用的相对会多一些,但是在这个过程中涉及到的知识点就不单单就是useradd了,接下来就来详细了解账号管理的
- 1、Google要整合全球的信息,而中国的信息可能会占据全球信息的30%以上。中国很重要。2、Google有自己的价值观和理想,所以有自己的
- 用shell脚本来给mysql加索引刚好用到, mark一下:#! /bin/bashtb_base=tb_student_arr=(&qu
- 今年新做了个地方网站 喀克网 www.kakew.com现在将我在宣传中的各项开支给大家报一下,或许对大家有帮助:1、设计LOGO 费用10
- 一、安装cmake1、解压cmake压缩包[root@mysql tools]# tar -zvxf cmake-2.8.8.tar.gz[
- VMWare (Virtual Machine ware)是一个“虚拟PC”软件公司.它的产品可以使你在一台机器上同时运行二个或更多Wind
- 八月是一个值得关注工作趋势的月份,今天,我们来重点关注web编程语言和脚本语言的就业趋势。您可能很想知道我所指的“web编程语言和脚本语言”
- 近日,中国首个国家网络电视台开始大规模建设,不仅集纳央视及各省市台节目,还吸引社会视频制作机构加盟,甚至支持网民原创作品上线发布。在发展模式
- Cyxymu认为攻击的幕后黑手是俄罗斯2009年8月10日消息,上周四Twitter、Facebook和YouTube帐户遭到阻断服务攻击(
- Google AdSense英文关键词价格要远远高于中文关键词,初略观察,有实力的同学,做英文站也许是这个经济形式下的一个不错的选择。并不是
- 3月24日凌晨消息,阿里巴巴网络有限公司(1688.HK)CEO卫哲近日承认,在数月之内,阿里巴巴将有一个战略性的项目面世。据悉,该项目或与
- 在过去的半年里,百度一直同时运行两套竞价体系。百度商业运营副总裁沈浩瑜透露,“两套竞价体系在搜索推广平台上出价管理,对精
- 搭建之前,先来介绍下环境系统环境:CentOS 5.6 32bit域名:qiu.com1、添加MX记录搭建之前,我们需要在DNS 中添加MX
- 信息服务器IIS是BACKOFFICE系列产品 * 能最强大、最流行的应用程序,它与整个BACKOFFICE组件一样,IIS也是围绕WINDO
- 对于很多WordPress新手来说,不懂任何代码的情况下去瞎改WordPress主题,得出的效果往往会出现语法错误之类的东西或效果不尽人意。
- 一个正确的robots.txt文件,能让搜索引擎不抓取网站的某个不想让蜘蛛抓取的文件,也可以避免大量的复制网页对网站搜索引擎权重的影响。Ro
- 如果你是一个网络新新人类,想必一定知道“火星文输入法”这个QQ聊天必备软件。使用它可以方便的输入或转
- 大家都知道,让百度和google收录的方法不仅仅是向她提交自己的站点,这种方法在几年前经常使用,可是目前,大家所使用的恐怕都不这样做了,现在
- 在浏览有些网站时,真的不知道网页上面哪些是广告,哪些是网站提供的内容了。新浪新闻频道首页上就有和ChinaHR合作,点击后跑出了新浪网,这些
- 一、安装POP3和SMTP服务组件 Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添