动态网页的生成方法及系统.pdf

上传人:小** 文档编号:1024364 上传时间:2018-03-26 格式:PDF 页数:12 大小:507.78KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910089383.3

申请日:

2009.07.16

公开号:

CN101615194A

公开日:

2009.12.30

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G06F17/30; H04L29/08

主分类号:

G06F17/30

申请人:

腾讯科技(深圳)有限公司

发明人:

周晓波

地址:

518028广东省深圳市福田区赛格科技园2栋东403室

优先权:

专利代理机构:

北京凯特来知识产权代理有限公司

代理人:

郑立明

PDF下载: PDF下载
内容摘要

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

权利要求书

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

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

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

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

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

说明书

动态网页的生成方法及系统
技术领域
本发明涉及网络通信领域,尤其涉及一种动态网页的生成方法及系统。
背景技术
随着Web系统的发展,网页已经从静态网页变成了动态网页,而根据用户发送的超文本传输协议(Hyper Text Transfer Protocol,http)请求向操作系统请求上述http请求对应超文本标记语言(Hyper Text Markup Language,html)文件,并传送给用户已经无法满足动态网页的要求。为了向用户提供动态网页,现有技术提供了一种动态网页的生成方法,该方法包括:web服务器(server)根据用户提供的数据并采用传统通用网关接口(Common Gateway Interface,cgi)机制动态生成所需的html文件,并将该html文件发送给用户。
在实现本发明的过程中,现有技术所提供的技术方案存在如下问题:
现有技术的方案中的是采用传统的cgi机制进行动态网页的生成的,而传统的cgi机制涉及到大量的内存分配和拷贝;从而占用CPU的处理时间,进而影响动态网页的生成效率。
发明内容
本发明实施方式提供一种动态网页的生成方法及系统,该系统及方法具有效率高的优点。
本发明的具体实施方式提供一种动态网页的生成方法,该方法包括:通用网关接口cgi和服务器server,所述cgi和所述server共用内存;所述方法具体包括:
server接收用户发送的数据后,将所述用户发送的数据存储在所述共用内存中;
cgi读取所述共用内存中的用户发送的数据,并根据所述用户发送的数据生成动态网页,并将所述动态网页存储在所述共用内存中,并将所述动态网页对应的内存块发送给server;
server将所述动态网页对应的内存块转发给用户。
本发明还提供一种动态网页的生成系统,包括:通用网关接口cgi和服务器server,所述cgi和所述server共用内存;
所述server,用于接收用户发送的数据后,将所述用户发送的数据存储在所述共用内存中;
所述cgi,用于读取所述共用内存中的用户发送的数据,并根据所述用户发送的数据生成动态网页,并将所述动态网页存储在所述共用内存中,并将所述动态网页对应的内存块发送给server;
所述server,还用于将所述动态网页对应的内存块转发给用户。
由上述所提供的技术方案可以看出,本发明实施例的技术方案cgi和webserver是共享内存的,所以其在生成动态网页(html文件)中,不需要进行内存分配和拷贝,从而提高了动态网页的生成效率。
附图说明
图1为本发明一实施例提供的一种动态网页的生成方法的流程图;
图2为本发明另一实施例提供的一种动态网页的生成方法的流程图。
图3为本发明又一实施例提供的一种动态网页的生成方法的流程图。
图4为本发明提供的一种动态网页的生成系统的结构图
具体实施方式
本发明实施方式提供一实施例,本实施例提供一种动态网页的生成方法,本实施例是在cgi和web server之间完成的,并且cgi和web server共享内存;其中共享内存的实现方法可以为X/OPEN的系统接口(X/OPEN System Interface,XSI)共享内存的实现方式,具体可以参见IEEE STD 1003.1中的相关规定;该方法如图1所示,包括如下操作:
步骤11、web server接收用户发送的数据后,将该数据存储在内存中;
步骤12、cgi读取内存中的用户发送的数据,并根据该用户发送的数据生成动态网页,并将该动态网页存储在内存中,并将该动态网页对应的内存块发送给web server;
该步骤中的动态网页存储在内存中的方式可以为,将动态网页整体存储在内存中,或者使用如下描述的将动态网页分片存储在内存中。
步骤13、web server将该动态网页对应的内存块转发给用户。
本发明一实施例提供的方法中的cgi和web server是共享内存的,所以其在生成动态网页(html文件)中,不需要进行内存分配和拷贝,从而提高了动态网页的生成效率。
本发明具体实施方式还提供另一实施例,本实施例提供一种动态网页的生成方法,本实施例中cgi存储html文件的形式采用分片存储,该方法如图2所示,包括:
步骤21与步骤11完全相同;
步骤22、cgi读取内存中的用户发送的数据,并根据该用户发送的数据生成动态网页,并将该动态网页分片存储在内存中,将该动态网页对应的内存块发送给web server;
实现上述步骤22的具体方法可以包括:
Cgi读取用户发送的数据后,生成动态网页,将动态网页中的静态数据和动态数据(也叫变量)分别存储在内存中,并将静态数据对应的内存块和动态数据对应的内存块按动态网页中静态数据和动态数据所在的位置顺序组合起来发送给web server。
下面以一个实际的例子来进行说明顺序组合的具体方式,假设一个动态网页有1个动态数据,该动态数据位于动态网页的中间,则以该动态数据为基准将动态网页分成3个部分,前静态数据、动态数据和后静态数据,将该前静态数据、动态数据和后静态数据分别存储在内存的3个位置,这里假设该前静态数据对应的内存块为<pointer1,length1>;后静态数据对应的内存块为<pointer2,length2>,动态数据对应的内存块为<pointer3,length3>;则按动态网页中静态数据和动态数据所在的位置顺序组合起来机得到动态网页对应的内存块,其具体可以为<pointer1,length1,pointer3,length3,pointer2,length2>。上述pointer表示该数据对应的内存地址的起始值,length表示数据对应的内存地址的存储长度值。
上述分片存储可以减少读入、替换和输出操作,具体为,由于该方法将动态网页进行了分片处理,所以其存储的内存块减小了,这减少了在预分配内存块不够大的情况下重新分配更大的内存块的概率,并减少了将原来的内容拷贝到重新分配的更大的内存块的概率,从而减少了读入、替换和输出的操作,提高了效率。
步骤23、web server将该动态网页对应的内存块转发给用户。
本实施例提供的方法中的cgi和web server是共享内存的,所以其在生成动态网页(html文件)中,不需要进行内存分配和拷贝,从而提高了动态网页的生成效率,并且该方法采用分片存储的方式存储动态网页,从而减少了读入、替换、输出操作,进一步提高了效率。
本发明还提供又一实施例,本实施例提供一种动态网页的生成方法,本实施例实现的场景为,本实施例以html模板为例,假设使用python写web server脚本,该web server和cgi共用同个内存,假设生成的动态网页的模板可以为:
<html>
<head>
<style>
#id1{background:red;}
</style>
</head>
<body>
<input id=″id1″type=″text″value=″fff″/>
<p>%s</p>
</body>
    </html>
