09 2012 档案
摘要:这是读书笔记的最后一篇,说的是数据库,就像之前分享的缓存,不管是读缓存或写缓存,可以减轻数据库的压力,但是缓存随时可能失效或过时,也并不是所有的情况都适用缓存,数据库的优化和扩展也是必须重视的。运行状况 如何对已运行的数据库进行优化和扩展,以及我们的优化后效果如何,这不是我们想象的,必须在数据的基础上。首先介绍的就是运行状态的监控,书中以mysql为例子,除了自带的命令:mysql> show status;mysql> show innodb status;之外,还有mysqlreport工具可用,它把上述命令的输出内容进行处理,以更容易理解的方式呈现给我们。 对于sql ser
阅读全文
摘要:这一篇之所以命名分离之后,是因为当我们前面负载均衡的介绍,假设每台实际服务器都是相同的,就是拥有相同的文件和程序。实际上如何要实现的每台实际服务器都有相同的资源呢?这篇我们将分享网络共享、内容分发同步和分布式文件系统。网络共享 这个方式就是把资源放到一个网络上的服务器,多个实际请求处理服务器都可以以相同的方式访问到这些资源,像我们常见的数据库服务器,我们的程序都可以网络的方式访问数据库,获得数据后,生成HTML,返回给用户,还有我们前面关于缓存中提到的缓存服务器,这里我们再介绍下文件共享系统。 文件共享系统让你不必考虑网络访问和传输的细节,你可以像访问本地文件系统一样访问网络上其它服务器文件.
阅读全文
摘要:很多的网站一开始并不需要太大的规模,但是做为网站设计者从一开始就必须考虑到扩展,做一个可扩展性强的架构。所谓可扩展性就是系统通过规模的扩展来提高系统的承载能力,毕竟服务器自身的垂直扩展很快就会受到制约,单机很快便不能满足我们的需求,因此这种能力往往通过增加物理服务器或集群节点等方面来实现,这种能力越强,承载能力可提升的空间也越大。而web站点的水平扩展,负载均衡是一种最常见的手段。下面介绍一下几种实现负载均衡的方式。HTTP重定向 HTTP重定向,相信对于所有web程序员都不陌生,例如我们请求某个页面时,被转向登录页,登录页面之后又被转到了某个页面。大致来说就是,浏览器请求某个URL后,服务.
阅读全文
摘要:组件分离可以说是很多网站都在采用、最基础的提高网站吞吐的策略。比如我们看淘宝:像fuzhuang.taobao.com、home.taobao.com这样二级站点的分离,再比img01.taobaocdn.com、img02.taobaocdn.com的图片分离,a.tbcdn.cn样式的分离等,都是组件分离。什么是组件分离 这里的组件就是所有基于url访问的资源,如动态内容、图片、脚本、样式等;组件的分离就是这些组件的垂直分割,不同的资源分布到不同的服务器或相同服务器的不同逻辑单元,并且配以独立的域名(顶级域名或二级域名)。从请求表面上,请求不同站点的资源,但是他们仍可以完美组成一个完整..
阅读全文