动态页面请求并发处理方法和系统的制作方法

文档序号:8527999阅读:336来源:国知局
动态页面请求并发处理方法和系统的制作方法
【技术领域】
[0001]本发明涉及网络技术领域,特别是涉及一种动态页面请求并发处理方法和系统。
【背景技术】
[0002]静态页面是已经存在的、无需经过服务器编译即可直接加载到浏览器上显示出来的页面。一个静态页面对应一个固定的页面内容,服务器只需要将静态页面传送给请求者,而不需要进行脚本计算或读取后台数据库。静态页面的网址形式通常以htm”或html”等为后缀。而动态页面实际上并不是独立存在于服务器上的页面文件,动态页面上的内容存在于数据库中,动态页面的形成需要服务器访问相关应用程序以及数据库,动态页面的内容也会随着若干参数的不同而不同,例如服务器根据不同用户或不同时间等对同一个动态页面的请求返回具有不同内容的动态页面。动态页面的网页形式通常包含“? ”等符号。
[0003]用于获取静态页面的请求或称为静态页面请求,相应的,用于获取动态页面的请求可称为动态页面请求。虽然有些传统的网页服务器可并发支持的静态页面请求数量很高,但传统网页服务器对动态页面请求一般都采用串行处理的方式。
[0004]为了支持对动态页面请求的并发处理,目前通用的解决方法一般是扩充服务器数量。然而目前这种通用的解决方法所占用的服务器资源量大,且所支持的动态页面请求并发处理量严重受到服务器资源数量的限制。

【发明内容】

[0005]为了实现由单独的服务器支持动态页面请求的并发处理,本发明提供动态页面请求并发处理方法和系统。
[0006]一种动态页面请求并发处理方法,包括以下步骤:
[0007]接收浏览器发送的动态页面请求;
[0008]解析所述动态页面请求,执行所述动态页面请求对应的应用程序;
[0009]当所述应用程序访问外部接口时,记录所述动态页面请求的处理状态,转而处理浏览器发送的其它请求;
[0010]监听所述外部接口是否返回数据;
[0011]在监听到所述外部接口已经返回数据之后,根据所述动态页面请求的处理状态继续执行所述应用程序。
[0012]一种动态页面请求并发处理系统,包括:
[0013]请求接收模块,用于接收浏览器发送的动态页面请求;
[0014]请求执行模块,用于提取所述动态页面请求中的应用程序信息,根据所述应用程序信息执行对应的应用程序;
[0015]处理状态记录模块,用于当所述应用程序访问外部接口时,记录所述动态页面请求的处理状态,
[0016]所述请求执行模块还用于当所述应用程序访问外部接口时,转而处理浏览器发送的其它请求;
[0017]监听模块,用于监听所述外部接口是否返回数据;
[0018]所述请求执行模块还用于在监听到所述外部接口已经返回数据之后,根据所述动态页面请求的处理状态继续执行所述应用程序。
[0019]上述动态页面请求并发处理方法和系统,在执行动态页面请求对应的应用程序时,若应用程序访问外部接口,则记录动态页面请求的处理状态,转而处理浏览器发送的其它请求,而不是进入阻塞状态,直到外部接口返回数据为止,在处理其它请求的同时,监听外部接口是否返回数据,在监听到外部接口已经返回数据之后,可根据动态页面请求的处理状态继续执行动态页面请求对应的应用程序,从而可实现由单独的服务器支持对动态页面请求的并发处理,而不需要通过增加服务器数量来实现对动态页面请求的并发处理。
【附图说明】
[0020]图1为一个实施例中的动态页面请求并发处理方法的流程示意图;
[0021]图2为一个实施例中的动态页面并发处理方法对应的交互示意图;
[0022]图3为另一实施例中的动态页面请求并发处理方法的流程示意图;
[0023]图4为一个实施例中的动态页面请求并发处理系统的结构示意图;
[0024]图5为另一实施例中的动态页面请求并发处理系统的结构示意图;
[0025]图6为又一实施例中的动态页面请求并发处理系统的结构示意图;
[0026]图7为再一实施例中的动态页面请求并发处理系统的结构示意图;
[0027]图8为能实现本发明实施例的一个计算机系统1000的模块图。
【具体实施方式】
[0028]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0029]除非上下文另有特定清楚的描述,本发明中的元件和组件,数量既可以单个的形式存在,也可以多个的形式存在,本发明并不对此进行限定。本发明中的步骤虽然用标号进行了排列,但并不用于限定步骤的先后次序,除非明确说明了步骤的次序或者某步骤的执行需要其他步骤作为基础,否则步骤的相对次序是可以调整的。可以理解,本文中所使用的术语“和/或”涉及且涵盖相关联的所列项目中的一者或一者以上的任何和所有可能的组口 ο
[0030]如图1所示,在一个实施例中,一种动态页面请求并发处理方法,包括以下步骤:
[0031]步骤S101,接收浏览器发送的动态页面请求。
[0032]步骤S102,提取动态页面请求中的应用程序信息,根据该应用程序信息执行对应的应用程序。
[0033]在一个实施例中,步骤S102在动态页面请求中提取的应用程序信息为CGI程序信息,相应的,所执行的应用程序为CGI程序。
[0034]CGI (Common Gateway Interface,通用网关接口)是CGI程序与Web服务器之间的接口标准,是CGI程序和Web服务器之间传递信息的规程。CGI程序即是按照CGI规范编写的Web服务器上的外部应用程序。Web服务器的许多应用功能通过执行CGI程序来实现。
[0035]一个动态页面请求对应一个CGI程序。动态页面请求携带的网址信息中包含CGI程序目录信息。服务器上的CGI程序在动态页面的网址信息中的目录名称、目录名称在网址信息中的位置以及CGI程序在服务器上的真实路径被预先配置在服务器上的配置文件中(例如,CREN格式服务器上的/etc/httpd.conf)。步骤S102可查找动态页面请求携带的网址信息中包含的CGI程序目录信息在配置文件中所匹配的目录名称及目录名称位置,并获取对应的真实路径,执行服务器上该真实路径下的CGI程序。
[0036]步骤S103,当上述应用程序访问外部接口时,记录上述动态页面请求的处理状态,转而处理浏览器发送的其它请求。
[0037]一条动态页面请求的处理状态记录可包含动态页面请求的标识、对应的应用程序正在访问的外部接口名称和对应的应用程序的当前执行位置等数据项信息。
[0038]步骤S104,监听上述外部接口是否返回数据。
[0039]步骤S105,在监听到上述外部接口已经返回数据之后,根据动态页面请求的处理状态继续执行上述应用程序。
[0040]可获取动态页面请求的处理状态中的对应的应用程序的当前执行位置,从该当前执行位置起继续往下执行对应的应用程序。
[0041]当动态页面请求对应的应用程序执行完毕后,可得到执行应用程序获得的动态页面,从而可将执行应用程序获得的动态页面返回给发送动态页面请求的浏览器。
[0042]在一个实施例中,上述动态页面请求并发处理方法还包括步骤:将上述动态页面请求对应的应用程序历史访问的数据导入内存。可通过数据导入工具从数据库中将对应的数据导入内存。
[0043]本实施例中,将动态页面请求对应的应用程序历史访问的数据导入内存,可加快数据访问的速度,缩短执行动态页面请求对应的应用程序的时间,提高对动态页面请求的响应速度,从而可增加并发处理动态页面请求的数量。
[0044]在一个实施例中,可将对应的应用程序预设近期内访问的数据中访问频率前预设位的数据导入内存。
[0045]在此之前,上述动态页面请求并发处理方法还包括步骤:记录web服务器上各应用程序的数据访问日志,统计预设近期内各应用程序访问的数据的访问频率。
[0046]本实施例中,将动态页面请求对应的应用程序预设近期内访问的数据中访问频率前预设位的数据导入内存,即将动态页面请求对应的应用程序最近经常访问的数据导入内存,既可提高对动态页面请求的响应速度,又可兼顾内存容量有限的问题。
[0047]上述动态页面并发处理方法中的步骤可由Web服务器执行,具体而言,可由Web服务器进程执行。图2为一个实施例中的动态页面并发处理方法对应的交互示意图。如图2所示:
[0048](I)Web服务器接收浏览器发送的动态页面请求。
[0049](2)ffeb服务
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1