上述动态网页的%s即为动态数据(也叫变量),上述动态网页除了动态数据外,其余的为静态数据;该方法如图3所示,包括如下步骤:
步骤31与步骤11完全相同;
步骤32、cgi根据用户发送的数据生成动态网页,并将动态网页中的静态数据和动态数据分别存储在内存中,并将该动态网页对应的内存块按动态网页中静态数据和动态数据的位置顺序组合起来发送给web server;
实现步骤32的具体方法可以为,cgi生成动态网页,并将该动态网页分成3个部分,具体存储的方式可以为:
<html>
<head>
<style>
#id1{background:red;}
</style>
</head>
<body>
<input id=″id1″type=″text″value=″fff″/>
    <p>
后静态数据,具体可以为:
</p>
</body>
</html>
动态数据,具体可以为,%s;
将前静态数据存储在内存块<pointer1,length1>,后静态数据存储在内存块<pointer2,length2>;将动态数据存储在<pointer3,length3>;
将前静态数据、后静态数据和动态数据对应的内存块按动态网页中静态数据和动态数据的位置组合起来得到动态网页对应的内存块<pointer1,length1,pointer3,length3,pointer2,length2>,将动态网页对应的内存块<pointer1,length1,pointer3,length3,pointer2,length2>发送给web server;
上述实现的方法具体可以为,cgi通过一个静态数据地址获取函数如getHtmlTemplate获取静态数据对应的内存块,cgi通过一个动态数据地址获取函数如formDynamicData()获取动态数据对应的内存块,然后cgi通过一个地址组合函数将如buildWholeHtml()将静态数据对应的内存块和动态数据对应的内存块按顺序组合起来得到动态网页对应的内存块,并将该动态网页对应的内存块发送给web server。
步骤33与步骤23完全相同。
本实施例提供的方法中的cgi和web server是共享内存的,所以其在生成动态网页(html文件)中,不需要进行内存分配和拷贝,从而提高了动态网页的生成效率,并且该方法将动态网页中的静态数据和动态数据分别进行存储,从而减少了读入、替换、输出操作,进一步提高了效率。
本发明还提供一种动态网页的生成系统,该系统如图4所示,包括:通用网关接口cgi41和服务器server42,cgi41和server42共用内存;
Server42,用于接收用户发送的数据后,将该用户发送的数据存储在共用内存中;
Cgi41,用于读取共用内存中的用户发送的数据,并根据用户发送的数据生成动态网页,并将动态网页存储在共用内存中,并将动态网页对应的内存块发送给server;
Server42,还用于将所述动态网页对应的内存块转发给用户。
可选的,cgi41具体可以包括:
读取模块411,用于读取共用内存中的用户发送的数据;
生成模块412,用于根据用户发送的数据生成动态网页;
存储模块413,用于将动态网页中的静态数据和动态数据分别存储在所述共用内存中;
发送模块414,用于将静态数据对应的内存块和动态数据对应的内存块按动态网页中静态数据和动态数据所在的位置顺序组合起来发送给server。
本发明具体实施方式提供的系统中的cgi41和server42是共享内存的,所以其在生成动态网页(html文件)中,不需要进行内存分配和拷贝,从而提高了动态网页的生成效率,并且该cgi41中的存储模块413能将动态网页中的静态数据和动态数据分别存储在共用内存中,从而减少了读入、替换、输出操作,进一步提高了效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,该程序在执行时,包括上述方法步骤,所述的存储介质包括:ROM/RAM、磁盘、光盘等。
综上所述,本发明具体实施方式提供的技术方案,具有准确度高的优点。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

动态网页的生成方法及系统.pdf_第1页
第1页 / 共12页
动态网页的生成方法及系统.pdf_第2页
第2页 / 共12页
动态网页的生成方法及系统.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《动态网页的生成方法及系统.pdf》由会员分享,可在线阅读,更多相关《动态网页的生成方法及系统.pdf(12页珍藏版)》请在专利查询网上搜索。

本发明实施方式提供了一种动态网页的生成方法及系统,该方法及系统属于网络通信领域,该方法包括:通用网关接口cgi和服务器server,cgi和server共用内存;server接收用户发送的数据后,将所述用户发送的数据存储在所述共用内存中;cgi读取所述共用内存中的用户发送的数据,并根据所述用户发送的数据生成动态网页,并将所述动态网页存储在所述共用内存中,并将所述动态网页对应的内存块发送给serve。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1