您的位置  > 互联网

发明内容本发明实施方式提供一种动态网页的生成方法

技术领域:

[0001] 本发明涉及网络通信领域,尤其涉及一种动态网页的生成方法及系统。

背景技术:

随着Web系统的发展,网页已从静态网页变为动态网页,操作系统根据用户发送的超文本传输​​协议(Hyper Text,http)请求,向操作系统请求相应的超文本标签。上面的http请求。 语言(超文本,html)文件传输给用户已经不能满足动态网页的要求。 为了向用户提供动态网页,现有技术提供了一种生成动态网页的方法。 该方法包括Web服务器根据用户提供的数据并使用传统的公共网关接口(CGI)机制动态生成所需的HTML。 文件并将 html 文件发送给用户。

在实现本发明的过程中,现有技术提供的技术方案存在以下问题。 现有的四种技术方案中,采用传统的cgi机制来生成动态网页,传统的cgi机制涉及大量的内存分配和复制; 从而占用CPU处理时间,从而影响动态网页生成的效率。

发明内容

本发明实施例提供一种动态网页的生成方法及系统。 该系统和方法具有效率高的优点。

本发明的具体实施方式

提供了一种生成动态网页的方法。 该方法包括通用网关接口cgi和服务器、cgi和共享内存; 该方法具体包括将用户发送的数据存储到上述共享内存中;

cgi读取共享内存中用户发送的数据,根据用户发送的数据生成动态网页,将动态网页存储到共享内存中,并与动态网页进行比较

对应的内存块被发送到;

将动态网页对应的内存块转发给用户。

本发明还提供了一种动态网页生成系统,包括公共网关接口cgi和服务器、cgi和共享内存。

所述的,用于在接收到用户发送的数据后,将用户发送的数据存储到共享内存中;

cgi用于读取共享内存中用户发送的数据,并根据用户发送的数据

根据发送的数据生成动态网页,将动态网页存储在共享内存中,并将动态网页存储在共享内存中。

发送到动态网页对应的内存块;

该方法还用于将动态网页对应的内存块转发给用户。 从以上提供的技术方案可以看出,本发明实施例的技术方案cgi和web

它是共享内存,因此在生成动态网页(html文件)时不需要使用内存。

分配和复制,从而提高动态网页生成的效率。

如图。 图1为本发明一实施例提供的动态网页生成方法的流程图; 如图。 图2为本发明另一实施例提供的动态网页生成方法的流程图。 如图。 图3为本发明又一实施例提供的动态网页生成方法的流程图。 图4为本发明提供的动态网页生成系统的结构图。

具体实施例

本发明实施例提供了一个例子。 本实施例提供了一种生成动态网页的方法。 本例子是在cgi和web之间完成的,cgi和web共享内存; 共享内存的实现方法可以是/OPEN的系统接口(X/OPEN,

XSI)共享内存实现,具体参见1003.1中的相关规定;

该方法如图1所示,包括以下操作

步骤11、接收到用户发送的数据后,将数据存储到内存中; 步骤12、CGI在内存中读取用户发送的数据,并根据用户发送的数据生成数据。

动态网页,将动态网页存储在内存中,并发送动态网页对应的内存块

到网络;

本步骤中的动态网页存储到内存中可以通过将动态网页整体存储到内存中的方式,也可以将动态网页片段存储到内存中,如下所述。 步骤13、web将动态网页对应的内存块转发给用户。 本发明实施例提供的方法中的cgi和web共享内存,因此在生成动态网页(html文件)时无需进行内存分配和复制,提高了生成动态网页的效率。

本发明的具体实施方式

还提供了另一个实施例。 本实施例提供一种动态网页的生成方法。 本实施例中,cgi以分片存储的形式存储html文件。 该方法如图2所示,包括

步骤21与步骤11完全相同;

步骤22、CGI读取内存中用户发送的数据,根据用户发送的数据生成动态网页,将动态网页片段存储到内存中,并发送动态网页对应的内存块到网络;

上述步骤22的具体实现方法可以包括

