CN105224380B - 用于小门户调度的方法和系统 - Google Patents
用于小门户调度的方法和系统 Download PDFInfo
- Publication number
- CN105224380B CN105224380B CN201410229741.7A CN201410229741A CN105224380B CN 105224380 B CN105224380 B CN 105224380B CN 201410229741 A CN201410229741 A CN 201410229741A CN 105224380 B CN105224380 B CN 105224380B
- Authority
- CN
- China
- Prior art keywords
- portlet
- weight
- thread
- portlets
- threads
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理,更确切的,本发明涉及一种用于小门户(portlet)调度的方法和系统。根据本发明的用于多个小门户调度的方法包括:获取所述多个小门户的调用时间;获取所述多个小门户的权重;根据所述调用时间和权重将所述多个小门户组装至多个线程中,其中组装后的多个线程具有相近的线程调用时间。利用说明性实施例的用于多个小门户调度的方法和系统,根据每个小门户的调用时间以及重要性将多个小门户组装置具有相似线程调用时间的多个线程中,较好的解决了以上的问题,从而能够显著地减少小门户的装载时间,提高小门户的装载效率,更好的改善用户体验。
Description
技术领域
本发明涉及数据处理,更确切的,本发明涉及一种用于小门户(portlet)调度的方法和系统。
背景技术
门户(portal)服务器是一个把以小门户为单元的内容聚合起来形成一个门户页面的平台。当前的小门户装载机制是一种单线程的方式,即,针对一个门户页面中的所有的小门户一个一个顺序地进行装载,然后进行聚合。单线程的这种方式使得小门户的装载耗时长,效率低下,严重影响用户体验。
发明内容
针对现有技术中存在的上述问题,本发明提出了一种用于多个小门户调度的方法和系统,能够显著地减少小门户的装载时间,提高小门户的装载效率,更好的改善用户体验。
本发明的说明性实施例提供了一种用于多个小门户的调度方法,包括:获取所述多个小门户的调用时间;获取所述多个小门户的权重;根据所述调用时间和权重将所述多个小门户组装至多个线程中,其中组装后的多个线程相互具有相近的线程调用时间,所述多个线程的每个线程中权重大的小门户将被优先执行。
本发明的说明性实施例提供了一种用于多个小门户的调度系统,包括:获取装置,配置为获取所述多个小门户的调用时间和权重;组装装置,配置为根据所述调用时间和权重将所述多个小门户组装至多个线程中,其中组装后的多个线程相互具有相近的线程调用时间,所述多个线程的每个线程中权重大的小门户将被优先执行。
利用说明性实施例的用于多个小门户调度的方法和系统,根据每个小门户的调用时间以及重要性将多个小门户组装置具有相似线程调用时间的多个线程中,较好的解决了以上的问题,从而能够显著地减少小门户的装载时间,提高小门户的装载效率,更好的改善用户体验。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图;
图2示出了根据本发明一个实施例的用于多个小门户调度的方法200的流程图;
图3示出了根据本发明一个实施例的用于多个小门户调度的系统300的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
除了图1显示传统的计算机系统/服务器12,适于用来实现本发明实施方式还可以包括移动电子设备,包括但不限于移动电话、PDA、平板电脑等。典型的,移动电子设备具有输入设备包括但不限于接触式输入设备,如触摸屏、触摸板等。
下面对本发明涉及的术语进行介绍。
门户:是一个基于Web的应用,通常能提供个性化、单点登录、来自不同源的内容聚合和信息系统的表示层集中。聚合是整合不同Web页面源数据的过程。
门户页:门户页本身代表一个完整的标记文档,通常由多个小门户聚合而成。门户页通常包含多个对应于小门户的窗口,除对应于小门户的窗口外,页面可能还包含导航区和标志区。对应于小门户的窗口通常包含标题栏、装饰和小门户产生的内容。门户页可能包含复杂的个性化特征,为不同用户创建的具有个性化内容的门户页可能会包含不同的小门户的集合。门户页处理客户请求,找回当前页中的小门户,然后调用小门户容器,重新获取各个小门户的内容。
小门户:是基于Java的Web组件,由小门户容器管理,并由容器处理请求并产生动态内容。小门户产生的内容称为片段,即一段遵守中心规则的标记(如html、xhtml或wml等)。多个片段可以聚合成一个完整的文档。多个小门户聚合在一起组成门户页,由小门户容器控制小门户的生命周期。
小门户容器:用于提供小门户需求的运行时环境并运行小门户,包含小门户并控制它们的生命周期。小门户容器提供小门户参数的持久存储机制,接受来自门户页的请求,并在其持有的小门户上执行请求。小门户容器不负责小门户产生内容的聚合,而是由门户页自己处理内容的聚合。
线程:是能够独立运行的基本单位,也是独立调度和分派的基本单位。
下面参考图2,其中示出了根据本发明一个实施例的用于多个小门户调度的方法200的流程图。方法200通常在小门户容器执行,用于对多个小门户进行调度。
根据本发明的一个实施例,用于多个小门户调度的方法200从步骤202开始。接下来,方法200进入步骤204,其中获取多个小门户的调用时间。多个小门户的每一个都具有其对应的调用时间。根据本发明的一个实施例,调用时间可以基于多个小门户的历史调用时间确定。假设存在n个小门户{P1,P2,…,Pn},那么对应的调用时间可以表示为{T1,T2,…,Tn}。根据本发明的一个实施例,多个小门户的调用时间{T1,T2,…,Tn}可以是在一段历史时期每一个小门户{P1,P2,…,Pn}各自的多次调用时间的加权平均。根据本发明的一个实施例,多个小门户的调用时间{T1,T2,…,Tn}也可以是每一个小门户{P1,P2,…,Pn}各自在上一历史时刻的调用时间。应当理解,上面给出的两种情况仅是出于说明的目的,可以利用现有技术中任意适当的方式确定小门户的调用时间,只要确定的小门户的调用时间能够在一定程度上真实反映小门户调用耗时即可。小门户的调用时间可以响应于获取多个小门户的调用时间的请求动态计算得到,也可以事先计算好并存储于网络中的某一位置,例如与小门户容器耦合的存储器中,以便能够将多个小门户的调用时间作为对获取多个小门户的调用时间的请求的响应返回。
接下来,方法200进入步骤206,其中获取多个小门户的权重。多个小门户的每一个都具有其对应的权重。根据本发明的一个实施例,权重可以根据多个小门户对客户端浏览器的用户的重要性确定。假设存在n个小门户{P1,P2,…,Pn},那么对应的权重可以表示为{W1,W2,…,Wn}。根据本发明的一个实施例,多个小门户的权重{W1,W2,…,Wn}可以根据一段历史时期用户的行为习惯基于统计学的方法确定。例如,在该段历史时期内与用户具有频繁交互的小门户将具有更高的权重。根据本发明的一个实施例,多个小门户的权重{W1,W2,…,Wn}可以是每一个小门户{P1,P2,…,Pn}各自在上一历史时刻的权重值。应当理解,上面给出的两种情况只是出于说明的目的,可以利用现有技术中任意适当的方式确定小门户的权重,只要确定的小门户的权重能够在一定程度上真实反映小门户对用户的重要性即可。小门户的权重可以响应于获取多个小门户的权重的请求动态计算得到,也可以事先计算好并存储于网络中的某一位置,例如与小门户容器耦合的存储器中,以便能够将多个小门户的权重作为对获取多个小门户的权重的请求的响应返回。
应当理解,步骤204和206并不需要严格按照上面描述的顺序执行,步骤204和206的执行顺序可以调换,也可以同时执行。根据本发明的一个实施例,上述多个小门户的调用时间和权重的获取可以响应于客户端浏览器对多个小门户的请求执行。
在经历步骤204和206之后,获得的多个小门户的调用时间和权重可以用下面的数组序列来表示:
{P1(W1,T1),P2(W2,T2),…,Pn(Wn,Tn)}
其中该数组中的每个序列中的每一个数组分别表示每一个小门户及其对应的调用时间以及权重。
接下来,方法200进入步骤208,其中根据调用时间和权重将多个小门户组装至多个线程中,其中组装后的多个线程相互具有相近的线程调用时间,所述多个线程的每个线程中权重大的小门户将被优先执行。根据本发明的一个实施例,可以根据多个小门户的每一个的权重将多个小门户的至少一部分小门户分配到多个线程中。具体的,可以根据权重将多个小门户进行降序排列,然后根据权重从大到小的顺序获取降序排列后的多个小门户中与多个线程的数目相同的多个小门户,然后将获取的多个小门户依次分配到多个线程中。进一步地,根据调用时间将剩余的小门户组装到多个线程中,以使组装后的多个线程具有相近的线程调用时间。根据本发明的一个实施例,还可以获取门户服务器和小门户容器之间的网络传输状况信息,并进一步根据网络传输状况信息将多个小门户组装至多个线程中。
下面结合具体实例对上述过程进行说明。应当理解,以下只是出于说明的目的,不能认为是对本发明保护范围的限制。
假设总共存在8个小门户{P1,P2,P3,P4,P5,P6,P7,P8},即n=8,并且存在4个线程{T1,T2,T3,T4}。
对应的,每个小门户的调用时间(单位为ms)是{10,9,1,6,4,5,3,1};
对应的,每个小门户的权重是{W1,W2,W3,W4,W5,W6,W7,W8},这里为了便于说明的目的,假设W1>W2>W3>W4>W5>W6>W7>W8。
经过步骤204和206之后,获得的多个小门户的调用时间和权重可以用下面的数组序列来表示:{P1(W1,10),P2(W2,9),P3(W3,1),P4(W4,6),P5(W5,4),P6(W6,5),P7(W7,3),P8(W8,1)}
根据本发明的一个实施例,首先根据权重将多个小门户分配到4个线程中。具体的,根据权重将8个小门户进行降序排列,得到降序排列后的8个小门户为:{P1,P2,P3,P4,P5,P6,P7,P8}。
然后,根据权重从大到小的顺序获取降序排列后的多个小门户中与多个线程的数目相同的多个小门户,然后将获取的多个小门户依次分配到多个线程中。针对以上给出的示例,存在4个线程,因此,按照权重从大到小的顺序获取降序排列后的4个小门户,即{P1,P2,P3,P4}。然后将这4个小门户依次分配到4个线程中。经过上述处理后,对应的4个线程的情况如表1所示:
线程ID | 组装的小门户(权重,调用时间) |
T1 | P1(W1,10,) |
T2 | P2(W2,9) |
T3 | P3(W3,1) |
T4 | P4(W4,6) |
表1
上表中,每一行代表一个线程,并以{小门户ID(权重,调用时间)}的形式表示被组装在该线程中的小门户。
然后,进一步地,根据调用时间将剩余的小门户组装到多个线程中,以使组装后的多个线程具有相近的线程调用时间。针对以上给出的示例,将剩下的小门户{P5,P6,P7,P8}根据各自的调用时间将其组装到4个线程中,以使组装后的4个线程具有近似的线程调用时间。经过上述处理后,对应的4个线程的情况如表2所示:
线程ID | 组装的小门户(权重,调用时间) |
T1 | P1(W1,10) |
T2 | P2(W2,9),P8(W8,1) |
T3 | P3(W3,1),P5(W5,4),P6(W6,5) |
T4 | P4(W4,6),P7(W7,3) |
表2
上表中,每一行代表一个线程,并以{小门户ID(权重,调用时间)}的形式表示被组装在该线程中的小门户。可以看到,经过处理后的4个线程具有近似的调用时间:其中T1、T2和T3的调用时间为10ms,T4的调用时间为9ms。除此之外,由于在进行组装的过程中首先考虑了小门户的权重,使得权重相对较高的小门户会先被调度:其中权重相对较高的小门户{P1,P2,P3,P4}会先被调度。
通过以上详细示例的说明可以看出,由于根据每个小门户的调用时间以及重要性将多个小门户组装置具有相似线程调用时间的多个线程中,因而,本发明较好的解决了现有技术中的问题,从而能够显著地减少小门户的装载时间,提高小门户的装载效率,更好的改善用户体验。
下面参考图3,其中示出了根据本发明一个实施例的用于多个小门户调度的系统300的框图。
根据本发明的一个实施例,用于多个小门户调度的系统300包括:获取装置302,配置为获取所述多个小门户的调用时间和权重;组装装置304,配置为根据所述调用时间和权重将所述多个小门户组装至多个线程中,其中组装后的多个线程相互具有相近的线程调用时间,所述多个线程的每个线程中权重大的小门户将被优先执行。多个小门户的每一个都具有其对应的调用时间。根据本发明的一个实施例,调用时间可以基于多个小门户的历史调用时间确定。多个小门户的每一个都具有其对应的权重。根据本发明的一个实施例,权重可以根据多个小门户对客户端浏览器的用户的重要性确定。由于在上文已经对此进行了说明,这里不再赘述。
根据本发明的一个实施例,获取装置302响应于客户端浏览器对所述多个小门户的请求执行所述获取。
根据本发明的一个实施例,组装装置304进一步配置为根据所述权重将至少部分所述多个小门户分配到所述多个线程中。具体的,组装装置304进一步配置为根据所述权重将所述多个小门户降序排列;按照权重从大到小的顺序获取降序排列后的多个小门户中与所述多个线程数目相同的多个小门户;将获取的多个小门户依次分配到所述多个线程中。
根据本发明的一个实施例,组装装置304进一步配置为根据调用时间将剩余的小门户组装到所述多个线程中,以使组装后的多个线程具有相近的线程调用时间。
根据本发明的一个实施例,获取装置302进一步配置为获取门户服务器和小门户容器之间的网络传输状况信息;并且组装装置304进一步配置为进一步根据所述网络传输状况信息将所述多个小门户组装至多个线程中。
以上结合附图对根据本发明的实施例的用于信息处理的方法和系统进行了说明。本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Java、Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种用于多个小门户的调度方法,包括:
获取所述多个小门户的调用时间;
获取所述多个小门户的权重;
根据所述调用时间和权重将所述多个小门户组装至多个线程中,其中组装后的多个线程相互具有相近的线程调用时间,所述多个线程的每个线程中权重大的小门户将被优先执行,
其中根据所述调用时间和权重将所述多个小门户组装至多个线程中进一步包括:
根据所述权重将至少部分所述多个小门户分配到所述多个线程中;
其中根据所述权重将至少部分所述多个小门户分配到所述多个线程中进一步包括:
根据所述权重将所述多个小门户降序排列;
按照权重从大到小的顺序获取降序排列后的多个小门户中与所述多个线程数目相同的多个小门户;
将获取的多个小门户依次分配到所述多个线程中。
2.根据权利要求1的方法,其中:
所述调用时间是基于所述多个小门户的历史调用时间确定的。
3.根据权利要求1的方法,其中:
所述权重是根据所述多个小门户对客户端浏览器的用户的重要性确定的。
4.根据权利要求1的方法,进一步包括:
根据调用时间将剩余的小门户组装到所述多个线程中,以使组装后的多个线程相互具有相近的线程调用时间。
5.根据权利要求1的方法,进一步包括:
获取门户服务器和小门户容器之间的网络传输状况信息;
进一步根据所述网络传输状况信息将所述多个小门户组装至多个线程中。
6.一种用于多个小门户的调度系统,包括:
获取装置,配置为获取所述多个小门户的调用时间和权重;
组装装置,配置为根据所述调用时间和权重将所述多个小门户组装至多个线程中,其中组装后的多个线程相互具有相近的线程调用时间,所述多个线程的每个线程中权重大的小门户将被优先执行;
其中所述组装装置进一步配置为:
根据所述权重将至少部分所述多个小门户分配到所述多个线程中;
其中所述组装装置进一步配置为:
根据所述权重将所述多个小门户降序排列;
按照权重从大到小的顺序获取降序排列后的多个小门户中与所述多个线程数目相同的多个小门户;
将获取的多个小门户依次分配到所述多个线程中。
7.根据权利要求6的系统,其中:
所述调用时间是基于所述多个小门户的历史调用时间确定的。
8.根据权利要求6的系统,其中:
所述权重是根据所述多个小门户对客户端浏览器的用户的重要性确定的。
9.根据权利要求6的系统,其中所述组装装置进一步配置为:
根据调用时间将剩余的小门户组装到所述多个线程中,以使组装后的多个线程相互具有相近的线程调用时间。
10.根据权利要求6的系统,其中:
获取装置进一步配置为获取门户服务器和小门户容器之间的网络传输状况信息;
组装装置进一步配置为进一步根据所述网络传输状况信息将所述多个小门户组装至多个线程中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410229741.7A CN105224380B (zh) | 2014-05-28 | 2014-05-28 | 用于小门户调度的方法和系统 |
US14/721,285 US9871845B2 (en) | 2014-05-28 | 2015-05-26 | Portlet scheduling with improved loading time and loading efficiency |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410229741.7A CN105224380B (zh) | 2014-05-28 | 2014-05-28 | 用于小门户调度的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105224380A CN105224380A (zh) | 2016-01-06 |
CN105224380B true CN105224380B (zh) | 2018-10-02 |
Family
ID=54703171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410229741.7A Active CN105224380B (zh) | 2014-05-28 | 2014-05-28 | 用于小门户调度的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9871845B2 (zh) |
CN (1) | CN105224380B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103617222A (zh) * | 2013-11-22 | 2014-03-05 | 北京奇虎科技有限公司 | 一种网页中进行预下载的方法和浏览器 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7346843B2 (en) | 2001-09-18 | 2008-03-18 | International Business Machines Corporation | Low-latency, incremental rendering in a content framework |
US7313601B2 (en) * | 2002-03-28 | 2007-12-25 | International Business Machines Corporation | Adaptive control system and method for optimized invocation of portlets |
US8181112B2 (en) * | 2004-05-21 | 2012-05-15 | Oracle International Corporation | Independent portlet rendering |
US7475089B1 (en) | 2004-09-02 | 2009-01-06 | Sprint Spectrum L.P. | Enhanced portal server system and method |
US8782676B2 (en) | 2009-09-30 | 2014-07-15 | Sap Ag | System and method for communication between portal applications and portlet containers |
JP5887971B2 (ja) * | 2012-02-09 | 2016-03-16 | 日本電気株式会社 | ポートレット処理装置、ポータルサーバ、ポータルシステム、ポートレット処理方法、および、コンピュータ・プログラム |
JP2014038517A (ja) * | 2012-08-17 | 2014-02-27 | Nec Corp | コンテンツ提供装置およびコンテンツ提供方法、ポータルシステム、並びにコンピュータ・プログラム |
CN103258032A (zh) * | 2013-05-10 | 2013-08-21 | 清华大学 | 平行网页获取方法及装置 |
US9477526B2 (en) * | 2013-09-04 | 2016-10-25 | Nvidia Corporation | Cache utilization and eviction based on allocated priority tokens |
KR20150056373A (ko) * | 2013-11-15 | 2015-05-26 | 삼성전자주식회사 | 순차적 수행 방식의 멀티스레드 프로세싱 장치 및 방법 |
US10325001B2 (en) * | 2014-02-26 | 2019-06-18 | International Business Machines Corporation | Operating a portal environment |
-
2014
- 2014-05-28 CN CN201410229741.7A patent/CN105224380B/zh active Active
-
2015
- 2015-05-26 US US14/721,285 patent/US9871845B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103617222A (zh) * | 2013-11-22 | 2014-03-05 | 北京奇虎科技有限公司 | 一种网页中进行预下载的方法和浏览器 |
Also Published As
Publication number | Publication date |
---|---|
CN105224380A (zh) | 2016-01-06 |
US20150350293A1 (en) | 2015-12-03 |
US9871845B2 (en) | 2018-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106020940B (zh) | 用于确定数据集的放置的存储层级的方法和系统 | |
US11488064B2 (en) | Machine learning model for micro-service compliance requirements | |
CN107608747B (zh) | 表单系统的构建方法、装置、电子设备、存储介质 | |
US10102033B2 (en) | Method and system for performance ticket reduction | |
US9495196B2 (en) | Placing virtual machines in a virtual environment | |
US11074104B2 (en) | Quantum adaptive circuit dispatcher | |
US10055705B2 (en) | Just in time learning driven by point of sale or other data and metrics | |
CN109190754A (zh) | 量化模型生成方法、装置和电子设备 | |
JP2017111791A (ja) | シミュレートされたオペレータ・トレーニング・システムに対するクラウド・ベースのコンピューティング・クラスタのための方法、システムおよびコンピュータ・プログラム | |
US20160188355A1 (en) | Optimized migration of virtual objects across environments in a cloud computing environment | |
KR102555607B1 (ko) | 데이터 주석 방법, 장치, 기기, 저장매체 및 컴퓨터 프로그램 | |
CN113850394B (zh) | 联邦学习方法、装置、电子设备及存储介质 | |
CN111383100A (zh) | 基于风险模型的全生命周期管控方法和装置 | |
US11580270B2 (en) | Method and system for optimizing shipping methodology for 2-directional wall panels | |
CN112669852A (zh) | 内存分配方法、装置及电子设备 | |
US9244708B2 (en) | Enhanced java array | |
US20230177337A1 (en) | Multi-objective driven refactoring of a monolith application using reinforcement learning | |
CN106020793A (zh) | 应用于iOS平台应用开发过程中快速构建表单的方法 | |
CN114201156A (zh) | 接入方法、装置、电子设备及计算机存储介质 | |
US20220051116A1 (en) | Parallelized scoring for ensemble model | |
US20180123881A1 (en) | Dynamic Planning and Configuration Based on Inconsistent Supply | |
CN105224380B (zh) | 用于小门户调度的方法和系统 | |
CN113220452A (zh) | 资源分配方法、模型训练方法、装置和电子设备 | |
CN116911572A (zh) | 页面自动化装配方法、系统、计算机设备及存储介质 | |
JP2023545604A (ja) | ストリーミングrnnトランスデューサの精度 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |