[摘要]1. 克服 CGI 的瓶颈 1.1 令人头痛的效率问题 拜 CGI 之赐,网站不再只有固定不变的图形和文字,藉由程序动态产生的网页可以让网站好象『活』了起来。小从简单的网页计数器,留言版,大至处理众多资料的搜寻引擎,可做线上实时交易的电子商务、网络下单等。CGI 简单、开放、跨平台、与程序语言...
1. 克服 CGI 的瓶颈
1.1 令人头痛的效率问题 拜 CGI 之赐,网站不再只有固定不变的图形和文字,藉由程序动态产生的网页可以让网站好象『活』了起来。小从简单的网页计数器,留言版,大至处理众多资料的搜寻引擎,可做线上实时交易的电子商务、网络下单等。CGI 简单、开放、跨平台、与程序语言独立的特性,使得撰写网站应用程序变得很容易。
但随着网站使用量日增,这些 CGI 程序从原本动态网页的功臣,突然成了网站效率的头号杀手。由于 CGI 先天的限制1,突然涌入大量的联机请求 (request) ,常会造成网站主机瞬间资源被占用,彷佛『当机』一样,或是处理速度变得很慢。
另一个常遇到的限制是和数据库联机的问题,如果 CGI 程序后端需要联机至数据库执行指令再取得结果,突然大量的联机请求可能会超过数据库系统容许联机的上限 (例如数据库系统使用者数目的限制)。
因此对一个主要以使用 CGI 程序制作动态网站的开发者而言,解决 CGI 执行效率瓶颈成了一个头痛的问题。以一个股市实时行情报价的网站为例,每天的联机请求将近八成集中在股市开盘的尖峰时段内,更是对网站应用程序极大的考验。
……