脚本程序的访问方法、装置及系统的制作方法

文档序号:9452873阅读:173来源:国知局
脚本程序的访问方法、装置及系统的制作方法
【技术领域】
[0001]本发明涉及计算机网络技术领域,具体涉及一种脚本程序的访问方法、装置及系统。
【背景技术】
[0002]Nginx(engine x)是一个高性能的Web服务器,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。Nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口(Fast Common Gateway Interface,快速公共网关接口)来调用。FastCGI接口成为Web服务器与其它机器上的程序进行“交谈”的工具。
[0003]Nginx启动时载入FastCGI进程管理器,FastCGI进程管理器自身初始化,启动多个CGI解释器进程并等待来自Nginx的连接。当客户端请求到达Nginx时,FastCGI进程管理器选择并连接到一个CGI解释器,Nginx将CGI环境变量和标准输入发送到FastCGI子进程php-cgi。FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回Nginx。当FastCGI子进程关闭连接时,请求便告处理完成。FastCGI子进程接着等待并处理来自FastCGI进程管理器的下一个连接。
[0004]现有技术中,一个Nginx仅配置一个FastCGI进程管理器,当不同的客户端请求到达时,都要通过该FastCGI进程管理器访问对应的PHP (Hypertext Preprocessor,超文本预处理器)脚本。然而,在实际中许多重要的PHP脚本的客户端请求的并发访问量很大,一旦某个PHP脚本的并发访问量过大,容易导致FastCGI进程管理器刷挂,进而影响其它所有PHP脚本的访问。

【发明内容】

[0005]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的脚本程序的访问方法、装置及系统。
[0006]根据本发明的一个方面,提供了一种脚本程序的访问方法,包括:
[0007]根据外部程序中各个脚本程序所实现的功能,为各个脚本程序配置对应的进程管理器,将配置情况写入web服务器的配置文件中,其中,所有脚本程序中至少两个脚本程序所配置的进程管理器不同;
[0008]当接收到客户端请求时,查询所述配置文件,确定所述客户端请求所访问的目标脚本程序对应的进程管理器,通过所确定的进程管理器访问所述目标脚本程序。
[0009]根据本发明的另一方面,提供了一种脚本程序的访问装置,包括:
[0010]配置模块,适于根据外部程序中各个脚本程序所实现的功能,为各个脚本程序配置对应的进程管理器,将配置情况写入web服务器的配置文件中,其中,所有脚本程序中至少两个脚本程序所配置的进程管理器不同;
[0011]查询模块,适于当接收到客户端请求时,查询所述配置文件,确定所述客户端请求所访问的目标脚本程序对应的进程管理器;
[0012]访问模块,适于通过所确定的进程管理器访问所述目标脚本程序。
[0013]根据本发明的又一方面,提供了一种脚本程序的访问系统,包括:上面所述的脚本程序的访问装置,以及外部程序服务器、进程管理器。
[0014]本发明提供的脚本程序的访问方法、装置及系统,根据外部程序中各个脚本程序所实现的功能,为各个脚本程序配置对应的进程管理器,其中,所有脚本程序中至少两个脚本程序所配置的进程管理器不同,通过这样的配置,当某个脚本程序的并发访问量过大导致该脚本程序对应的进程管理器刷挂时,另外的进程管理器还能为与之对应的其它脚本程序提供访问接口服务,不至于影响所有脚本程序的访问,在一定程度上提升了系统的稳定性。
[0015]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0016]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0017]图1示出了根据本发明一个实施例的脚本程序的访问方法的示意图;
[0018]图2示出了根据本发明另一个实施例的脚本程序的访问方法的示意图;
[0019]图3示出了根据本发明又一个实施例的脚本程序的访问方法的示意图;
[0020]图4示出了根据本发明一个实施例的脚本程序的访问装置的功能框图;
[0021]图5示出了根据本发明一个实施例的脚本程序的访问系统的功能框图。
【具体实施方式】
[0022]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0023]图1示出了根据本发明一个实施例的脚本程序的访问方法的示意图。如图1所示,该方法包括如下步骤:
[0024]步骤S101,根据外部程序中各个脚本程序所实现的功能,为各个脚本程序配置对应的进程管理器,将配置情况写入web服务器的配置文件中,其中,所有脚本程序中至少两个脚本程序所配置的进程管理器不同。
[0025]本实施例提供的方法适用于web服务器不支持对外部程序直接调用或者解析,而必须通过进程管理器来调用的情况,典型的如Nginx通过FastCGI接口调用外部程序。与现有技术不同的是,本方法不仅仅只配置一个进程管理器来管理外部程序的调用,而是按照外部程序中脚本程序的实际情况,为各个脚本程序配置对应的进程管理器。这里,多个脚本程序中至少两个脚本程序所配置的进程管理器不同。也即,为了便于调用外部程序,一个web服务器里所配置的进程管理器至少为两个。
[0026]在配置完成后,将配置情况写入web服务器的配置文件中,以供web服务器进行保存。具体的,在配置文件中写入脚本程序与进程管理器的对应关系,脚本程序与进程管理器的对应关系为一对一或多对一。
[0027]步骤S102,当接收到客户端请求时,查询配置文件,确定客户端请求所访问的目标脚本对应的进程管理器,通过所确定的进程管理器访问所述目标脚本程序。
[0028]当接收到客户端请求时,先查询配置文件,根据配置文件记录的对应关系确定客户端请求所访问的目标脚本程序对应的进程管理器,通过所确定的进程管理器访问目标脚本程序。
[0029]本实施例提供的脚本程序的访问方法,根据外部程序中各个脚本程序所实现的功能,为各个脚本程序配置对应的进程管理器,其中,所有脚本程序中至少两个脚本程序所配置的进程管理器不同,通过这样的配置,当某个脚本程序的并发访问量过大导致该脚本程序对应的进程管理器刷挂时,另外的进程管理器还能为与之对应的其它
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1