Cgi读取用户发送的数据后,生成一个动态网页,将动态网页中的静态数据和动态数据(也称为变量)分别存储在内存中,并压入静态数据对应的内存块和根据动态网页中静态数据和动态数据的位置将动态数据对应的内存块进行组合,并按顺序发送到网页。下面通过一个实际例子来说明顺序组合的具体方法。 假设一个动态网页有l个动态数据。 动态数据位于动态网页的中间。 以此动态数据为基础。

将动态网页分为三部分,静态前数据、动态数据和静态后数据。 将静态前数据、动态数据和静态后数据分别存储在内存中的三个位置。 这里假设预静态数据对应的内存块为<,>; 静态数据对应的内存块为<、>,动态数据对应的内存块为<、>; 然后将动态网页中的静态数据和动态数据按照所在的顺序进行组合,得到动态网页对应的内存块。 内存块,具体可以是<,,,,,,,>。 上述代表该数据对应的内存地址的起始值,代表该数据对应的内存地址的存储长度值。

上述分片存储可以减少读取、替换和输出操作。 具体来说,由于该方法对动态网页进行了分片,因此其存储的内存块减少,从而减少了对预先分配不够大的内存块的需要。 这样,就减少了重新分配更大内存块的概率,也减少了将原始内容复制到重新分配的更大内存块的概率,从而减少了读取、替换和输出操作,提高了效率。

步骤23:web将动态网页对应的内存块转发给用户。本实施例提供的方法中cgi和web共享内存,因此在生成动画时

在动态网页(html文件)中,不需要内存分配和复制,从而提高了动态网页的性能。

生成效率高,并且该方法采用分片存储来存储动态网页,从而减少了读取的需要,

替换输出4个操作,进一步提高效率。

本发明还提供了另一个实施例。 本实施例提供一种动态网页的生成方法。

本实施例所实现的场景如下。 本实施例以html模板为例。 假设使用脚本

这次,web 和 cgi 共享相同的内存。 假设生成的动态网页的模板可以是

〈输入类型=“文本”值=“fff”/>

0/操作系统

上述动态网页。 /os 是动态数据(也称为变量)。 上述动态网页除动态数据外,其余均为静态数据。 该方法如图3所示,包括以下步骤。 步骤31与步骤11完全相同;

步骤32、CGI根据用户发送的数据生成动态网页,将动态网页中的静态数据和动态数据分别存储在内存中,并根据位置存储动态网页对应的内存块动态网页中的静态数据和动态数据。 按顺序组合并发送到网络;

步骤32的具体实现方法可以为:cgi生成动态网页,并将动态网页分为3部分。 具体的存储方法可以是:

〈输入类型=“文本”值=“fff”/>

发布静态数据,具体可以是

动态数据,具体为 %s;

将第一个静态数据存储在内存块<,1>中,将最后一个静态数据存储在内存块<,>中; 将动态数据存储在<,>中;

根据静态数据和动态数据在动态网页中的位置,将前静态数据、后静态数据和动态数据对应的内存块组合起来,得到动态网页对应的内存块<、、、、 , ,>, 3. 抢占动态网页块<, 1, , , , >对应的内存发送到web;

上述实现方法可以具体为:cgi通过静态数据地址获取函数获取静态数据对应的内存块,例如cgi通过动态数据地址获取函数获取动态数据对应的内存块如( ),然后cgi通过一个地址组合函数将静态数据对应的内存块和动态数据对应的内存块()组合起来,从而得到动态数据对应的内存块动态网页,并将动态网页对应的内存块发送至网络。

步骤33与步骤23完全相同。

本实施例提供的方法中的cgi和web共享内存,因此在生成动态网页(html文件)时,不需要内存分配和复制,从而提高了动态网页的生成效率,并且该方法将动态静态数据将网页中的动态数据分开存储,减少读取、替换、输出操作,进一步提高效率。

本发明还提供一种动态网页生成系统。 该系统如图4所示,包括通用网关4、CGI 41、服务器、CGI 41和共享存储器。

,用于接收到用户发送的数据后,将用户发送的数据存储到共享内存中;

Cgi 41,用于读取共享内存中用户发送的数据,并根据用户发送的数据生成动态网页,将动态网页存储在共享内存中,并发送动态网页对应的内存块to;,也用于将动态网页对应的内存块转发给用户。可选的,cgi41具体可以包括

读取模块411,用于读取共享内存中用户发送的数据; 生成模块412,用于根据用户发送的数据生成动态网页。 存储模块413用于分离动态网页中的静态数据和动态数据。 存储在共享内存中;

发送模块414用于按照静态数据和动态数据在动态网页中的位置顺序将静态数据对应的内存块和动态数据对应的内存块组合起来发送。

本发明的具体实施方式

系统中的cgi 41提供共享内存,因此在生成动态网页(html文件)时不需要内存分配和复制,从而提高了动态网页生成的效率,并且cgi 41 413中的存储模块可以存储动态网页中的静态数据和动态数据分别位于共享内存中,从而减少了读取、替换和输出操作,进一步提高了效率。

可以通过程序指令相关硬件来完成。 该程序可以存储在计算机可读存储介质中。 该程序在执行时,包括上述方法步骤。 存储介质包括ROM/RAM、/磁盘。 、CD 等

综上所述,本发明的具体实施例

所提供的技术方案具有准确度高的优点。 以上仅为本发明的优选实施例而已。

但本发明的保护范围并不限于此。 任何在本发明实施例所公开的技术范围内,本领域技术人员能够容易想到的变化或替换,均应包含在本发明的保护范围之内。 里面。 因此,本发明的保护范围应以所述权利要求的保护范围为准。

权利要求

1、一种生成动态网页的方法,包括公共网关接口cgi和服务器,其特征在于,所述cgi和共享内存; 该方法具体包括:接收用户发送的数据,然后生成用户发送的数据。 存储在共享内存中; cgi读取共享内存中用户发送的数据,根据用户发送的数据生成动态网页,将动态网页存储在共享内存中,并将动态网页存储在共享内存中。 发送到动态网页对应的内存块; 将动态网页对应的内存块转发给用户。

2.根据权利要求1所述的方法,其特征在于,将所述动态网页存储在所述共享内存中,并发送所述动态网页对应的内存块具体包括:将所述动态网页存储在所述共享内存中。 静态数据和动态数据分别存储在共享内存中,并根据静态数据和动态数据在动态网页中的位置来排列静态数据对应的内存块和动态数据对应的内存块页。 位置按顺序组合并发送至。

3.根据权利要求1所述的方法,其特征在于,所述cgi与共享内存实现的方法具体为cgi与系统接口XSI通过X/OPEN共享内存。

4、一种动态网页生成系统,包括公共网关接口cgi和服务器,其特征在于,cgi和共享内存用于接收用户发送的数据后,生成用户发送的数据。 存储在共享内存中; CGI用于读取共享内存中用户发送的数据,并根据用户发送的数据生成动态网页,并将动态网页存储在共享内存中。 将动态网页3对应的内存块发送至内存中; 上述还用于将动态网页对应的内存块转发给用户。

5.根据权利要求4所述的系统,其特征在于,所述cgi具体包括读取模块,用于读取所述共享内存中用户发送的数据。 生成模块,用于根据用户发送的数据读取用户发送的数据。 数据生成动态网页; 存储模块,用于将动态网页中的静态数据和动态数据存储在共享内存中; 发送模块,用于存储静态数据和动态数据对应的内存块。将对应的内存块按照静态数据和动态数据在动态网页中的位置顺序组合发送。

全文摘要

本发明实施例提供一种动态网页的生成方法及系统。 该方法及系统属于网络通信领域。 该方法包括通用网关接口cgi和服务器、cgi和共享内存; 接收到用户发送的数据后,将用户发送的数据存储到共享内存中; cgi读取共享内存中用户发送的数据,根据用户发送的数据生成动态网页,并将动态网页存储到共享内存中,并将动态网页对应的内存块发送给; 将动态网页对应的内存块转发给用户; 该方法及系统具有效率高的优点。

文件号码/

发表日期:2009年12月30日申请日期:2009年7月16日优先权日:2009年7月16日

发明人周晓波申请人:腾讯科技(深圳)有限公司