`
xumingyong
  • 浏览: 183474 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

关于FastCGI

阅读更多

FastCGI的技术原理

如果想了解FastCGI的技术原理就要了解何为"短生存期应用程序",何为"长生存期应用程序"。

先从CGI技术开刀,以下是CGI技术的理论:每次当客户请求一个CGI的时候,Web服务器就请求操作系统生成一个新的CGI进程。当CGI满足要求后,服务器就杀死这个进程。服务器对客户端的每个请求都要重复这样的过程。    而FastCGI技术的理论为:FastCGI程序一旦产生后,他可以持续工作,足够满足客户的请求直到被明确的终止。如果你希望通过协同处理来提高程序的性能,你可以请求Web服务器运行多个FastCGI 应用程序的副本。

CGI就是所谓的短生存期应用程序,FastCGI就是所谓的长生存期应用程序。

由于FastCGI程序并不需要不断的产生新进程,可以大大降低服务器的压力。并且产生较高的应用效率。

自今,较为流行的Java语言Servlet技术在设计上是以参考FastCGI的技术运行所设计。

FastCGI的特点

1. 打破传统页面处理技术

传统的页面处理技术,程序必须与Web服务器或Application服务器处于同一台服务器中。这种历史已经早N年被FastCGI技术 所打破, FastCGI技术的应用程序可以被安装在服务器群中的任何一台服务器,而通过TCP/IP协议与Web服务器通讯,这样做既适合开发大型分布式Web 群,也适合高效数据库控制。

2. 明确的请求模式

CGI技术没有一个明确的角色,在FastCGI程序中,程序被赋予明确的角色(响应器角色、认证器角色、过滤器角色)。

3. 合理的程序结构

起初,真的很讨厌FastCGI应用程序的结构要求。没关系,您经过一段时间编写后就会喜欢这种结构,只有这种完全规范的结构才能让您的程序更有效率。

Using FastCGI with Rails

$ /etc/init.d/httpd stop

$ sudo apt-get install libfcgi-dev
$ sudo gem install fcgi

FreeBSD user

$ sudo gem install fcgi -- --with-fcgi-include=/usr/local/include --with-fcgi-lib=/usr/local/lib

apache httpd. conf

LoadModule fastcgi_module /usr/lib/apache2/modules/mod_fastcgi.so
<IfModule mod_fastcgi.c>
    FastCgiIpcDir /tmp/fcgi_ipc/
    AddHandler fastcgi-script .fcgi
</IfModule>

Gentoo users

emerge fcgi ruby-fcgi mod_fastcgi
$ apache2ctl reload

public/dispatch.fcgi

charge require 'fcgi' to
require 'rubygems'
require_gem 'fcgi'

$ sudo gem update

public/.htaccess

charge RewriteRule ^(.*)$ /dispatch.cgi?$1 [QSA,L] 
to RewriteRule ^(.*)$ /dispatch.fcgi?$1 [QSA,L]

相关信息: http://wiki.rubyonrails.com/rails/pages/FastCGI

分享到:
评论

相关推荐

    fastcgi-2.4.0安装包

    以上就是关于FastCGI-2.4.0安装包的相关知识点,从解压到配置,再到集成到Web服务器,最后进行优化和监控,整个过程都需要一定的Linux和Web服务器管理经验。理解这些步骤对于管理和维护高性能的Web服务器至关重要。

    FastCGI 下载FastCGI for IIS6下载 1.5(32位&64位)

    **FastCGI技术详解** FastCGI是一种常用于提高Web服务器性能的技术,它作为一个接口,允许Web服务器与外部应用程序(如PHP解释器)进行高效通信。FastCGI的主要优势在于它可以长时间保持活动状态,避免了每次请求都...

    fastcgi c++

    fastcgi fastcgi fastcgi fastcgi fastcgi

    FastCGI SDK

    **FastCGI SDK详解** FastCGI是一种常用于Web服务器上的接口协议,它允许外部程序(如PHP、Perl、Python等脚本语言解释器)作为Web服务器的动态内容生成器,提高了网站性能和响应速度。FastCGI的核心设计目标是避免...

    mod_fastcgi-2.4.6.tar.gz

    [原创] Redhat 上 FastCGI 安装与配置 软件包 相关软件包: httpd httpd-devel fcgi-2.4.0.tar.gz mod_fastcgi-2.4.6.tar.gz 请仔细阅读其中的README 配置httpd.conf: LoadModule fastcgi_module modules/mod_...

    fastcgi中文手册.pdf

    《FastCGI中文手册》是IT领域中关于Web服务器与应用程序接口的重要参考资料,它详细介绍了FastCGI协议的原理、实现以及应用。FastCGI是一种用于提高动态内容生成速度的技术,它通过持久连接来减少每次请求时的启动和...

    FastCGI For IIS6.0

    相比之下,FastCGI保持了CGI进程的长期运行,使得多次请求可以复用同一进程,显著降低了进程管理的开销,提高了服务响应速度。 FastCGI for IIS6.0是专为Windows Server 2003上的IIS6.0设计的,它允许IIS服务器与...

    Java的FastCGI网关 jFastCGI

    **Java的FastCGI网关 jFastCGI** 在Web开发中,FastCGI(Fast Common Gateway Interface)是一种常用于提高动态网站性能的技术,它允许Web服务器与后端应用程序进行高效通信。jFastCGI是Java平台上的一个实现,它为...

    FastCGI手册

    ### FastCGI手册知识点解析 #### 一、FastCGI技术概述 FastCGI是一种用于提高Web应用程序性能的技术,尤其适用于提高动态网页处理的速度。它通过优化传统的CGI(Common Gateway Interface)模型,解决了CGI效率低下...

    fastcgi头文件和库

    标题中的“fastcgi头文件和库”指的是FastCGI接口的开发资源,这通常包括了C语言编程中使用的头文件(header files)和库文件(library files)。FastCGI是一种常用于Web服务器与应用程序之间通信的协议,它提高了...

    fcgi-test.zip_DEMO_fcgi_fscgi测试

    标题中的"fcgi-test.zip_DEMO_fcgi_fscgi测试"表明这是一个关于FastCGI(Fast Common Gateway Interface)和FastCGI(FastCGI Server-side)的测试项目,用于验证它们与Nginx服务器之间的通信是否正常。在Web开发中...

    Fastcgi学习总结(C/C++语言版)

    FastCGI是一种高性能的Web服务器接口,它是CGI(通用网关接口)的增强版本,旨在解决传统CGI性能上的问题。FastCGI程序能够长时间运行,而不是每次用户请求时都创建新的进程,从而提高了效率并降低了服务器负载。...

    mod-fastcgi-2.4.6 for apache2.40

    mod_fastcgi是Apache的一个模块,它实现了FastCGI协议,使得Apache服务器能够与FastCGI进程管理器(如spawn-fcgi或fcgiwrap)通信,进而调用动态语言(如PHP、Perl、Python等)的解释器。这个模块提供了比mod_php等...

    用VC++开发FastCGI+MySQL的基本源代码

    在IT行业中,FastCGI(Fast Common Gateway Interface)是一种用于提高Web服务器性能的技术,它能够使Web服务器与外部应用程序(如动态脚本语言解释器)进行高效通信。FastCGI的核心理念是保持进程常驻,避免每次...

    windows+IIS 环境下以Fastcgi方式配置php 5.3.3的方法

    下载 Microsoft FastCGI Extension for IIS 5.1 and 6.0,用于启用 Fastcgi 扩展。 步骤 5:配置 FastCGI 扩展 安装 FastCGI 扩展,并配置 fcigext.ini 文件,在文件末尾添加以下内容: [Types] php=PHP [PHP] ...

    Fastcgi 中文参考手册(DOC)

    **FastCGI 中文参考手册概述** FastCGI 是一种用于 Web 服务器和应用程序之间通信的协议,它旨在提高网站性能,特别是在处理动态内容时。FastCGI 的设计目标是克服 CGI(Common Gateway Interface)的性能瓶颈,...

    testFCGI.rar

    标题中的“testFCGI.rar”是一个压缩包文件,暗示了我们将在Windows环境下探讨关于FASTCGI的测试案例。FASTCGI(Fast Common Gateway Interface)是一种让Web服务器与动态内容生成程序进行通信的协议,旨在提高CGI...

    nginx-1.14.0.zip_nginx fastcgi

    在配置Nginx以使用FastCGI时,你需要在Nginx配置文件中定义一个location块,指定哪些URL应该通过FastCGI处理。例如: ```nginx location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/...

Global site tag (gtag.js) - Google Analytics