CN109918595B - 获取公共模块的方法和装置 - Google Patents
获取公共模块的方法和装置 Download PDFInfo
- Publication number
- CN109918595B CN109918595B CN201910101252.6A CN201910101252A CN109918595B CN 109918595 B CN109918595 B CN 109918595B CN 201910101252 A CN201910101252 A CN 201910101252A CN 109918595 B CN109918595 B CN 109918595B
- Authority
- CN
- China
- Prior art keywords
- page
- module
- multiplexing
- weight
- determining
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000009191 jumping Effects 0.000 claims description 25
- 238000000605 extraction Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012163 sequencing technique Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012856 packing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种获取公共模块的方法和装置。其中,该方法包括:获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。本发明解决了现有技术中打开页面加载的无关功能模块较多的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种获取公共模块的方法和装置。
背景技术
功能模块是一种将代码封装后的虚拟模块,在浏览网页或使用应用程序时展示的每个页面都具有其所依赖的功能模块,在现在的前端多页面的应用中,存在着多个页面使用相同功能模块的情况,图1是一种页面与模块之间的依赖关系的示意图,如图1所示,页面A依赖于模块a和模块b,页面B依赖于模块b和模块c,页面c依赖于页面d和页面a。为了提高页面的加载速度,可以将页面所依赖的多个模块打包为一个公共模块,从而当页面被打开时,公共模块被加载,而不用分别加载每个模块。
但如果仅简单地将一个页面所依赖的多个模块进行打包,则当从一个页面跳转到另一个页面时,会造成模块地重复加载,从而导致带宽浪费、同时也会减缓页面的加载速度。目前,相关技术中的解决方式如下:
设置一个minChunks数,并统计模块在页面中的引入数,当引用数大于或等于该数字时,将模块打包到一个公共的模块中,然后各个页面再分别引入这个公共模块。图2是相关技术中的一种打包公共模块的示意图,结合图2所示,由于模块a和模块b在两个页面中都有引入,因此将它们提取为一个公共的模块,然后在所有页面中引入这个模块。
这种方式的优势在于,当浏览器中打开页面A时,公共模块会加载,然后当打开页面B时,浏览器会从缓存中读取公共模块,而不必重新加载这部分代码。但这种方式存在的缺陷是,在打开页面时,会加载过多的与该页面无关的模块,造成带宽浪费(例如:在打开页面C时,加载了与页面C无关的模块b)。
本发明则基于页面之间的相互跳转关系,通过跳转关系来确定模块的权重,然后根据这个权重来抽取公共模块。以此来将更为通用的模块提取到公共模块,降低打开页面时无关模块的引用次数。
针对现有技术中打开页面加载的无关功能模块较多的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种获取公共模块的方法和装置,以至少解决现有技术中打开页面加载的无关功能模块较多的技术问题。
根据本发明实施例的一个方面,提供了一种获取公共模块的方法,包括:获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
进一步地,基于页面被访问的次数和跳转关系,确定页面对应的页面权重;根据页面对应的页面权重,和页面与功能模块的依赖关系,确定复用模块的权重。
进一步地,根据页面被访问的次数和跳转关系,确定其他页面跳转至页面第一次数,和页面跳转至其他页面的第二次数;确定第一次数和第二次数之和为页面对应的页面权重。
进一步地,根据页面与功能模块的依赖关系,确定依赖复用模块的目标页面;确定目标页面的页面权重之和为复用模块的权重。
进一步地,获取每个其他页面跳转至页面的概率,其中,概率为其他页面跳转至页面次数与页面被访问的次数的比值;确定每个其他页面跳转至页面的概率之和为页面的页面权重。
进一步地,根据页面与功能模块的依赖关系,确定依赖复用模块的目标页面;确定目标页面的页面权重之和为复用模块的权重。
进一步地,将多个复用模块按照权重进行排序;按照预设的抽取规则,从复用模块中抽取目标模块。
进一步地,如果复用模块按照权重由高至低的顺序排列,则抽取前M个复用模块作为目标模块;如果复用模块按照权重由低至高的顺序排列,则抽取后N个复用模块作为目标模块;或设置权重阈值,抽取权重大于权重阈值的复用模块为目标模块。
根据本发明实施例的另一方面,还提供了一种获取公共模块的装置,包括:获取模块,用于获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;确定模块,用于根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;选择模块,用于根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行如下步骤:获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行如下步骤:获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
在本发明实施例中,获取页面在预设时间内被访问的次数和多个页面之间的跳转关系,根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块,根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。上述方案基于页面之间的相互跳转关系确定复用模块的权重,然后根据复用模块的权重来抽取用于构成公共模块的目标模块,从而达到了将更为通用的模块提取到公共模块的目的,并达到了降低打开页面时加载无关模块的引用次数的效果,进而解决了现有技术中打开页面加载的无关功能模块较多的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是一种页面与模块之间的依赖关系的示意图;
图2是相关技术中的一种打包公共模块的示意图;
图3是根据本发明实施例的获取公共模块的方法的流程图;
图4是根据本发明实施例的一种前端多页面项目抽取公共模块的方法的流程图;以及
图5是根据本发明实施例的获取公共模块的装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种获取公共模块的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图3是根据本发明实施例的获取公共模块的方法的流程图,如图3所示,该方法包括如下步骤:
步骤S31,获取页面在预设时间内被访问的次数和多个页面之间的跳转关系。
具体的,上述页面可以是指定页面,也可以是预设时间内被访问的所有页面。页面被访问包括两种方式,第一种是直接被访问,第二种是通过其他页面的跳转进行访问。例如,用户通过搜索引擎搜索任意内容,并通过点击搜索引擎返回的结果进入网站内的一个页面,或用户通过直接输入网址的方式进入该页面,为直接访问;如果用户通过网站的一个页面跳转至另一个页面,则另一个页面即为通过上述第二种方式被访问的页面。
在上述步骤中,获取页面被访问的次数可以包括页面被访问的总次数,以及页面之间的跳转关系,还可以获取到总次数中,页面被直接访问的次数,和被每个其他页面跳转访问的次数。
步骤S33,根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块。
具体的,上述复用模块为被多个页面所依赖的功能模块,如图1所示,模块a被页面A和页面C所依赖,因此,模块a为复用模块;模块b也被页面A和页面B所依赖,因此,模块b也为复用模块。
复用模块实际是用于被组成公共模块的候选目标模块,上述步骤根据页面的访问次数和跳转关系确定复用模块的权重,因此可以确定在页面的跳转关系中,被引用的可能性越高的复用模块,对应的权重越高,也可以认为在任意时段页面的跳转关系中,该复用模块越容易被引用。
作为一种可选的实施例,根据跳转关系,确定复用模块的权重,包括:基于页面被访问的次数和跳转关系,确定页面对应的页面权重;步骤S333,根据页面对应的页面权重,和页面与功能模块的依赖关系,确定复用模块的权重。
页面的权重用于表示页面可能被访问的概率,尤其是可能通过其他页面跳转访问的概率,页面的权重越大,其通过其他页面跳转访问的概率也就越大;并且页面的权重与其依赖的功能模块的权重呈正比例关系,因此,页面的权重越大,其依赖的复用模块的权重越大。
可以这样理解页面权重与复用模块的关系,具有更高概率被访问的页面,其所依赖的复用模块,在跳转关系中,具有更大的概率被加载。
作为一种可选的实施例,基于页面被访问的次数和跳转关系,确定页面对应的页面权重,包括:根据页面被访问的次数和跳转关系,确定其他页面跳转至每个页面第一次数,和页面跳转至其他页面的第二次数;确定第一次数和第二次数之和为页面对应的页面权重。
具体的,预设时间内被访问的每个页面都具有第一次数和第二次数这两个参数,对一个页面的第一次数和第二次数相加即可得到该页面的页面权重,对预设时间内被访问的每个页面都进行上述计算,即可得到每个页面的页面权重。
下面举例说明,对于A页面,其第一次数为C(BA)+C(CA)+C(DA),其中,C(BA)用于表示页面B跳转至页面A的次数,C(CA)和C(DA)同理;A页面的第二次数为C(AB)+C(AC)+C(AD),其中,C(AB)用于表示页面A跳转至页面B的次数,C(AC)和C(AD)同理。由此可以得到页面A的页面权重Qp(A)=C(AB)+C(AC)+C(AD)+C(BA)+C(CA)+C(DA)。
作为一种可选的实施例,根据页面对应的页面权重,和页面与功能模块的依赖关系,确定复用模块的权重,包括:根据页面与功能模块的依赖关系,确定依赖复用模块的目标页面;确定目标页面的页面权重之和为复用模块的权重。
具体的,复用模块为被多个页面所依赖的功能模块,首先可以从页面依赖的所有模块中确定复用模块,在确定复用模块之后,再确定依赖复用模块的页面,即目标页面。
在上述方案中,复用模块的权重为复用模块的目标页面的权重之和。举例说明:模块a、模块b均为复用模块,页面A和页面B依赖模块a,页面A、页面D以及页面F依赖模块b,即可以得到模块a的权重Qm(a)=Qp(A)+Qp(B);模块b的权重Qm(b)=Qp(A)+Qp(D)+Qp(F),其中,Qp(A)为页面A权重,其他参数同理。
作为一种可选的实施例,基于页面被访问的次数和跳转关系,确定页面对应的页面权重,包括:获取每个其他页面跳转至页面的概率,其中,概率为其他页面跳转至页面次数与页面被访问的次数的比值;确定每个其他页面跳转至页面的概率之和为页面的页面权重。
具体的,上述两个页面之间的跳转概率根据两个页面之间的跳转次数和页面被访问的次数确定。
举例说明:页面A跳转至页面B的概率P(AB)=C(AB)/O(A),其中,C(AB)用于表示由页面A跳转至页面B的次数,O(A)用于表示页面A被访问的总次数。页面A的权重Qp(A)=P(BA)+P(CA)+P(DA),其中,P(BA)用于表示页面B跳转至页面A的概率,其他参数同理。
作为一种可选的实施例,根据页面对应的页面权重,和页面与功能模块的依赖关系,确定复用模块的权重,包括:根据页面与功能模块的依赖关系,确定依赖复用模块的目标页面;确定目标页面的页面权重之和为复用模块的权重。
具体的,复用模块为被多个页面所依赖的功能模块,首先可以从页面依赖的所有模块中确定复用模块,在确定复用模块之后,再确定依赖复用模块的页面,即目标页面。
在上述方案中,复用模块的权重为复用模块的目标页面的权重之和。举例说明:模块a、模块b均为复用模块,页面A和页面B依赖模块a,页面A、页面D以及页面F依赖模块b,即可以得到模块a的权重Qm(a)=Qp(A)+Qp(B);模块b的权重Qm(b)=Qp(A)+Qp(D)+Qp(F),其中,Qp(A)为页面A权重,其他参数同理。
步骤S35,根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
具体的,在确定目标模块后,将目标模块内的代码重新进行合并和封装,即可得到由目标模块构成的公共模块。
作为一种可选的实施例,根据复用模块的权重值,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块,包括:将多个复用模块按照权重进行排序;按照预设的抽取规则,从复用模块中抽取目标模块。
作为一种可选的实施例,按照预设的抽取规则,从复用模块中抽取目标模块,包括:如果复用模块按照权重由高至低的顺序排列,则抽取前M个复用模块作为目标模块;如果复用模块按照权重由低至高的顺序排列,则抽取后N个复用模块作为目标模块;或设置权重阈值,抽取权重大于权重阈值的复用模块为目标模块。
在一种可选的实施例中,可以设置权重阈值,并将权重大于设置的权重阈值的复用模块作为目标模块,构成公共模块。
在另一种可选的实施例中,可以确定构成公共模块的目标模块的数量P,再将复用模块按照权重排序,取前权重最大的P个复用模块作为目标模块构成公共模块。
需要注意的是,在使用目标模块构成公共模块后,无法再单独加载目标模块,而是直接引用公共模块,也即,当启动任意一个依赖于构成公共模块的目标模块时,公共模块都会被作为一个整体加载。在这种情况下,如果构成公共模块的复用模块的选择偏差较大,则会导致系统反复加载与页面无关的复用模块,进而导致浪费系统带宽,减缓页面加载速度。
本申请上述实施例获取页面在预设时间内被访问的次数和多个页面之间的跳转关系,根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块,根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。上述方案基于页面之间的相互跳转关系确定复用模块的权重,然后根据复用模块的权重来抽取用于构成公共模块的目标模块,从而达到了将更为通用的模块提取到公共模块的目的,并达到了降低打开页面时加载无关模块的引用次数的效果,进而解决了现有技术中打开页面加载的无关功能模块较多的技术问题。
图4是根据本发明实施例的一种前端多页面项目抽取公共模块的方法的流程图,下面结合图4进行说明。
S1,统计页面打开、跳转次数。
上述统计的页面打开次数和跳转次数为预设时间内的数据。
S2,分析页面模块依赖。
上述步骤用于确定页面所依赖的模块,从而确定复用模块。
S3,根据统计的跳转次数、页面与模块的依赖关系,计算各个模块的权重。
计算模块权重的方式可以是,先确定页面的权重,再将依赖某个模块的全部页面的权重相加,得到该模块的权重,并通过该方式,得到所有模块的权重。
S4、选取权重较高的模块抽取至公共模块。
在上述步骤中,可以选择权重大于预设值的模块作为公共模块。
实施例2
根据本发明实施例,提供了一种获取公共模块的装置的实施例,图5是根据本发明实施例的获取公共模块的装置的示意图,如图5所示,该装置包括:
获取模块50,用于获取页面在预设时间内被访问的次数和多个页面之间的跳转关系。
确定模块52,用于根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块。
选择模块54,用于根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
作为一种可选的实施例,确定模块包括:第一确定子模块,用于基于页面被访问的次数和跳转关系,确定页面对应的页面权重;第二确定子模块,用于根据页面对应的页面权重,和页面与功能模块的依赖关系,确定复用模块的权重。
作为一种可选的实施例,第一确定子模块包括:第一确定子单元,用于根据页面被访问的次数和跳转关系,确定其他页面跳转至页面第一次数,和页面跳转至其他页面的第二次数;第二确定子单元,用于确定第一次数和第二次数之和为页面对应的页面权重。
作为一种可选的实施例,第二确定子模块包括:第三确定子单元,用于根据页面与功能模块的依赖关系,确定依赖复用模块的目标页面;第四确定子单元,用于确定目标页面的页面权重之和为复用模块的权重。
作为一种可选的实施例,第一确定子模块包括:获取单元,用于获取每个其他页面跳转至页面的概率,其中,概率为其他页面跳转至页面次数与页面被访问的次数的比值;第五确定子单元,用于确定每个其他页面跳转至页面的概率之和为页面的页面权重。
作为一种可选的实施例,第二确定子模块包括:第六确定子单元,用于根据页面与功能模块的依赖关系,确定依赖复用模块的目标页面;第七确定子单元,用于确定目标页面的页面权重之和为复用模块的权重。
作为一种可选的实施例,选择模块包括:排序子模块,用于将多个复用模块按照权重进行排序;抽取子模块,用于按照预设的抽取规则,从复用模块中抽取目标模块。
作为一种可选的实施例,抽取子模块包括:第一抽取单元,用于如果复用模块按照权重由高至低的顺序排列,则抽取前M个复用模块作为目标模块;第二抽取单元,用于如果复用模块按照权重由低至高的顺序排列,则抽取后N个复用模块作为目标模块;或第三抽取单元,用于设置权重阈值,抽取权重大于权重阈值的复用模块为目标模块。
实施例3
根据本发明实施例,提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行如下步骤:获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
进一步地,在程序运行时控制存储介质所在设备还执行了实施例1中的其他步骤,此处不再赘述。
实施例4
根据本发明实施例,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行如下步骤:获取页面在预设时间内被访问的次数和多个页面之间的跳转关系;根据页面被访问的次数和跳转关系,确定复用模块的权重,其中,复用模块用于表示被多个页面依赖的功能模块;根据复用模块的权重,从复用模块中选择目标模块,其中,目标模块用于通过合并构成公共模块。
进一步地,上述程序运行时还执行了实施例1中的其他步骤,此处不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种获取公共模块的方法,其特征在于,包括:
获取页面在预设时间内被访问的次数和多个所述页面之间的跳转关系;
根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,其中,所述复用模块用于表示被多个页面依赖的功能模块;
根据所述复用模块的权重,从所述复用模块中选择目标模块,其中,所述目标模块用于通过合并构成所述公共模块;
其中,根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,包括:基于所述页面被访问的次数和所述跳转关系,确定所述页面对应的页面权重;根据所述页面对应的所述页面权重,和所述页面与功能模块的依赖关系,确定所述复用模块的权重。
2.根据权利要求1所述的方法,其特征在于,基于所述页面被访问的次数和所述跳转关系,确定所述页面对应的页面权重,包括:
根据所述页面被访问的次数和所述跳转关系,确定其他页面跳转至所述页面第一次数,和所述页面跳转至其他页面的第二次数;
确定所述第一次数和所述第二次数之和为所述页面对应的页面权重。
3.根据权利要求2所述的方法,其特征在于,根据所述页面对应的所述页面权重,和所述页面与功能模块的依赖关系,确定所述复用模块的权重,包括:
根据所述页面与所述功能模块的依赖关系,确定依赖所述复用模块的目标页面;
确定所述目标页面的页面权重之和为所述复用模块的权重。
4.根据权利要求1所述的方法,其特征在于,基于所述页面被访问的次数和所述跳转关系,确定所述页面对应的页面权重,包括:
获取每个其他页面跳转至所述页面的概率,其中,所述概率为所述其他页面跳转至所述页面次数与所述页面被访问的次数的比值;
确定每个所述其他页面跳转至所述页面的概率之和为所述页面的页面权重。
5.根据权利要求4所述的方法,其特征在于,根据所述页面对应的所述页面权重,和所述页面与功能模块的依赖关系,确定所述复用模块的权重,包括:
根据所述页面与所述功能模块的依赖关系,确定依赖所述复用模块的目标页面;
确定所述目标页面的页面权重之和为所述复用模块的权重。
6.根据权利要求1所述的方法,其特征在于,根据所述复用模块的权重值,从所述复用模块中选择目标模块,其中,所述目标模块用于通过合并构成公共模块,包括:
将多个所述复用模块按照权重进行排序;
按照预设的抽取规则,从所述复用模块中抽取所述目标模块。
7.根据权利要求6所述的方法,其特征在于,按照预设的抽取规则,从所述复用模块中抽取所述目标模块,包括:
如果所述复用模块按照所述权重由高至低的顺序排列,则抽取前M个复用模块作为所述目标模块;
如果所述复用模块按照所述权重由低至高的顺序排列,则抽取后N个复用模块作为所述目标模块;或
设置权重阈值,抽取权重大于所述权重阈值的复用模块为所述目标模块。
8.一种获取公共模块的装置,其特征在于,包括:
获取模块,用于获取页面在预设时间内被访问的次数和多个所述页面之间的跳转关系;
确定模块,用于根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,其中,所述复用模块用于表示被多个页面依赖的功能模块;
选择模块,用于根据所述复用模块的权重,从所述复用模块中选择目标模块,其中,所述目标模块用于通过合并构成所述公共模块;
其中,所述确定模块用于通过以下步骤来根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重:基于所述页面被访问的次数和所述跳转关系,确定所述页面对应的页面权重;根据所述页面对应的所述页面权重,和所述页面与功能模块的依赖关系,确定所述复用模块的权重。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如下步骤:获取页面在预设时间内被访问的次数和多个所述页面之间的跳转关系;根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,其中,所述复用模块用于表示被多个页面依赖的功能模块;根据所述复用模块的权重,从所述复用模块中选择目标模块,其中,所述目标模块用于通过合并构成公共模块;
其中,根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,包括:基于所述页面被访问的次数和所述跳转关系,确定所述页面对应的页面权重;根据所述页面对应的所述页面权重,和所述页面与功能模块的依赖关系,确定所述复用模块的权重。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行如下步骤:获取页面在预设时间内被访问的次数和多个所述页面之间的跳转关系;根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,其中,所述复用模块用于表示被多个页面依赖的功能模块;根据所述复用模块的权重,从所述复用模块中选择目标模块,其中,所述目标模块用于通过合并构成公共模块;
其中,根据所述页面被访问的次数和所述跳转关系,确定复用模块的权重,包括:基于所述页面被访问的次数和所述跳转关系,确定所述页面对应的页面权重;根据所述页面对应的所述页面权重,和所述页面与功能模块的依赖关系,确定所述复用模块的权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910101252.6A CN109918595B (zh) | 2019-01-31 | 2019-01-31 | 获取公共模块的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910101252.6A CN109918595B (zh) | 2019-01-31 | 2019-01-31 | 获取公共模块的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109918595A CN109918595A (zh) | 2019-06-21 |
CN109918595B true CN109918595B (zh) | 2021-01-22 |
Family
ID=66961243
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910101252.6A Active CN109918595B (zh) | 2019-01-31 | 2019-01-31 | 获取公共模块的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109918595B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110471709B (zh) * | 2019-07-15 | 2022-12-06 | 北京字节跳动网络技术有限公司 | 一种加速网页打开速度的方法、装置、介质和电子设备 |
CN113553522A (zh) * | 2020-04-24 | 2021-10-26 | 北京金山云网络技术有限公司 | 一种页面显示方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8141045B2 (en) * | 2007-12-14 | 2012-03-20 | International Business Machines Corporation | Automatically identifying the source of copied software |
CN107995245A (zh) * | 2016-10-27 | 2018-05-04 | 腾讯科技(深圳)有限公司 | 一种资源共享的方法及终端 |
CN108090159A (zh) * | 2017-12-12 | 2018-05-29 | 福建中金在线信息科技有限公司 | 一种网站页面的生成方法、装置、电子设备及存储介质 |
CN108491209A (zh) * | 2018-02-23 | 2018-09-04 | 厦门集微科技有限公司 | 一种html页面中公共代码的提取方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130073687A1 (en) * | 2011-09-19 | 2013-03-21 | Ronald Steven Cok | System for managing information using machine-readable codes |
-
2019
- 2019-01-31 CN CN201910101252.6A patent/CN109918595B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8141045B2 (en) * | 2007-12-14 | 2012-03-20 | International Business Machines Corporation | Automatically identifying the source of copied software |
CN107995245A (zh) * | 2016-10-27 | 2018-05-04 | 腾讯科技(深圳)有限公司 | 一种资源共享的方法及终端 |
CN108090159A (zh) * | 2017-12-12 | 2018-05-29 | 福建中金在线信息科技有限公司 | 一种网站页面的生成方法、装置、电子设备及存储介质 |
CN108491209A (zh) * | 2018-02-23 | 2018-09-04 | 厦门集微科技有限公司 | 一种html页面中公共代码的提取方法及装置 |
Non-Patent Citations (1)
Title |
---|
Webpack 提取公共模块;啃先生;《https://segmentfault.com/a/1190000007498385》;20161116;1-5 * |
Also Published As
Publication number | Publication date |
---|---|
CN109918595A (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5449628B2 (ja) | マルチステージを使用したカテゴリ情報の決定 | |
KR102125119B1 (ko) | 데이터 핸들링 방법 및 장치 | |
US20160188723A1 (en) | Cloud website recommendation method and system based on terminal access statistics, and related device | |
US9330186B2 (en) | Similarity engine for facilitating re-creation of an application collection of a source computing device on a destination computing device | |
CN110704677B (zh) | 一种节目推荐方法、装置、可读存储介质及终端设备 | |
CN111241389A (zh) | 基于矩阵的敏感词过滤方法、装置、电子设备、存储介质 | |
CN104077337B (zh) | 搜索方法及装置 | |
US20130339369A1 (en) | Search Method and Apparatus | |
CN106445963A (zh) | App平台的广告索引关键词自动生成方法和装置 | |
CN105512156B (zh) | 点击模型生成方法和装置 | |
CN109918595B (zh) | 获取公共模块的方法和装置 | |
CN106599047A (zh) | 一种信息的推送方法及装置 | |
CN113568940A (zh) | 数据查询的方法、装置、设备以及存储介质 | |
CN106919576A (zh) | 利用二级类目下的关键词库搜索应用程序的方法及装置 | |
CN114637914A (zh) | 榜单处理方法、计算设备及存储介质 | |
CN107748801B (zh) | 新闻推荐方法、装置、终端设备及计算机可读存储介质 | |
CN113791837A (zh) | 页面处理方法、装置、设备和存储介质 | |
CN111488434A (zh) | 输入联想词的推荐方法、装置、存储介质及电子设备 | |
CN104933099A (zh) | 一种为用户提供目标搜索结果的方法与装置 | |
CN106844406B (zh) | 检索方法和检索装置 | |
CN106611022B (zh) | 提高网站站内搜索效率的方法和装置 | |
CN107562533B (zh) | 一种数据加载处理方法及装置 | |
CN108170664B (zh) | 基于重点关键词的关键词拓展方法和装置 | |
JP7350364B2 (ja) | コンピュータ機器が実行するロングテールキーワードの識別方法、キーワード検索方法及びコンピュータ機器 | |
JP5928446B2 (ja) | 情報検索システム、情報検索方法および情報検索プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |