专利名称:内容请求优化的制作方法
技术领域:
本公开涉及信息检索。
背景技术:
响应于在呈现网页期间由客户端设备生成的内容项请求,显示在 网页上的内容可以由一个或多个内容项服务器生成。网页的发布者常 常可以为要在网页内显示的内容项,例如广告,定义多个内容项环境, 例如,广告槽段(slot)。通常,每个内容项环境具有关联的内容项请
求,例如,广告请求,该内容项请求被传送到内容项服务器,例如广 告服务器。当由请求发布者的网页的客户端设备呈现网页时,内容项 将在每个内容项环境中显示。
然而,具有多个内容项环境的网页可以生成过度的通信量给内容 项服务器。另外,因为网页指令常常是解释性的,在处理每个内容项 请求指令时生成内容项请求。因此,在不知道可能遇到用于所述页的
任何随后的内容项请求的情况下,传送并且派发(serve)对网页的第 一内容项请求。因此,由内容项服务器为网页派发的每个内容项与由 内容项服务器为所述页派发的其它内容项相独立。因此,如果网页的 呈现生成多个内容项请求,可能为网页派发次最佳的内容项集合,例 如,广告。
发明内容
在此,公开了一种内容请求优化系统,包括存储在数据存储中的 第一和第二指令。第一指令被配置为定义在页面环境中的内容项环境。 第二指令与每个内容项环境相关联,并且被配置为确定是否已经通过 第二指令中的任何一个生成内容项请求,并且响应于确定还没有通过
8第二指令中的任何一个生成内容项请求,生成用于每个内容项环境的 对内容项的内容项请求。
用于内容请求优化的方法识别在网页源文档中的请求。对于每个 识别的请求,做出是否已经生成内容项请求的确定。如果还没有生成 内容项请求,那么生成用于在网页源文档中的所有请求的内容项请求。
另一个示例内容请求优化系统包括存储网页源文件的数据存储。 网页源文件包括被配置为定义广告槽段的声明指令和与广告槽段相关 联的呈现指令。呈现指令被配置为确定是否已经生成广告请求,以及 响应于确定还没有生成广告请求,传送用于每个广告槽段的广告请求。
另一个示例内容请求优化系统包括存储网页源文件的数据存储。 网页源文件包括声明指令、取指令以及呈现指令。声明指令被配置为 定义内容项环境,以及取指令被配置为生成用于每个内容项环境的内 容项请求。呈现指令与广告槽段相关联并且被配置为生成本地内容项 调用以检索响应于内容项请求而接收的内容项以及在相应的内容项环 境中呈现检索的内容项。
在此描述的所述系统和方法可以实现以下特征和优点中的一个或 多个。可以生成用于多个内容项环境的单个内容项请求,降低内容项 服务器的通信量。内容项服务器可以优化对用于请求网页的内容项的 选择,因为可以根据内容项请求和用于请求网页的其它所选择的内容 项来选择内容项。通过如下所述的系统和方法实现这些及其他的优点 和特征。
图1是用于从源请求内容的示例系统的框图。
图2是用于从源请求内容的另一个示例系统的框图。
图3是源文档和相应的缓存指令库的框图。图4是用于处理内容项请求的示例过程的流程图。
图5是用于处理内容项请求的另 一个示例过程的流程图。
图6是用于处理内容项请求的另 一个示例过程的流程图。
图7是用于处理内容项请求的另一个示例过程的流程图。 图8是用于响应联合的(consolidated)内容项请求的示例过程的流程图。
具体实施例方式
图1是用于从例如内容项服务器的源请求内容项的示例系统10的 框图。在一个实施方式中,内容项可以是广告,并且内容项服务器可 以是广告服务器。还可以请求不同类型的内容,例如天气、行车路线 指引、琐事等等。
在示出的实施方式中,请求设备是被配置以通过例如因特网的网 络访问网页的客户端系统100。例如,客户端系统100可以是web浏览器、 计算设备、移动通信设备或执行网络导航软件的某个其它设备等等。 由客户端系统100访问的web地址可以被解析以识别发布者102,例如, 托管相应网页的服务器。客户端系统100因此向发布者102发送用于例 如超文本标记语言(HTML)源文档的网页内容106的网页内容请求104, 并且响应于所述请求,发布者102提供网页内容106给客户端系统100。
在实施方式中,网页内容106可以例如包括标题(head)区108禾口 主体区IIO,每个区具有解释性指令。例如,可以在主体区UO之前解 释标题区108。在实施方式中,第一指令112a、 112b和112c,例如声明 指令,在标题区108中被执行以定义将在显示设备上显示的相应网页 107中呈现的一个或多个内容项环境114a、 114b和114c。例如,内容项 环境114a、 114b和114c可以包括如在呈现的网页107中描述的近似位置 中呈现和显示的广告槽段,例如在顶部槽段、中间槽段和底部槽段中。 在一个实施方式中,内容项环境114a、 114b和114c可以是同步的环境, 例如,在呈现的网页107的相同框架(frame)内的div。在另一个实施
10方式中,内容项环境114a、 14b和114c可以是异步环境,例如,在呈现 的网页107内的iFrame。
包括在主体区110内的是与内容项环境114a、 H4b和114c相关联的 第二指令116a、 116b和116c,例如呈现指令。第二指令116被配置为调 用确定是否已经通过任何第二指令116生成内容项请求的请求过程。在 一个实施方式中,响应于确定没有通过任何第二指令116生成内容项请 求,正在执行的特定组第二指令116,例如第二指令116a,生成用于每 个内容项环境114a、 114b和114c的对内容项的组合的内容项请求117。
在一个实施方式中,在客户端设备100处理第二指令116a、 116b和 116c之前解释第一指令112a、 U2b和112c。因此,当任何第二指令116a、 116b和116c被执行的时候,所述内容环境114a、114b和114c已经被定义。 因此,当执行第一组第二指令116时,例如,执行第二指令116a时,由 第二指令116a调用的过程可以确定内容环境114b和114c也被定义,由此 生成组合的内容项请求117。
在一个实施方式中,组合的内容项请求117可以包括对应于用于内 容项环境114a、 114b和114c的请求的内容项请求118a、 118b和118c的串 接。在响应中,内容项服务器120可以例如优化对被派发的相应内容项 122a、 122b和122c的选择。在一个实施方式中,内容项服务器120包括 优化逻辑121以优化对内容项122a、 122b和122c的选择。例如,根据优 化逻辑121选择内容项122a、 122b和122c以保证完全不同的内容项被选 择,例如,保证没有所选择的内容项是重复的内容项。
在一个实施方式中,内容项请求118a、 118b和118c可以例如包括 相同的页面浏览(pageview)标识符,以及优化逻辑121可以根据页面 浏览标识符和内容项请求118a、 118b和118c的地址来选择内容项122a、 122b和122c。还可以使用其它内容项优化选择过程。例如,内容项122a、 122b以及122c可以在组合的答复123中被传送 到客户端系统100并且被存储在数据存储130中,例如与客户端100上运 行的浏览器相关联的缓存中。响应于由第二指令116a发出的组合的请求 117,内容项122a被呈现在内容菜单项环境114a中。其后,在执行第二 指令116b时,请求过程确定之前已经生成了内容项请求,例如,组合 的内容项请求117和/或所述内容项请求118a、 118b和118c。响应于该确 定,第二指令116b生成本地内容项请求125到数据存储130,其进而提 供待在相应内容项槽段114b中呈现的内容项122b。第二指令116c还生成 本地内容项请求129以检索存储在数据存储中的内容项122c用于在内容 项环境114c中呈现。
图2是用于从源请求内容的另一个示例系统11的框图。图2的系统 11除了以下外以与图1的系统10相似的方式操作单独的内容项请求指 令115被执行以生成包括用于内容项环境114a、 114b和114c的内容请求 118a、 118b和118c的组合的内容项请求117。第二指令116a、 U6b和116c 被配置以分别地生成本地内容项请求14K 143和145,以检索和在内容 项环境114a、 114b和114c中呈现存储的内容项122a、 122b和122c。
在另一个实施方式中,每个第一指令112a、 112b和112c可以检索 内容项环境特性,例如,高度和宽度尺寸。例如,第一指令112a、 112b 和112c可以分别地传送内容项环境请求151、 153和155到内容项服务器 120以检索用于内容项环境114a、 114b和114c的内容项环境特性。通常, 发布者或内容项提供者可以修改内容项环境114;因此,通过在内容项 服务器120存储内容项环境修改,发布者不必修改网页内容106。
图3是示例源文档106和相应的缓存指令库160的框图。缓存指令库 160可以例如包括一个或多个函数,例如Javascript函数,由第一指令112 和第二指令116调用。在一个实施方式中,指令库160可以由内容项服 务器120提供并且被存储在客户端系统100上的本地数据存储中。例如, 当呈现网页内容106和遇到第一指令112时,客户端系统100可以确定指
12令库160是否存储在本地数据存储中,例如,与浏览器应用相关联的缓
存中。如果指令库160没有存储在本地数据存储中,客户端系统100可 以从内容项服务器120请求指令库160。
通过实现在第一指令112和第二指令116中对指令库160的函数调 用,内容服务器120的提供者可以实现实质上对于发布者系统102的提 供者透明的查询变化及其他内容请求变化。
图4是用于处理内容项请求的示例过程200的流程图。例如,所述 示例过程200可以在客户端系统100中通过呈现网页内容106和执行指 令112和116来实现。
阶段202识别在源文档中的请求。例如,诸如web浏览器的客户端 系统100可以执行指令112以识别诸如网页内容106的源文档中的请求。
阶段204处理第一请求。例如,诸如web浏览器的客户端系统100 可以执行与用于内容项环境114a的内容项请求相关的指令116a。
阶段206确定是否已经生成到内容项服务器的内容项请求。例如, 诸如web浏览器的客户端系统100可以执行指令116a以确定组合的内容 项请求117或内容项请求118a、 118b和/或118c是否已经被生成和/或被 传送到内容项服务器。
如果阶段206确定没有生成到内容项服务器的内容项请求,那么阶 段208生成用于网页中的用于传送到内容项服务器的所有请求的内容 项请求。例如,诸如web浏览器的客户端系统100可以执行生成组合的 请求117的指令116a。
然而,如果阶段206确定已经生成了到内容项服务器的内容项请 求,那么阶段210生成本地内容项请求。例如,诸如web浏览器的客户端系统100可以执行指令116b和116c以分别地生成本地内容项请求125 和129。
图5是用于处理内容项请求的另一个示例过程300的流程图。所述 示例过程300可以例如在客户端系统100中通过呈现网页内容106和执 行指令112和116来实现。
阶段302识别在源文档中的请求。例如,诸如web浏览器的客户端 系统100可以执行指令112以识别诸如网页内容106的源文档中的请求。
阶段304处理源文档中的指令。例如,诸如web浏览器的客户端系 统100可以执行网页源文档106中的其它指令,诸如格式化指令、成像 指令、Javascript等等。
阶段306确定指令是否是内容项请求。例如,诸如web浏览器的客 户端系统100在执行指令116a时可以确定指令是内容项请求处理指令。
如果阶段306确定所述指令不是内容项请求,那么过程返回阶段 304。然而,如果阶段306确定所述指令是请求指令,那么阶段308确定 是否已经生成到内容项服务器的内容项请求。例如,诸如web浏览器的 客户端系统100可以执行指令116a以确定组合的内容项请求117或内容 项请求118a、 118b和/或118c是否已经被生成和/或被传送到内容项服务 器°
如果阶段308确定没有生成到内容项服务器的内容项请求,例如, 内容项请求是待处理的第一内容项请求,那么阶段310生成用于网页中 的用于传送到内容项服务器的所有请求的内容项请求。例如,诸如web 浏览器的客户端系统100可以执行生成组合的内容项请求117的指令 116a。在阶段310处理之后,阶段312接收和存储响应于内容项请求而提 供的内容项,以及阶段314处理用于第一内容项请求的内容项。例如, 诸如web浏览器的客户端系统100可以接收以及在诸如数据存储130的 数据存储中存储由内容项服务器120提供的内容项122a、122b以及122c。 其后,内容项122a可以在内容项环境114a中被呈现。
然而,如果阶段308确定已经生成了到内容项服务器的内容项请 求,例如,内容项请求是待处理的第二或随后的内容项请求,那么阶 段316生成本地内容项请求,并且阶段314处理用于随后的内容项请求 的内容项。
图6是用于处理内容项请求的另一个示例过程400的流程图。所述 示例过程400可以例如在客户端系统100中通过呈现网页内容106和执 行指令112和116来实现。
阶段402声明广告槽段。例如,诸如web浏览器的客户端系统100 可以执行指令112以声明网页中的广告槽段。
阶段404确定呈现广告槽段的调用是否是第一调用。例如,诸如web 浏览器的客户端系统100可以执行指令116a以确定广告请求是否已经被 生成和/或被传送到广告服务器。
如果阶段404确定呈现广告槽段的调用是第一调用,那么阶段406 对广告服务器查询所有广告槽段。例如,诸如web浏览器的客户端系统 100可以执行指令116a以生成组合的广告请求,包括用于网页中的所有 广告槽段的广告请求。在一个实施方式中,组合的请求可以包括获取 用于在阶段402中声明的所有广告槽段的广告的査询。在阶段406处理 之后,阶段408呈现广告槽段和用于第一广告槽段的广告。例如,诸如 web浏览器的客户端系统100可以执行指令116a以呈现广告槽段和从广 告服务器接收的广告。然而,如果阶段404确定呈现广告槽段的调用不是第一调用,那么
阶段410生成对用于广告槽段的广告的本地査询。例如,诸如web浏览 器的客户端系统100可以执行指令116b和116c以生成到诸如与web浏览 器相关联的缓存的本地数据存储的本地查询。
阶段412呈现广告槽段和用于相应广告槽段的广告。例如,诸如web 浏览器的客户端系统100可以执行指令116b和116c以呈现相应广告槽段 和从广告服务器接收的以及存储在本地数据存储中的广告。
图7是用于处理内容项请求的另一个示例过程500的流程图。示例 过程500可以例如在客户端系统100中通过呈现网页内容106和执行指 令112、 115和116来实现。
阶段502声明内容项环境。例如,诸如web浏览器的客户端系统100 可以执行声明内容项环境114a、 114b和114c的指令112a、 112b和112c。
阶段504生成用于所有内容项环境的组合的内容项请求。例如,诸 如web浏览器的客户端系统100可以执行生成组合的内容项请求117的 指令115。
阶段506响应于组合的内容项请求而接收和存储内容项。例如,诸 如web浏览器的客户端系统100可以接收以及在例如与web浏览器相关 联的缓存的数据存储130中存储内容项122a、 122b和122c。
阶段508生成本地调用以检索接收的内容项。例如,诸如web浏览 器的客户端系统100可以执行指令116a、 116b和116c以分别地生成到数 据存储130的本地调用141、 143和145以检索内容项122a、 122b和122c。。
图8是用于响应联合的内容项请求的示例过程600的流程图。示例
16过程600可以例如在内容项服务器中实现,该内容项服务器诸如是包括
诸如优化逻辑121的优化逻辑的内容项服务器120。
阶段602接收用于多个内容项环境的单个查询。例如,组合的内容 项请求117可以由内容项服务器120接收。组合的内容项请求117可以包 括多个内容项请求,例如,U8a、 118b和118c。在一个实施方式中,每 个内容项请求118包括公共的标识符,例如相同的页面浏览标识符。
阶段604根据相应的内容项查询选择第一内容项。例如,内容项服 务器120可以根据内容项请求118a选择内容项122a。
阶段606根据随后的查询和以前选择的内容项来选择随后的内容 项。例如,内容项服务器120可以根据内容项请求118b和118c,还可以 根据以前选择的内容项122a,选择内容项122b和122c。可以在优化逻辑 121中实现该选择过程。
在该专利文档中描述的装置、方法、流程图和结构化框图可以在 包括程序代码的计算机处理系统中实现,该程序代码包括由计算机处 理系统可执行的程序指令。还可以使用其它实施方式。另外,还可以 利用在该专利文档中描述的流程图和结构化框图实现相应的软件结构 和算法以及它的等价物,所述流程图和结构化框图描述了特定方法和/
或支持步骤的相应动作和支持公开的结构化装置的相应功能。
所撰写的描述阐述了本发明的最佳模式并且提供了描述本发明的 示例使得本领域技术人员能够制造和使用本发明。撰写的描述没有将 本发明限制在所阐明的精确的术语。因此,尽管已经参考上面阐明的 示例详细描写了本发明,但是本领域技术人员可以在不脱离本发明的 范围的情况下,对示例进行变更、改型和变化。
权利要求
1.一种方法,包括识别网页源文档中的请求;对于每个请求确定是否已经生成内容项请求;以及如果还没有生成内容项请求,则生成用于所述网页源文档中的所有请求的内容项请求。
2. 根据权利要求l所述的方法,包括-接收响应于所述内容项请求的内容项;以及 存储所接收的内容项。
3. 根据权利要求2所述的方法,包括 定义所述网页中的内容项环境响应于与所述内容环境相对应的所述请求,检索存储的内容项;以及在所述内容项环境中呈现所检索的内容项。
4. 根据权利要求3所述的方法,其中 所述内容项环境包括iframe;以及 所述内容项包括广告。
5. 根据权利要求l所述的方法,包括 定义网页源文档的标题区中的内容环境。
6. 根据权利要求l所述的方法,其中-确定是否已经生成内容项请求包括确定所接收的内容项是否被存储在数据存储中。
7. 根据权利要求l所述的方法,其中 确定是否已经生成内容项请求包括确定内容项请求是否己经被传送到内容项服务器。
8. —种系统,包括数据存储,存储处理器可执行的指令,所述指令包括第一指令,被配置为定义页面环境中的内容项环境;以及 第二指令,与每个内容项环境相关联并且被配置为确定是否 已经通过所述第二指令中的任何一个生成内容项请求,以及响应于确 定还没有通过所述第二指令中的任何一个生成内容项请求,对于每个 所述内容项环境生成对内容项的内容项请求。
9. 根据权利要求8所述的系统,其中 所述第一和第二指令被存储在源文档中。
10. 根据权利要求9所述的系统,其中 所述第一和第二指令包括解释性指令。
11. 根据权利要求9所述的系统,其中 所述第一和第二指令包括脚本。
12. 根据权利要求9所述的系统,其中 所述源文档包括超文本标记语言文档。
13. 根据权利要求9所述的系统,其中-所述第一指令位于标题区;以及 所述第二指令位于主体区。
14. 根据权利要求8所述的系统,其中 所述内容项环境包括div。
15. 根据权利要求14所述的系统,其中 所述内容项包括广告。
16. 根据权利要求14所述的系统,其中.-用于每个所述内容项环境的对内容项的所述内容项请求包括组合 的广告请求。
17. 根据权利要求9所述的系统,其中所述第一指令和所述第二指令被存储为使得所述第一指令在所述 第二指令之前被执行。
18. —种系统,包括数据存储,存储网页源文件,所述网页源文件包括 声明指令,被配置为定义广告槽段;以及呈现指令,与所述广告槽段相关联并且被配置为确定是否已 经生成广告请求,以及响应于确定还没有生成广告请求,传送用于每 个所述广告槽段的广告请求。
19. 根据权利要求18所述的系统,其中所述声明指令包括与每个广告槽段相对应的声明片段;并且 所述呈现指令包括与每个广告槽段相对应的呈现片段。
20. 根据权利要求19所述的系统,其中 所述声明片段和所述呈现片段是Javascript兼容的。
21. 根据权利要求19所述的系统,其中 所述声明片段被存储在所述网页源文件的标题区。
22. 根据权利要求19所述的系统,其中所述数据存储进一步被配置为存储响应于所传送的用于每个所述 广告槽段的广告请求而接收的广告数据。
23. 根据权利要求22所述的系统,其中每个呈现片段包括进一步指令,被配置为检索存储在所述数据存 储中的接收的广告数据,所述接收的广告数据与和所述呈现片段相关 联的广告槽段相对应。
24. —种系统,包括数据存储,存储网页源文件,所述网页源文件包括 声明指令,被配置为定义内容项环境;取指令,被配置为生成用于每个所述内容项环境的内容项请求;呈现指令,与所述内容项环境相关联并且被配置为生成本地 内容项调用以检索响应于所述内容项请求而接收的内容项并且在相应 的内容项环境中呈现所检索的内容项。
25. 根据权利要求24所述的系统,其中 所述内容项包括广告。
26. 根据权利要求25所述的系统,其中 所述内容项环境包括iframe。
27. 根据权利要求25所述的系统,其中:所述声明指令和所述取指令被存储在所述网页源文件的标题区 中;以及所述呈现指令被存储在所述网页源文件的主体区中。
28. 根据权利要求25所述的系统,其中每个内容环境具有关联的取指令和呈现指令,并且其中所述取指令被配置为确定是否己经通过任何其它取指令生成内容项请求,以及 响应于确定还没有通过任何其他取指令生成内容项请求,生成用于每 个所述内容项环境的内容项请求。
29. —种方法,包括 声明用于网页的内容项请求;生成用于所有声明的内容项请求的组合的内容项请求; 存储响应于所述组合的内容项请求而接收的内容项请求;以及 生成本地调用以检索所述存储的内容项中的至少一个。
30.根据权利要求29所述的方法,包括 生成多个内容项请求;向每个内容项请求分配相同的页面浏览标识符;以及 将所述多个内容项请求组合为所述组合的内容项请求。
31. 根据权利要求30所述的方法,其中 所述内容项包括广告。
32. —种系统,包括 用于声明内容项环境的装置;用于确定是否已经为所有内容项环境取得内容项、以及用于响应 于确定还没有为所有内容项环境取得所述内容项而为每个所述内容项 环境取得内容项的装置;以及用于在每个所述内容项环境中呈现接收的内容项的装置。
33. —种方法,包括 识别网页源文档中的请求;对于第一识别的请求,生成用于所有识别的请求的内容项请求; 存储响应于所述内容项请求而接收的内容项;以及 对于随后识别的请求,生成本地内容项请求以检索所述存储的内容项。
34.根据权利要求33所述的方法,其中: 所述内容项请求包括广告请求;以及 所述内容项包括广告。
全文摘要
在网页源文档中识别内容项请求。对于每个请求,确定是否已经生成内容项请求,以及如果还没有生成内容项请求,则生成用于所述网页源文档中的所有请求的内容项请求。
文档编号G06F17/00GK101568924SQ200780047914
公开日2009年10月28日 申请日期2007年10月30日 优先权日2006年10月30日
发明者史蒂芬·楚恩, 迪帕克·吉恩达尔 申请人:谷歌公司