CGI, FASTCGI, XML, XSLT
CGI? 太老了吧!是的,一般人都会说是过时的技术。而且它的并发性很低,很难应付高并发的请求。主要是每次请求服务器都要启动进程,然后处理。而其实CGI程序本身运行的时间很少,尤其是用C开发的CGI,其速度是不用怀疑的。要解决服务器启动进程耗时的问题,利用FASTCGI就可以了。它在CGI的基础上,提供了很好的缓存机制,每次请求不需要建立进程,传说其速度可以达到shtml的水平,差不多是纯静态html的一半。也传说百度、Google也是用C/C++写的,虽然不知道它们具体是怎么做的,但是绝对是离不开C的。
然而,不管是CGI还是FASTCGI,还有个问题就是必须一条一条的输出html,不像php、asp那样直接可以在html中嵌入脚本。解决这个问题,就使用到了XML和XSLT。利用CGI/FASTCGI的高速度来处理数据(XML格式),不涉及显示层,也就是不用手动输出html标签,只要处理XML数据就行了,而处理XML数据还是比较简单的。显示的工作交给XSLT,而且现在大部分的浏览器都支持XSLT,也就是不用在服务器端执行XML的转换工作,直接把数据发送到浏览器,让浏览器转换、显示,这样还可以缓解服务器的压力。而且XSLT还可以执行一些逻辑,比如排序,这样可以把更多的工作分配给浏览器端。
这就是CGI/FASTCGI 与XML、XSLT结合的优势。


7条评论 ▼