Mysql入门系列:在MYSQL中如何使用API
2006-12-31 10:51:49 来源:WEB开发网■ 可以安排Apache 去调用这个解释程序作为单独的过程。当Apache 需要运行Perl 或PHP 脚本时,它启动相应的程序,并告知它来执行该脚本。在这种情况下, Apache 使用该解释程序作为CGI 程序,也就是说,它使用公共网关接口( Common Gateway Inter face,CGI)协议与它们通信。
■ 解释程序可用作直接连接到Apache 二进制程序和作为其过程自身的一部分运行的模块。在Apache 条件下, Perl 和PHP 解释程序获得mod_perl 和mod_php3 模块的形式。
Perl 和PHP 的提倡者们极力宣扬解释程序有速度优势,但所有的人都同意之所以喜欢解释程序是因为其运行的形式比语言本身有更大的诱惑力。在这两者中,解释程序作为模块运行比作为独立的CGI 应用程序运行更快。
对于独立的应用程序,每当运行一个脚本时都必须启动该解释程序,所以将导致重大的创建过程的开销。当在已经运行Apache 过程的内部作为模块使用时,解释程序可以立即从Web 页面中访问。通过减少开销显著地提高了性能,并直接转换为快速处理获取的请求并发
送它们的能力的增加。
独立解释程序启动的性能比模块解释程序的性能至少差一个数量级。当考虑Web 页面服务包括少量处理的快速事务处理而不是具有许多处理时,解释程序启动的开销特别重要。如果花费许多时间只是为了启动而不是用于实际执行该脚本,则大部分资源一直处于等待状态。一天中的大部分时间可能花费在准备工作上, 4 点到达,然后5 点回家。
您可能想知道,为什么解释程序的模块版本由于必须一直启动Apache 而能节省时间呢?。这个原因是,当Apache 启动时,它立即产生一些子过程,用于处理收到的请求。当包括脚本执行的请求到达时,已经有Apache 进程在准备等待去处理它。同样, Apache 的每个实例可服务于多个请求,所以该进程启动的开销只导致每组请求一次,而不是每个请求一次。
更多精彩
赞助商链接