


| | 你的位置:
商务应用>
服务器硬件>
通用技术>
WEB服务器性能瓶颈分析2003-01-27 08:18:00·
雪里弄剑·
天极商务应用
上一页 1 2 3 4 5 6 7 8 下一页 关于各种Web平台的性能
一台提供web发布服务的服务器与其他大多数的常规主机相比较,被更宽泛的负载状态(load conditions)所影响。事实上,一个web站点里能够容纳大量各种各样的内容,即使是其中一个简单的HTTP服务器(软件意义上的服务器),其负载也远远超出了HTTP协议设计者当初所能预料的范围。
实际上,目前的web站点能够采用各种技术,包括静态HTML、内嵌或服务器解析的HTML(inline/server-parsed HTML)和CGI(Common Gateway Interface,公共网关接口),并以ODBC(Open Database Connectivity,开放式数据库互接)实现数据库的互连。这些不同的数据源中有一部分非常普通,而其余部分却并非如此。不管如何,每一种数据源均以其独特的方式在web服务中发挥着作用。在决定你的站点到底适合采用哪种服务器之前,你应该明确一下,你的需求究竟是什么。
静态HTML
这是互联网上任何站点最基本的一种构成“元素”。尽管真正意义上完全采用静态HTML来搭建的站点数量越来越少,但是,几乎所有的站点均不同程度地采用了这种“元素”。静态的HTML页面严格地由标准的HTML标示语言构成,并不需要服务器端即时运算生成。这意味着,对一个静态HTML文档发出访问请求后,服务器端只是简单地将该文档传输到客户端。从服务器运行的那个时间片来看,这个传输过程仅仅占用了很小的CPU资源。为了提高静态HTML的访问效率,主要可以对以下几个方面进行优化:网络带宽、磁盘I/O以及cache(高速缓冲存储器)。
服务器解析的HTML
依靠服务器解析的HTML页面包括两部分的代码,一是标准的HTML代码,二是服务器端运行的代码(由第三方的处理程序或web服务器自己在页面传输到客户端前对其进行解释)。这种HTML页面是CGI程序的升级版本(因为它的执行效率更高)。目前,内嵌的服务器端扩展集,比如ASP、PHP3,甚或是普通的服务器端支持的扩展集,已得到了非常普遍的使用。开发这种扩展集的目的是要使网站上的内容更生动活泼,更模块化,以利于维护。此外,服务器解析文档改善了性能相对低下的客户端工作模式,将客户端的负载降低到最低程度,同时也降低了数据传输对带宽的要求。很显然,你要得到这一切,就必须付出金钱的代价。因为服务器解析文档必须在其传输到客户端前就通过服务器来进行解释,所以,你要给你的服务器添加额外的CPU。
公共网关接口(CGI)
CGI使Web站点具有更佳的交互性和实用性。它可以用来收集用户的输入数据,允许运行外部程序以执行众多与用户输入相关的任务以及输出执行结果等,因此,应用CGI后,互联网的用途被大大扩充了。但是,要使用CGI,就必须付出一定开销。特别在CGI与解释器(譬如PERL)配合使用时,CGI的调用成本会很高。如果您的系统运行在极端繁重的负载条件下,该成本更是高居不下。如果可能的话,您应该考虑选用ASP或PHP3来取代CGI。
数据库的互连性
目前,互联网上最大的资源杀手当非在线数据库(online databases)和电子商务(e-commerce)等应用莫属。提供web功能的数据库和应用服务器近年来飞速增长,显示出强劲的发展势头。从性能的角度来看,在线数据库(基于Oracle、 SQL Server或 Sybase等)及应用如日中升,迫使人们更加关注服务器的性能状况。对于大型网站来说,高负载的HTTP传输和数据库处理事务互相抢占资源,并最终可能导致服务器在极短的时间内崩溃或者变得慢如蜗牛。在这种情况下,推荐您使用专门的后台运行的数据库服务器(当然也是出于安全的考虑)以及前台处理的HTTP服务器。
下一页>>怎样缓解瓶颈效应
上一页 1 2 3 4 5 6 7 8 下一页 |
|