CN103365695B - 加快子资源加载速度的方法和装置 - Google Patents

加快子资源加载速度的方法和装置 Download PDF

Info

Publication number
CN103365695B
CN103365695B CN201310329393.6A CN201310329393A CN103365695B CN 103365695 B CN103365695 B CN 103365695B CN 201310329393 A CN201310329393 A CN 201310329393A CN 103365695 B CN103365695 B CN 103365695B
Authority
CN
China
Prior art keywords
domain name
child resource
tree
domain
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310329393.6A
Other languages
English (en)
Other versions
CN103365695A (zh
Inventor
陈华彬
梁捷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Guangzhou Dongjing Computer Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Dongjing Computer Technology Co Ltd filed Critical Guangzhou Dongjing Computer Technology Co Ltd
Priority to CN201310329393.6A priority Critical patent/CN103365695B/zh
Publication of CN103365695A publication Critical patent/CN103365695A/zh
Priority to PCT/CN2014/077409 priority patent/WO2015014145A1/zh
Priority to US15/012,095 priority patent/US10250526B2/en
Application granted granted Critical
Publication of CN103365695B publication Critical patent/CN103365695B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/821Prioritising resource allocation or reservation requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及移动通信技术领域,公开了一种加快子资源加载速度的方法和装置,该方法包括:接收用户发起的页面请求,提取页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;若哈希表中有与主机域名相应的域名树,则遍历域名树提取优先级最高的若干个子资源域名,同时创建主机域名和若干个子资源域名的TCP连接;获取到主机域名的主文档数据后,根据主文档数据中的子资源URL发起子资源加载请求;若子资源请求中的子资源域名为前述若干个子资源域名中的域名,则利用先前已创建的TCP连接直接发起HTTP请求,完成子资源的加载。本发明通过预先创建高优先级的子资源域名TCP连接,解决了子资源加载请求时,需要现场创建TCP连接的问题。

Description

加快子资源加载速度的方法和装置
技术领域
本发明涉及移动通信技术领域,特别涉及一种加快子资源加载速度的方法和装置。
背景技术
随着移动终端智能操作系统的普及,用户通过移动终端访问互联网已经从趋势变为一种习惯,移动互联网应用也逐渐有取代传统互联网应用的迹象。但是,目前绝大多数移动互联网应用都是根据传统互联网应用略作改动得到的,很多仍保留了传统互联网应用的工作模式,并不能完全适应移动终端的特殊需求。
最典型地,现有浏览器加载页面子资源都需要等到主文档数据来到后,浏览器内核解析到子资源的URL(Uniform Resource Locator,统一资源定位符)再发起资源加载请求。而由于大多数子资源所在服务器域名不同于主文档所在服务器域名,子资源的加载请求通常需要重新创建连接到新的服务器,这个过程目前分为两个阶段:DNS(Domain NameSystem,域名系统)查询和创建TCP(Transmission Control Protocol,传输控制协议)连接。由于DNS查询和创建TCP连接依赖于网络环境,其需要的时间通常是不确定的,普通计算机网络由于设备性能和网络条件基本比较稳定,该过程耗时一般在200毫秒左右,对用户访问影响不大。但移动网络的性能条件波动区间较大,该过程可能从几百毫秒到几秒、甚至10几秒不等,严重影响了子资源加载速度,使得移动用户在某些情况下访问效率极为低下,用户体验较差。
发明内容
本发明所要解决的技术问题是如何加快子资源的加载速度,提高移动用户访问效率。
为解决上述问题,本发明的一方面提供了一种加快子资源加载速度的方法,所述方法包括步骤:
接收用户发起的页面请求,提取所述页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;
如果哈希表中有与所述主机域名相应的域名树,则遍历所述与所述主机域名相应的域名树并提取优先级最高的若干个子资源域名,同时创建所述主机域名和所述若干个子资源域名的TCP连接;
当获取到该主机域名的主文档数据后,解析所述主文档数据,根据所述主文档数据中的子资源URL发起子资源加载请求;
若当前子资源加载请求中的子资源域名是前述若干个子资源域名中的域名,则利用先前已创建的该子资源域名的TCP连接直接发起HTTP请求,完成该子资源的加载。
优选地,在接收用户发起的页面请求之前还包括步骤:
浏览器启动后,判断本地是否保存有哈希表,如果有则读取所述哈希表并初始化所述哈希表;如果没有,则创建一个空的哈希表。
优选地,查询哈希表时,如果没有找到与所述主机域名相应的域名树,则新建一棵空的域名树。
优选地,在发起子资源加载请求后还进行以下步骤:
查询所述与所述主机域名相应的域名树,如果所述与所述主机域名相应的域名树中没有包含当前子资源加载请求中的子资源域名,则在所述与所述主机域名相应的域名树中创建一个域名树节点用于保存所述子资源域名,并根据所述子资源的资源类型初始化所述子资源域名的优先级;
如果所述与所述主机域名相应的域名树中包含当前子资源加载请求中的子资源域名,则更新所述子资源域名的优先级。
优选地,在上述步骤完成之后还包括步骤:
当浏览器退出时,把哈希表数据保存到本地,供下次浏览器启动时使用。
优选地,所述初始化哈希表包括步骤:
遍历哈希表中每一棵域名树,判断域名树中每一节点的使用标记字段是否为真,如果不为真则删除该节点并更新其父节点,随后遍历其下一节点;否则直接遍历下一节点。
另一方面,本发明还同时提供了一种加快子资源加载速度的装置,所述装置包括:
查询模块,用于接收用户发起的页面请求,提取所述页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;
连接创建模块,用于在哈希表中有与所述主机域名相应的域名树时,遍历所述与所述主机域名相应的域名树并提取优先级最高的若干个子资源域名,同时创建所述主机域名和所述若干个子资源域名的TCP连接;
加载请求模块,用于在获取到该主机域名的主文档数据后,解析所述主文档数据,根据所述主文档数据中的子资源URL发起子资源加载请求;
加载模块,用于在当前子资源加载请求中的子资源域名是前述若干个子资源域名中的域名时,利用先前已创建的该子资源域名的TCP连接直接发起HTTP请求,完成该子资源的加载。
优选地,所述装置还包括:
启动模块,用于在浏览器启动后,判断本地是否保存有哈希表,如果有则读取所述哈希表,并初始化所述哈希表;如果没有,则创建一个空的哈希表。
优选地,所述查询模块还包括:
域名树创建模块单元,用于在查询哈希表时,如果没有找到与所述主机域名相应的域名树,则新建一棵空的域名树。
优选地,所述装置加载请求模块还包括:
节点管理模块,用于在发起子资源加载请求后查询子资源URL中所述与所述主机域名相应的域名树时,如果所述与所述主机域名相应的域名树中没有包含当前子资源加载请求中的子资源域名,则在所述与所述主机域名相应的域名树中创建一个域名树节点用于保存所述子资源域名,并根据所述子资源的资源类型初始化所述子资源域名的优先级;如果所述与所述主机域名相应的域名树中包含当前子资源加载请求中的子资源域名,则更新所述子资源域名的优先级。
优选地,所述启动模块还包括:
初始化模块单元,用于在初始化哈希表时,遍历所述哈希表中每一棵域名树,判断域名树中每一节点的使用标记字段是否为真,如果不为真则删除该节点并更新其父节点,随后遍历其下一节点;否则直接遍历下一节点。
与现有技术相比,本发明提供了一种加快子资源加载速度的方法和装置,通过预先创建高优先级的子资源域名TCP连接,完美地解决了内核发起子资源加载请求时,需要现场创建TCP连接的问题。本发明通过保存一个主机域名与其子资源域名树的哈希表,在创建主机域名连接的同时即可创建其子资源域名的连接,从而当内核发起子资源加载请求时,无需现场再创建TCP连接,大大节省子资源的响应时间,加快了整个页面的展现速度,提升用户体验。
附图说明
图1为本发明一个实施例中典型域名树的层级结构示意图;
图2为本发明一个实施例中哈希表的数据结构示意图;
图3为本发明一个实施例中域名树节点的数据结构示意图;
图4为本发明一个优选实施例中加快子资源加载速度的方法的流程示意图;
图5为本发明一个更优选实施例中加快子资源加载速度的方法的流程示意图;
图6为本发明一个实施例中哈希表初始化流程示意图。
图7为一个优选实施例中加快子资源加载速度的装置的方框示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例为实施本发明的较佳实施方式,所述描述是以说明本发明的一般原则为目的,并非用以限定本发明的范围。本发明的保护范围应当以权利要求所界定者为准,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的实施例中首先提供了一种加快子资源加载速度的方法,其技术方案的主要思路是:通过创建一个包含主机域名及其域名树的哈希表,在创建TCP连接时,同时创建主机域名和若干个子资源域名的TCP连接,当发起子资源请求时,可以马上利用到刚刚创建好的TCP连接,加快子资源的加载速度。
以门户网站新浪(Sina.com.cn)为例,本发明的实施例中一个典型域名树如图1所示:在主版Sina.com.cn的主机域名的下一级可能有多个子资源域名,如子资源域名A、体育版(Sports.sina.com.cn)、汽车版(Auto.sina.com.cn)等;随后每个子资源域名的下一级可能又会有其相应的子资源域名,比如体育版可能会有下级的子资源域名B、也可能会将主版的子资源域名A作为自己的子资源域名;这种带有子资源域名的树形结构可能会有多层,比如汽车版的下一级具有子资源域名C和汽车图片版(photo.auto.sina.com.cn),汽车图片版的下一级还具有子资源域名D等。本发明中采用如图1的一棵域名树记录了各级域名之间的上述对应关系。
具体地,在本发明的实施例中,采用哈希表保存域名树,根据现有站点的域名布局特点,在浏览器客户端收集主机域名的子域名以及对应的子资源域名,构造一棵域名树,客户端保存一个主机域名与其域名树的哈希表。
该哈希表的典型数据结构如图2所示,在表中,每一项的关键字为顶级主机域名(如sina.com.cn、QQ.com、sohu.com等),各项中的关键信息为存储的与顶级主机域名对应的一棵域名树。域名树采用链表结构保存,树的每一叶子节点保存对应子资源域名的相关信息,域名树节点的数据结构如图3所示,其中各项含义如下:
Domain:节点域名;
IsMainresource:域名对应的请求是主资源还是子资源;
Priority:节点域名优先级,主要用于子资源域名,主资源域名优先级设为最小;其中,当域名包含JS/CSS请求时,优先级可大幅增加(比如Priority加5);其他普通请求按基数累加(比如Priority加1);
Childrens:指向孩子节点的指针列表;
IsUsing:标记域名节点是否被命中;
Parent:指向父节点的指针。
采用上述方式处理后,在本发明的一个实施例中,如图4所示,一种加快子资源加载速度的方法的流程包括以下步骤:
S1,接收用户发起的页面请求,提取所述页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;
S2,如果哈希表中有与所述主机域名相应的域名树,则遍历所述与所述主机域名相应的域名树并提取优先级最高的若干个子资源域名,同时创建所述主机域名和所述若干个子资源域名的TCP连接(如果没有则构造一棵域名树以便下次访问时使用);
S3,当获取到该主机域名的主文档数据后,解析所述主文档数据,根据所述主文档数据中的子资源URL发起子资源加载请求;
S4,若当前子资源加载请求中的子资源域名是前述若干个子资源域名中的域名,则利用先前已创建的该子资源域名的TCP连接直接发起HTTP(hypertext transportprotocol,超文本传送协议)请求,完成该子资源的加载。
本发明实施例中的过程节省了子资源域名DNS查询和创建TCP连接的过程,加快了子资源的加载过程,提高了浏览器应用的工作效率,提升了用户体验。
下面参见图5,在本发明一个优选实施例中,以每次预创建5个子资源域名TCP连接以及子资源域名优先级调整采用5为例,进一步说明了域名树处理及资源加载的详细过程,该过程包括步骤:
浏览器启动时,判断本地是否保存有哈希表,如果有则读取所述哈希表,并初始化所述哈希表;如果没有,则创建一个空的哈希表;
接收用户的页面请求开始网页加载,得到请求站点的主机域名,查询哈希表中是否有所述主机域名相应的域名树,如果没有找到对应的域名树,则新建一棵空的域名树;否则遍历域名树,获取优先级排在前5的子资源域名,子资源域名数不足5个时,全部获取,子资源域名同主机域名一起创建TCP连接;
开始接收主文档数据,浏览器内核解析原始数据得到子资源的URL,发起子资源请求;
网络适配层收到内核发起的子资源请求,查询与主机域名对应的域名树,如果域名树中没有包含当前子资源请求中的子资源域名,则在该域名树中创建一个域名树节点用以保存该子资源域名,并根据子资源的资源类型初始化该子资源域名的优先级。
在本发明的一个示例中,JS/CSS类子资源初始优先级为5,其他子资源初始优先级为1;如果域名树中包含当前子资源请求中的子资源域名,则更新该子资源域名的优先级,若当前子资源类型为JS/CSS,则其优先级加5,若为其他资源,则优先级加1;
网络层判断当前子资源请求中的子资源域名的TCP连接是否已建立,如果未建立,则重新建立TCP连接并发起请求,否则直接使用已建立的连接发送请求。
当浏览器退出时,把哈希表数据保存到本地,供下次浏览器启动时使用。
其中,在浏览器启动时,如果本地存在哈希表,需要对哈希表进行初始化,哈希表初始化的过程如图6所示,包括步骤:
读取文件确定执行哈希表初始化;
遍历哈希表中每一棵域名树,判断域名树中每一节点的IsUsing字段是否为真,如果不为真表示该节点对应域名从未被使用过(可能域名已失效),则删除该节点并更新其父节点,随后遍历其下一节点;否则直接遍历下一节点。
本领域相关技术人员应能理解,与本发明的方法相对应的,本发明还同时包括一种加快子资源加载速度的装置,与上述方法步骤一一对应地,如图7所示,该装置包括:
查询模块710,用于接收用户发起的页面请求,提取所述页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;
连接创建模块720,用于在哈希表中有与所述主机域名相应的域名树时,遍历所述与所述主机域名相应的域名树并提取优先级最高的若干个子资源域名,同时创建所述主机域名和所述若干个子资源域名的TCP连接;
加载请求模块730,用于在获取到该主机域名的主文档数据后,解析所述主文档数据,根据所述主文档数据中的子资源URL发起子资源加载请求;
加载模块740,用于在当前子资源加载请求中的子资源域名是前述若干个子资源域名中的域名时,利用先前已创建的该子资源域名的TCP连接直接发起HTTP请求,完成该子资源的加载。
此外,该装置还可进一步包括:启动模块(图中未示出),用于在浏览器启动后,判断本地是否保存有哈希表,如果有则读取所述哈希表,并初始化所述哈希表;如果没有,则创建一个空的哈希表。
更进一步地,所述启动模块还包括:初始化单元(图中未示出),用于在初始化哈希表时,遍历所述哈希表中每一棵域名树,判断域名树中每一节点的使用标记字段是否为真,如果不为真则删除该节点并更新其父节点,随后遍历其下一节点;否则直接遍历下一节点。
在本发明的一个优选实施例中,所述查询模块还包括:域名树创建单元(图中未示出),用于在查询哈希表时,如果没有找到与所述主机域名相应的域名树,则新建一棵空的域名树。
在本发明另一个优选实施例中,所述装置还包括:节点管理模块(图中未示出),用于在发起子资源加载请求后查询子资源URL中所述与所述主机域名相应的域名树,如果所述与所述主机域名相应的域名树中没有包含当前子资源加载请求中的子资源域名,则在所述与所述主机域名相应的域名树中创建一个域名树节点用于保存所述子资源域名,并根据所述子资源的资源类型初始化所述子资源域名的优先级;如果所述与所述主机域名相应的域名树中包含当前子资源加载请求中的子资源域名,则更新所述子资源域名的优先级。
与现有技术相比,本发明的技术方案通过预先创建高优先级的子资源域名TCP连接,完美地解决了内核发起子资源加载请求时,需要现场创建TCP连接的问题。本发明通过保存一个主机域名与其子资源域名树的哈希表,在创建主机域名连接的同时即可创建其子资源域名的连接,从而当内核发起子资源加载请求时,无需现场再创建TCP连接,大大节省子资源的响应时间,加快了整个页面的展现速度,提升用户体验。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括上述实施例方法的各步骤,而所述的存储介质可以是:ROM/RAM、磁碟、光盘、存储卡等。
虽然以上结合优选实施例对本发明进行了描述,但本领域的技术人员应该理解,本发明所述的方法和系统并不限于具体实施方式中所述的实施例,在不背离由所附权利要求书限定的本发明精神和范围的情况下,可对本发明作出各种修改、增加、以及替换。

Claims (6)

1.一种加快子资源加载速度的方法,其特征在于,应用于浏览器客户端,所述方法包括步骤:
在浏览器客户端创建一个包含主机域名及其域名树的哈希表,所述域名树采用链表结构保存,树的每一叶子节点保存对应子资源域名的相关信息,所述域名树的节点的数据结构包括:
Domain:节点域名;
IsMainresource:域名对应的请求是主资源还是子资源;
Priority:节点域名优先级;
Childrens:指向孩子节点的指针列表;
IsUsing:标记域名节点是否被命中;
Parent:指向父节点的指针;
接收用户发起的页面请求,提取所述页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;
如果哈希表中有与所述主机域名相应的域名树,则遍历所述与所述主机域名相应的域名树并提取优先级最高的若干个子资源域名,同时创建所述主机域名和所述若干个子资源域名的TCP连接;如果哈希表中没有与所述主机域名相应的域名树,则在哈希表中构造一棵域名树以便下次访问时使用;
当获取到该主机域名的主文档数据后,解析所述主文档数据,根据所述主文档数据中的子资源URL发起子资源加载请求;
若当前子资源加载请求中的子资源域名是前述若干个子资源域名中的域名,提高所述当前子资源加载请求中的子资源域名的优先级,则利用先前已创建的该子资源域名的TCP连接直接发起HTTP请求,完成该子资源的加载;
若当前子资源加载请求中的子资源域名不是前述若干个子资源域名中的域名,则在所述与所述主机域名相应的域名树中创建一个域名树节点用于保存所述当前子资源加载请求中的子资源域名,并根据所述子资源的资源类型初始化所述子资源域名的优先级。
2.根据权利要求1所述的方法,其特征在于,在上述步骤完成之后还包括步骤:
当浏览器退出时,把哈希表数据保存到本地,供下次浏览器启动时使用。
3.根据权利要求1所述的方法,其特征在于,还包括:在浏览器客户端启动后初始化哈希表的步骤:
遍历哈希表中每一棵域名树,判断域名树中每一节点的使用标记字段是否为真,如果不为真则删除该节点并更新其父节点,随后遍历其下一节点;否则直接遍历下一节点。
4.一种加快子资源加载速度的装置,其特征在于,应用于浏览器客户端,所述装置包括:
启动模块,用于在浏览器客户端创建一个包含主机域名及其域名树的哈希表,所述域名树采用链表结构保存,树的每一叶子节点保存对应子资源域名的相关信息,所述域名树的节点的数据结构包括:
Domain:节点域名;
IsMainresource:域名对应的请求是主资源还是子资源;
Priority:节点域名优先级;
Childrens:指向孩子节点的指针列表;
IsUsing:标记域名节点是否被命中;
Parent:指向父节点的指针;
查询模块,用于接收用户发起的页面请求,提取所述页面URL对应的主机域名,查询哈希表中是否有所述主机域名相应的域名树;
连接创建模块,用于在哈希表中有与所述主机域名相应的域名树时,遍历所述与所述主机域名相应的域名树并提取优先级最高的若干个子资源域名,同时创建所述主机域名和所述若干个子资源域名的TCP连接;
加载请求模块,用于在获取到该主机域名的主文档数据后,解析所述主文档数据,根据所述主文档数据中的子资源URL发起子资源加载请求;
加载模块,用于在当前子资源加载请求中的子资源域名是前述若干个子资源域名中的域名时,提高所述当前子资源加载请求中的子资源域名的优先级,利用先前已创建的该子资源域名的TCP连接直接发起HTTP请求,完成该子资源的加载;
节点管理模块,用于当前子资源加载请求中的子资源域名不是前述若干个子资源域名中的域名,则在所述与所述主机域名相应的域名树中创建一个域名树节点用于保存所述当前子资源加载请求中的子资源域名,并根据所述子资源的资源类型初始化所述子资源域名的优先级。
5.根据权利要求4所述的装置,其特征在于,所述查询模块还包括:
域名树创建单元,用于在查询哈希表时,如果没有找到与所述主机域名相应的域名树,则在哈希表中构造一棵域名树以便下次访问时使用。
6.根据权利要求4所述的装置,其特征在于,所述启动模块还包括:
初始化单元,用于在浏览器客户端启动后初始化哈希表,遍历所述哈希表中每一棵域名树,判断域名树中每一节点的使用标记字段是否为真,如果不为真则删除该节点并更新其父节点,随后遍历其下一节点;否则直接遍历下一节点。
CN201310329393.6A 2013-07-31 2013-07-31 加快子资源加载速度的方法和装置 Active CN103365695B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310329393.6A CN103365695B (zh) 2013-07-31 2013-07-31 加快子资源加载速度的方法和装置
PCT/CN2014/077409 WO2015014145A1 (zh) 2013-07-31 2014-05-14 加快子资源加载速度的方法和装置
US15/012,095 US10250526B2 (en) 2013-07-31 2016-02-01 Method and apparatus for increasing subresource loading speed

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310329393.6A CN103365695B (zh) 2013-07-31 2013-07-31 加快子资源加载速度的方法和装置

Publications (2)

Publication Number Publication Date
CN103365695A CN103365695A (zh) 2013-10-23
CN103365695B true CN103365695B (zh) 2017-04-26

Family

ID=49367124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310329393.6A Active CN103365695B (zh) 2013-07-31 2013-07-31 加快子资源加载速度的方法和装置

Country Status (3)

Country Link
US (1) US10250526B2 (zh)
CN (1) CN103365695B (zh)
WO (1) WO2015014145A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365695B (zh) 2013-07-31 2017-04-26 广州市动景计算机科技有限公司 加快子资源加载速度的方法和装置
US8924850B1 (en) 2013-11-21 2014-12-30 Google Inc. Speeding up document loading
CN104168337B (zh) * 2014-09-10 2018-03-27 北京浩瀚深度信息技术股份有限公司 一种网络访问的加速方法
CN105786931B (zh) * 2014-12-26 2019-06-04 北京神州泰岳软件股份有限公司 一种树结构资源存储、查询的方法和装置
US11283697B1 (en) 2015-03-24 2022-03-22 Vmware, Inc. Scalable real time metrics management
US10594562B1 (en) 2015-08-25 2020-03-17 Vmware, Inc. Intelligent autoscale of services
CN105893451A (zh) * 2015-12-31 2016-08-24 乐视移动智能信息技术(北京)有限公司 一种资源获取方法与装置
CN108476244A (zh) * 2016-01-13 2018-08-31 三星电子株式会社 通过利用网络延迟来缩短页面加载时间的方法和系统
CN107241372A (zh) * 2016-03-29 2017-10-10 阿里巴巴集团控股有限公司 配置信息生成、发送方法及资源加载方法和装置及系统
CN105808307B (zh) * 2016-04-01 2020-09-01 厦门美柚股份有限公司 一种页面显示方法和装置
CN107656934B (zh) * 2016-07-25 2021-09-07 腾讯科技(深圳)有限公司 一种预加载方法、装置、设备
US10778684B2 (en) 2017-04-07 2020-09-15 Citrix Systems, Inc. Systems and methods for securely and transparently proxying SAAS applications through a cloud-hosted or on-premise network gateway for enhanced security and visibility
CN109241474B (zh) * 2017-07-11 2022-08-05 阿里巴巴集团控股有限公司 页面信息的提供、展示、发布方法、服务器及客户端
CN107612833A (zh) * 2017-09-20 2018-01-19 郑州云海信息技术有限公司 一种基于存储系统的uri路由方法及相关装置
US10949486B2 (en) * 2017-09-20 2021-03-16 Citrix Systems, Inc. Anchored match algorithm for matching with large sets of URL
CN110020305B (zh) * 2017-11-29 2023-12-12 深圳市雅阅科技有限公司 网页加载方法、装置、计算机设备和存储介质
CN110351319B (zh) * 2018-04-04 2022-04-01 中国移动通信有限公司研究院 一种请求消息传输方法、装置及传输设备
US11044180B2 (en) 2018-10-26 2021-06-22 Vmware, Inc. Collecting samples hierarchically in a datacenter
US11582120B2 (en) 2019-05-30 2023-02-14 Vmware, Inc. Partitioning health monitoring in a global server load balancing system
CN110717129A (zh) * 2019-10-24 2020-01-21 北京思维造物信息科技股份有限公司 资源预加载方法、装置、设备和存储介质
US11811861B2 (en) 2021-05-17 2023-11-07 Vmware, Inc. Dynamically updating load balancing criteria
US11792155B2 (en) 2021-06-14 2023-10-17 Vmware, Inc. Method and apparatus for enhanced client persistence in multi-site GSLB deployments

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102023801A (zh) * 2009-09-17 2011-04-20 索尼公司 信息处理设备、数据显示方法和程序
CN102855334A (zh) * 2012-09-29 2013-01-02 北京奇虎科技有限公司 一种浏览器及其获取dns解析数据的方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6584498B2 (en) * 1996-09-13 2003-06-24 Planet Web, Inc. Dynamic preloading of web pages
CN1878164A (zh) * 2005-06-08 2006-12-13 华为技术有限公司 E.164号码域名存储和查询方法
US8200842B1 (en) * 2006-10-25 2012-06-12 Cellco Partnership Automatic traffic control using dynamic DNS update
US8800040B1 (en) * 2008-12-31 2014-08-05 Symantec Corporation Methods and systems for prioritizing the monitoring of malicious uniform resource locators for new malware variants
US9225794B2 (en) * 2009-03-31 2015-12-29 Google Inc. Adaptive DNS pre-resolution
US9436777B2 (en) * 2009-08-13 2016-09-06 Yahoo! Inc. Method and system for causing a browser to preload web page components
US9531736B1 (en) * 2012-12-24 2016-12-27 Narus, Inc. Detecting malicious HTTP redirections using user browsing activity trees
US9197487B2 (en) * 2013-03-15 2015-11-24 Verisign, Inc. High performance DNS traffic management
CN103152426B (zh) * 2013-03-19 2016-12-28 北京奇虎科技有限公司 预加载客户端浏览的网页的服务器、系统和方法
CN103365695B (zh) * 2013-07-31 2017-04-26 广州市动景计算机科技有限公司 加快子资源加载速度的方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102023801A (zh) * 2009-09-17 2011-04-20 索尼公司 信息处理设备、数据显示方法和程序
CN102855334A (zh) * 2012-09-29 2013-01-02 北京奇虎科技有限公司 一种浏览器及其获取dns解析数据的方法

Also Published As

Publication number Publication date
CN103365695A (zh) 2013-10-23
US20160149832A1 (en) 2016-05-26
US10250526B2 (en) 2019-04-02
WO2015014145A1 (zh) 2015-02-05

Similar Documents

Publication Publication Date Title
CN103365695B (zh) 加快子资源加载速度的方法和装置
US8380855B2 (en) HTTP header intermediary for enabling session-based dynamic site searches
CN103345421B (zh) 应用程序推送方法及装置
US20170243238A1 (en) Synthetic user profiles
CN104112002B (zh) 一种表单适配的方法、装置和系统
CN100562873C (zh) 获取网页中网页元素的系统及方法
CN101005501B (zh) 存储和恢复远程用户接口的状态信息的方法和设备
CN100565518C (zh) 一种保持网页当前数据信息的方法及系统
CN105074700A (zh) 产生含有到应用程序的状态链接的搜索结果
CN102227744A (zh) 用于在社交网络中分发的可定制内容
WO2002080014A1 (en) Assembling concurrently-generated personalized web pages
CN103617267B (zh) 社交化扩展搜索方法及装置、系统
CN106663108A (zh) 用于原生应用的深链接
WO2001022248A1 (en) A system and method for using cookies in java
CN103051706A (zh) 应用于动态网站的动态网页请求处理系统和方法
CN102799636A (zh) 移动终端显示网页的方法及系统
CN106569793A (zh) 一种基于Node.js的国际化实现方法
CN108023867A (zh) 移动端网页广告过滤的方法、网关服务器及过滤服务器
US10404816B2 (en) Determining browsing activities
KR101035327B1 (ko) 로그 분석을 이용한 자동 진화형 웹페이지 제공 방법 및 시스템
CN103678479A (zh) 浏览器预读取加速方法、装置及浏览器
CN103390000A (zh) 一种网页搜索方法及网页搜索系统
CN105868234A (zh) 缓存数据的更新方法及装置
CN104158838A (zh) 信息推送的方法及装置
CN107636655A (zh) 实时提供数据即服务(DaaS)的系统和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping B radio 16 floor tower square

Applicant after: Guangzhou Dongjing Computer Technology Co., Ltd.

Address before: 3, building 16, building B, information tower, No. 510665, Yun Yun Road, Guangzhou, Guangdong, Tianhe District

Applicant before: Guangzhou Dongjing Computer Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200526

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping B radio 16 floor tower square

Patentee before: GUANGZHOU UCWEB COMPUTER TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right