Web并发事件处理方法及装置的制作方法

文档序号:7722027阅读:173来源:国知局
专利名称:Web并发事件处理方法及装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种TOB并发事件处理方法及装置。
背景技术
随着WEB(World Wide W^eb,万维网)应用规模的扩大,富TOB应用大量出现,富TOB 能够表现丰富的页面以及复杂的用户交互,且WEB应用中也大量引入了插件机制,分层机 制,由此可能出现多个隔离的模块同时向后台发出请求的情况。WEB 中 java 实现异步通讯常使用 AJAX (Asynchronous JavaScript andXML,异步 JavaScript和XML)技术。以AJAX的长轮询(long-polling)方式说明WEB页面更新用 户点击WEB页面时,通过TOB客户端Javakript调用XMLHttpRequest对象向TOB服务器 发出HTTP请求;Wra服务器会阻塞请求直到有数据传递或超时才返回给TOB客户端;TOB客 户端JavMcript响应处理函数根据TOB服务器返回的信息对WEB页面的显示进行更新,并 在处理后,再次发出HTTP请求,重新建立连接。如图1所示,TOB客户端中各个业务模块分 别自己向TOB服务器发起请求,当存在并发请求时,很容易导致阻塞。在实现本发明过程中,发明人发现现有技术中至少存在如下问题当WEB页面产生大量并发请求时,WEB客户端会产生阻塞,如果WEB客户端同时下 发并发请求,WEB服务器会缓存请求到队列中,容易由于阻塞而导致请求被挂起,或长时间 不返回,从而导致WEB页面显示不正确。WEB客户端每次请求都要重新建立链接,频繁的建 立链接导致严重的性能问题以及大量的资源占用。

发明内容
本发明的实施例提供了一种TOB并发事件处理方法及装置,以解决并发事件导致 的阻塞问题。本发明的实施例提供一种TOB并发事件处理方法,包括接收并存储请求事件;根据预定策略将所述请求事件打包成一个请求事件包发送给TOB服务器。本发明实施例还提供一种TOB并发事件处理装置,包括请求接收模块,用于接收请求事件;请求缓存池,用于存储所述接收到的请求事件;打包发送模块,用于根据预定策略将所述请求缓存池存储的请求事件打包成一个 请求事件包发送给WEB服务器。本发明的实施例还提供一种TOB并发事件处理方法,包括接收并存储对应WEB客户端发送的请求事件的返回值,所述返回值为返回事件;根据预定策略将所述返回事件打包成返回事件包并返回给所述TOB客户端。本发明的实施例还提供一种TOB并发事件处理装置,包括返回接收模块,用于接收至少一个对应TOB客户端发送的请求事件的返回值,所
4述返回值为返回事件;返回值缓存池,用于存储所述接收到的返回事件;打包发送模块,用于根据预定策略将所述返回事件打包成返回事件包并返回给所 述TOB客户端。由上述本发明的实施例提供的技术方案可以看出,当TOB客户端产生大量并发请 求时,通过对并发请求进行打包后发送,将原来每个请求都直接访问WEB服务器,每个请求 都向操作系统申请资源和时间的方式,改为将多个请求打包,汇聚为一个请求事件包后发 送给TOB服务器,由此减少了 TOB客户端对TOB服务器的访问量,相应的也减少了对相关系 统资源和时间的占用,从而减少了由于大量并发请求导致的阻塞问题。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。图1为现有技术中并发事件处理示意图;图2为本发明一实施例TOB并发事件处理方法流程示意图;图3为本发明另一实施例WEB并发事件处理方法流程示意图;图4为本发明另一实施例WEB并发事件处理方法流程示意图;图5为本发明一实施例TOB并发事件处理装置构成示意图;图6为本发明另一实施例WEB并发事件处理方法流程示意图;图7为本发明另一实施例WEB并发事件处理装置构成示意图;图8为本发明一实施例TOB并发事件处理方法中WEB通信模块应用场景示意图;图9为本发明实施例另一 WEB并发事件处理方法中服务器通信模块应用场景示意 图;图10为本发明实施例另一 WEB并发事件处理方法中WEB通信模块应用场景示意 图;图11为本发明实施例另一 TOB并发事件处理方法中服务器通信模块应用场景示 意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。实施例一如图2所示,本发明实施例提供一种WEB并发事件处理方法,包括21、接收并存储请求事件。22、根据预定策略将所述请求事件打包成一个请求事件包发送给TOB服务器。
本发明实施例TOB并发事件处理方法的执行主体可以是通信模块,请求为HTTP请 求,通信模块可以与WEB客户端设置为一体,以下称为WEB通信模块。在步骤21中,可以由WEB客户端中的功能实体发起请求,可以是一个功能实体发 出多个请求,或者多个功能实体分别发出请求,对应的,WEB通信模块接收至少一个请求。功 能实体可以理解为实现某种功能或业务的模块或代码,如WEB页面中获取TOB服务器时间 的模块。 WEB通信模块可以将接收到的请求事件存储在请求缓存池中。可选的,请求缓存池 为多个时,可以根据请求事件的优先级、请求事件的时间间隔、请求事件的数量或请求的大 小等等划分请求缓存池,不受限制。如,根据请求事件的优先级,将请求缓存池划分为不同 优先级,用于存储不同优先级的请求事件。可选的,请求缓存池内的请求事件超过缓存池上限时,可以根据预定策略进行溢 出处理。预定策略可以包括抛弃最老的事件,抛弃优先级最低的事件等。在步骤22中,WEB通信模块根据预定策略将请求事件打包并发送给WEB服务器。 预定策略可以包括请求事件的优先级、请求事件的时间间隔、请求事件的数量或请求事件 的大小中的至少一个。并且,所述预定策略可以配置,可以实现按照用户的需求来打包。例 如预定策略为请求事件的时间间隔和请求事件的数量,如每隔2秒获取一定数目的请求事 件打包并发送给WEB服务器,或者,每隔4秒获取一定数目的请求事件打包并发送给WEB服 务器。配合多个请求缓存池的划分,可以更佳的根据预定策略获取需要打包的请求事件。WEB通信模块可以接收至少一个请求事件,当只有一个请求事件时,WEB通信模块 也将请求事件打包,这样实现上的处理逻辑单一、统一,不需要做特殊处理。可见,本发明实施例TOB并发事件处理方法,通过将WEB客户端对TOB服务器的调 用请求进行了汇聚、打包后发送给WEB服务器,将原来每个请求都直接访问WEB服务器,每 个请求都向操作系统申请资源和时间的方式,改为将多个请求打包,汇聚为一个请求事件 包后发送给WEB服务器,由此减少了 TOB客户端对TOB服务器的访问量,相应的也减少了对 相关系统资源和时间的占用,从而可以减少由于大量并发请求导致的阻塞问题,且不需要 WEB服务器特别的支持。可选的,本发明实施例TOB并发事件处理方法中,WEB客户端中的功能实体发起的 请求事件包括订阅请求事件时,可以为用户提供订阅业务,如图3所示,所述接收并存储请 求事件包括可以包括31、接收订阅请求事件及其对应的订阅策略。32、根据订阅策略复制并存储订阅请求事件。根据预定策略将所述请求事件打包成一个请求事件包发送给TOB服务器包括33、根据预定策略将订阅请求事件与请求事件打成一个请求事件包发送给TOB服 务器。步骤31中,TOB通信模块接收某功能实体发送的订阅请求事件及其对应的订阅策 略。订阅策略可以包括WEB通信模块复制并存储订阅请求事件的时间间隔。实现功能实体 不需要反复发送订阅请求事件,由WEB通信模块按照时间间隔复制并存储订阅请求事件。 订阅策略包括WEB通信模块复制并存储订阅请求事件的时间间隔之外,还可以包括订阅请 求事件的优先级,等等,不受限制。
6
步骤32中,TOB通信模块根据订阅策略复制并存储订阅请求事件。如,WEB页面中 某一个业务模块要定时获取WEB服务器的时间,那么该业务模块就可以向WEB通讯模块发 送订阅请求事件,订阅请求事件为获取WEB服务器时间,订阅策略为复制并存储订阅请 求事件的时间间隔为2秒钟,则TOB通讯模块按照订阅策略,每隔2秒将订阅请求事件复制 一份,存储到请求缓存池中。这样,功能实体不需要反复发送订阅请求事件。如果订阅策略 还包括订阅请求事件的优先级,则订阅请求事件可以被复制存储在对应优先级的请求缓存 池中。步骤33中,WEB通讯模块可以根据上述打成一个请求事件包的预定策略,将订阅 请求事件与请求事件一同打成一个请求事件包发送给WEB服务器。当然,可以也将订阅请 求事件打成一个请求事件包发送给WEB服务器。由TOB通信模块实现反复发送订阅请求事 件。进一步,在WEB通讯模块向TOB服务器发送请求事件包(包括订阅请求事件)之 后,作为请求的返回值,WEB通讯模块可以从TOB服务器获取返回事件,具体可以如以下2种 方式。方式(1)、WEB通讯模块将请求事件打包成一个请求事件包发送给WEB服务器后, 获取WEB服务器生成的返回事件包,对返回事件包进行解包得到请求事件对应的返回值。可见,WEB通讯模块向TOB服务器发送打包请求后,作为请求的返回值,WEB通讯模 块可以从WEB服务器获取请求事件对应的返回值。或者,方式O)、如图4所示,包括41, WEB通讯模块发送获取返回事件包的请求给WEB服务器。42,WEB通讯模块获取WEB服务器生成的对应请求事件的返回事件包,对返回事件 包进行解包得到请求事件对应的返回值。可见,WEB通讯模块可以主动向WEB服务器发起一个请求以获取返回事件包,实现 WEB通信模块从TOB服务器获取返回值。本发明实施例TOB并发事件处理方法,避免WEB通讯模块将汇聚的请求发给WEB 服务器后,等待汇聚包中所有的请求都完成才返回,以避免可能长时间的占用链接,导致新 的阻塞。可选的,本发明实施例TOB并发事件处理方法,在对返回事件包进行解包得到返 回事件之后,还可以包括将返回事件存储在至少一个返回值缓存池中。从返回值缓冲池中获取返回事件,分发给TOB客户端的相应功能实体。相应功能实体可以理解为TOB客户端中发起请求的功能实体。可选的,返回值缓存池内的返回事件超过缓存池上限时,可以根据预定策略进行 溢出处理。预定策略可以包括抛弃最老的事件,抛弃优先级最低的事件,等等,不受限制。由上述本发明的实施例提供的技术方案可以看出,当TOB客户端产生大量并发请 求时,通过对并发请求进行汇聚、打包后发送给WEB服务器,将原来每个请求都直接访问 WEB服务器,每个请求都向操作系统申请资源和时间的方式,改为将多个请求打包,汇聚为 一个请求事件包后发送给WEB服务器,由此减少了 TOB客户端对TOB服务器的访问量,相 应的也减少了对相关系统资源和时间的占用,从而减少了由于大量并发请求导致的阻塞问题。实施例二对应于上述实施例提供的TOB并发事件处理方法,如图5所示,本发明实施例提供 一种WEB并发事件处理装置,包括请求接收模块51,用于接收请求事件。请求缓存池52,用于存储接收到的请求事件。打包发送模块53,用于根据预定策略将存储在请求缓存池52中的请求事件打包 并发送给WEB服务器。可选的,预定策略可以包括请求事件的优先级、请求事件的时间间隔、请求事件 的数量或请求事件的大小中的至少一个,并且,预定策略可以配置,可以实现按照用户的需 求来打包。如预定策略为请求事件的时间间隔和请求事件的数量,如每隔2秒获取一定数 目的请求事件打包并发送给WEB服务器,或者,每隔4秒获取一定数目的请求事件打包并发 送给WEB服务器。可选的,本发明实施例TOB并发事件处理装置,还可以包括请求缓存池划分模块,用于请求缓存池52为多个时,根据请求事件的优先级、请 求事件的时间间隔、请求事件的数量或请求的大小等等划分请求缓存池52。溢出处理模块,用于请求缓存池52内的请求事件超过缓存池上限时,可以根据预 定策略进行溢出处理。预定策略可以包括抛弃最老的事件,抛弃优先级最低的事件,等等, 不受限制。可选的,对应于上述实施例提供的TOB并发事件处理方法中,请求事件包括订阅 请求事件时,请求接收模块51,还用于接收订阅请求事件及其对应的订阅策略;TOB通讯模 块还可以包括复制模块,用于根据订阅策略复制订阅请求事件,此时,请求缓存池52,还 用于存储所述订阅请求事件;打包发送模块53,还用于根据预定策略将订阅请求事件与请 求事件一同打打成一个请求事件包发送给WEB服务器。订阅策略可以包括TOB通讯模块复制存储订阅请求事件的时间间隔,以及订阅请 求事件的优先级,等等,不受限制。根据订阅请求事件的优先级,将订阅请求事件存储在对 应优先级的请求缓存池52中。可选的,对应于上述实施例提供的TOB并发事件处理方法中,WEB通讯模块向TOB 服务器发送打包请求后,作为请求的返回值,WEB通讯模块可以从TOB服务器获取返回事件 的方式(1),本发明实施例WEB并发事件处理装置,还可以包括返回接收模块,用于根据预定策略将存储在请求缓存池52中的请求事件打包并 发送给WEB服务器后,获取WEB服务器生成的对应请求事件的返回事件包,对返回事件包进 行解包得到请求事件对应的返回值。或者,对应于上述实施例提供的TOB并发事件处理方法中,在WEB通讯模块向TOB 服务器发送打包请求后,WEB通讯模块可以主动向TOB服务器发起一个请求以获取返回事 件包的方式O),本发明实施例WEB并发事件处理装置,还可以包括发送模块,用于发送获取返回事件包的请求给WEB服务器。返回接收模块,用于获取TOB服务器生成的对应请求事件的返回事件包,对返回 事件包进行解包得到请求事件对应的返回值。
可选的,本发明实施例TOB并发事件处理装置,还可以包括返回值缓存池,用于存储返回接收模块解包得到的返回事件。返回值分发模块,用于从返回值缓冲池中获取返回事件,分发给TOB客户端的相 应功能实体。溢出处理模块,用于返回值缓存池内的返回事件超过缓存池上限时,根据预定策 略进行溢出处理。预定策略包括抛弃最老的事件,抛弃优先级最低的事件,等等,不受限 制。由上述本发明的实施例提供的技术方案可以看出,当TOB页面产生大量并发请求 时,通过对并发请求进行汇聚、打包后发送给WEB服务器,减少了由于大量并发请求导致的 阻塞问题。而且,减少了并发请求创建链接所占用的资源和时间。实施例三本发明实施例提供一种TOB客户端,其包括上述实施例二提供的WEB并发事件处
理装置。WEB客户端中的功能实体发起请求,WEB并发事件处理装置接收请求事件,WEB并 发事件处理装置根据预定策略将请求事件打包成一个请求事件包并发送给WEB服务器。以 及,WEB并发事件处理装置获取WEB服务器生成的返回事件包,对返回事件包进行解包得到 请求事件对应的返回值,所述返回值对应WEB客户端发送的请求事件,WEB并发事件处理装 置发送返回值给WEB客户端中的功能实体。由上述本发明的实施例提供的技术方案可以看出,当TOB客户端产生大量并发请 求时,通过对并发请求进行汇聚、打包后发送给WEB服务器,将原来每个请求都直接访问 WEB服务器,每个请求都向操作系统申请资源和时间的方式,改为将多个请求打包,汇聚为 一个请求事件包后发送给WEB服务器,由此减少了 TOB客户端对TOB服务器的访问量,相 应的也减少了对相关系统资源和时间的占用,从而减少了由于大量并发请求导致的阻塞问 题。实施例四如图6所示,本发明实施例提供一种WEB并发事件处理方法,包括61、接收并存储对应TOB客户端发送的请求事件的返回值,所述返回值为返回事 件。62、根据预定策略将返回事件打包成返回事件包并返回给TOB客户端。本发明实施例TOB并发事件处理方法的执行主体可以是通信模块,请求为HTTP请 求,通信模块可以与WEB服务器设置为一体,以下称为服务器通信模块。WEB客户端可以理 解为包含WEB通讯模块。在步骤61中,Wra服务器的功能实体处理TOB客户端发送来的请求,并生成返回 值,所述返回值为返回事件,服务器通信模块接收并存储所述返回事件。服务器通信模块可 以将接收到的返回事件存储在返回值缓存池中。返回值缓存池为多个时,可以根据返回事 件的优先级、返回事件的时间间隔、返回事件的数量或返回事件的大小为所述返回事件划 分返回值缓存池。返回值缓存池内的返回事件超过缓存池上限时,可以根据预定策略进行溢出处 理。预定策略包括抛弃最老的事件,抛弃优先级最低的事件,等等,不受限制。
在步骤62中,服务器通信模 块根据预定策略将返回事件打包成返回事件包并返 回给TOB客户端。可见,当TOB服务器产生大量返回事件时,通过对返回事件进行汇聚、打包后返 回,避免导致阻塞问题。服务器通信模块的预定策略可以包括返回事件的优先级、返回事件的时间间隔、 返回事件的数量或返回事件的大小中的,等等,不受限制。对应于上述实施例一、三中,WEB通讯模块向TOB服务器发送请求事件包,本发明 实施例TOB并发事件处理方法,还可以包括接收TOB客户端发送的请求事件包,解包得到请求事件。将解包得到的请求事件存储在请求缓存池中。也就是,服务器通信模块接收TOB通讯模块发送的请求事件包,通过解包可以得 到请求事件,可以将解包得到的请求事件存储在请求缓存池,服务器通信模块可以发送请 求事件给WEB服务器中相应的功能实体。进而,功能实体处理WEB客户端发送来的请求事 件,生成并存储请求事件对应的返回事件,服务器通信模块根据预定策略将返回事件打包 成返回事件包并返回给WEB客户端。如果,TOB客户端向服务器通信模块订阅后台事件,订阅请求事件为获取TOB服 务器时间,订阅策略为每隔2秒钟,服务器通信模块可以接收WEB客户端发送的包含订阅 请求事件的包,解包得到订阅请求事件。服务器通信模块生成并存储订阅请求事件对应的 返回事件,服务器通信模块根据预定策略将返回事件打包成返回事件包并返回给WEB客户端。可选的,请求缓存池内的请求事件超过缓存池上限时,可以根据预定策略进行溢 出处理。预定策略包括抛弃最老的事件,抛弃优先级最低的事件,等等,不受限制。服务器通信模块接收到TOB客户端发送的请求事件包后,可以通过如下2种方式 中的任一种实现返回请求事件对应的返回值。方式(1)、服务器通讯模块接收到TOB客户端发送的请求事件包后,服务器通信模 块根据预定策略将返回事件打包成返回事件包并返回给WEB客户端。此方式下,服务器通讯模块准备返回事件包的时机为由WEB客户端发送的请求 事件包到达时,服务器通信模块才生成返回事件包。方式(2)、服务器通信模块接收WEB客户端发送的获取返回事件包的请求;服务器 通信模块根据预定策略将返回事件打包成返回事件包并返回给WEB客户端。可见,本发明实施例提供一种TOB并发事件处理方法,在TOB客户端块将汇聚的请 求发给WEB服务器后,不需要等待汇聚包中所有的请求都完成才返回,以避免可能长时间 的占用链接,导致新的阻塞。此方式下,TOB客户端主动向服务器通信模块发起一个请求以获取返回事件包,月艮 务器通讯模块准备返回事件包的时机为由WEB客户端获取返回事件包的请求到达时,月艮 务器通信模块才生成返回事件包。或者,上述2种方式中,服务器通讯模块准备返回事件包的时机可以为服务器通 讯模块接收并存储功能实体发送的返回事件之后,就按预定策略将返回事件打包,待接收 到TOB客户端发送的获取返回事件包的请求或接收到WEB客户端发送的请求事件包时,直接将返回事件包 交给所述WEB客户端返回。如果,TOB客户端向服务器通信模块订阅后台事件,订阅请求事件为获取TOB服 务器时间,订阅策略为每隔2秒钟,WEB客户端可以不断的从服务器通信模块获取订阅请 求事件的返回值。由上述本发明的实施例提供的技术方案可以看出,当TOB服务器产生大量并发返 回事件时,通过对并发返回事件进行汇聚、打包后返回给WEB客户端,避免了原来每个请求 的返回值都单独返回,相应的也减少了对相关系统资源和时间的占用,从而减少了由于大 量并发返回事件导致的阻塞等问题。实施例五对应于上述实施例提供的TOB并发事件处理方法,本发明实施例提供一种WEB并 发事件处理装置,如图7所示,包括返回接收模块71,用于接收对应TOB客户端发送的请求事件的返回值,所述返回 值为返回事件。返回值缓存池72,用于存储所述接收到的返回事件。打包发送模块73,用于根据预定策略将所述返回事件打包成返回事件包并返回给 WEB客户端。上述预定策略可以包括返回事件的优先级、返回事件的时间间隔、返回事件的数 量或返回事件的大小中的至少一个,等等,不受限制。可见,当WEB服务器产生大量返回事件时,通过对返回事件进行汇聚、打包后返回 给TOB客户端,减少了由于大量并发请求导致的阻塞问题。本发明实施例TOB并发事件处理装置,还可以包括请求接收模块,用于接收TOB客户端发送的请求事件包,解包得到请求事件。请求缓存池,用于存储所述请求接收模块解包后得到请求事件。溢出处理模块,用于所述请求缓存池内的请求事件超过缓存池上限时,根据预定 策略进行溢出处理。预定策略可以包括抛弃最老的事件,抛弃优先级最低的事件,等等,不 受限制。上述请求接收模块,还用于接收TOB客户端发送的请求事件及订阅请求事件的 包。对应于上述实施例四中,服务器通信模块接收到TOB客户端发送的请求事件包 后,返回TOB客户端发送的请求事件的返回值的方式(1),请求接收模块接收到WEB客户端 发送的请求事件包,打包发送模块73根据预定策略将所述返回事件打包成返回事件包并 返回给TOB客户端。对应上述实施例四中,服务器通信模块接收到TOB客户端发送的获取返回事件包 的请求后,返回WEB客户端发送的请求事件的返回值的方式(2),本发明实施例TOB并发事 件处理装置,还可以包括接收模块,用于接收WEB客户端发送的获取返回事件包的请求。此时,返回接收模块71接收并存储返回事件之后,接收模块接收WEB客户端发送 的获取返回事件包的请求,打包发送模块73根据预定策略将所述返回事件打包成返回事 件包并返回给WEB客户端。
对应上述实施例四中,服务器通信模块准备返回事件包的时机,打包发送模块73, 可以包括打包模块及发送模块打包模块用于根据预定策略将返回事件打包成返回事件包。发送模块用于接收到TOB客户端发送的获取返回事件包的请求或接收到WEB客户端发送的请求事件包,将返回事件包返回给WEB客户端,在此不再赘述。本发明实施例TOB并发事件处理装置述,还可以包括返回值缓存池划分模块,用于返回值缓存池72为多个时,根据返回事件的优先 级、返回事件的时间间隔、返回事件的数量或返回事件的大小划分返回值缓存池72。溢出处理模块,用于返回值缓存池72内的返回事件超过缓存池上限时,根据预定 策略进行溢出处理。预定策略可以包括抛弃最老的事件,抛弃优先级最低的事件,等等,不 受限制。由上述本发明的实施例提供的技术方案可以看出,当TOB服务器产生大量并发返 回事件时,通过对并发返回事件进行汇聚、打包后返回给WEB客户端,避免了原来每个请求 的返回值都单独返回,相应的也减少了对相关系统资源和时间的占用,从而减少了由于大 量并发返回事件导致的阻塞等问题。实施例六本发明实施例提供一种TOB服务器,其至少包括上述实施例五提供的WEB并发事 件处理装置。WEB服务器,接收TOB客户端发送的请求事件包,解包得到请求事件,并发送请求 事件给WEB服务器中相应的功能实体;以及,WEB服务器,接收并存储WEB服务器中功能实 体发送的请求事件的返回事件,将返回事件打包成一个返回事件包,WEB客户端从TOB服务 器获取返回事件包进而得到请求事件的返回值。由上述本发明的实施例提供的技术方案可以看出,当TOB服务器产生大量并发返 回事件时,通过对并发返回事件进行汇聚、打包后返回给WEB客户端,避免了原来每个请求 的返回值都单独返回,相应的也减少了对相关系统资源和时间的占用,从而减少了由于大 量并发返回事件导致的阻塞等问题。实施例七本发明实施例提供一种TOB并发事件处理系统,其包括上述实施例的WEB客户端 以及WEB服务器。由上述本发明的实施例提供的技术方案可以看出,当TOB客户端产生大量并发请 求时,通过对并发请求进行汇聚、打包后发送给WEB服务器,减少了由于大量并发请求导致 的阻塞问题。而且,减少了并发请求创建链接所占用的资源和时间。WEB通讯模块、服务器 通讯模块可以视为通讯层,WEB客户端业务层向通讯层注册事件,由通讯层统一按一定策略 到WEB服务器上将事件取回,不占用长连接,也不需要服务器特别的支持。
具体实施方式
一结合WEB通讯模块以及服务器通讯模块,说明本发明实施例WEB并发事件处理方 法的具体流程。本发明实施例TOB通讯模块可以包括发送部分以及接收部分。发送部分可以包括
1、请求接收模块负责接收TOB页面中功能实体发出的原始请求,主要包含如下 的接口 DpackRequest 汇聚原始请求的接口,当WEB客户端的功能实体需要将发出的原 始请求汇聚时,调用此接口。该接口接收到原始请求后调用请求缓冲池的PushEvent方法, 将原始请求放到WEB通讯模块中的缓冲池中,之后根据打包发送模块的策略,将原始请求 打包后发往服务器通讯模块。2) subscribeEvent 订阅后台事件的接口,当WEB客户端的功能实体需要订阅后 台事件时调用此接口,将订阅请求及其对应的订阅策略(例如每隔2秒)提交给请求接收 模块,请求接收模块接收到订阅请求后,按订阅策略(例如每隔2秒)反复将订阅请求放到 WEB通讯模块中的请求缓冲池中(调用请求缓冲池的pushEvent方法),之后根据打包发送 模块的策略,将订阅请求事件和其它的原始请求事件一起打包后发往服务器通讯模块。2、请求缓冲池负责存储请求接收模块接收到的原始请求,可以包括如下接口 DpushEvent 将原始请求事件放到缓冲池中。2)popEvent 从缓冲池中取出原始请求事件。3) size 获取缓冲池中的原始请求事件数目。4) clear 缓冲池的清理方法。3、打包发送模块按一定策略从请求缓冲池中获取原始请求(调用请求缓冲池的 PopEvent方法),打包,并发往TOB服务器,可以包括如下的接口或方法DpackEvent 将一个或多个原始请求打包为一个包。2) sendRequest 向服务器通讯模块发送打包后的原始请求。接收部分可以包括1、返回接收模块负责发起请求,作为请求的返回值,返回值可以理解为返回事 件,以从服务器通讯模块取回请求的返回事件包,并解包得到原始的返回事件,之后调用返 回值缓冲池的pushEvent方法,将返回事件放到返回值缓冲池中,可以包括如下接口或方 法DgetEventFromServer 从服务器通讯模块取回返回事件包。2)unPackEvent 将返回事件包解开,得到原始的返回事件。2、返回值缓冲池负责存储返回接收模块解包后的返回事件,可以包括如下接 Π DpushEvent 将返回事件放到缓冲池中。2)popEvent 从缓冲池中取出返回事件。3) size 获取缓冲池中的返回事件数目。4) clear 缓冲池的清理方法。3、返回值分发模块从返回值缓冲池中获取返回事件(调用返回值缓冲池 popEvent接口)并分发,可以包括如下的接口或方法DdispatchEvent 将事件分发给接收者。本发明实施例服务器通讯模块可以包括发送部分以及接收部分。对应于WEB通讯模块的发送部分,服务器通讯模块的接收部分可以包括 1、请求接收模块负责接收TOB通讯模块发来的请求并解包,得到原始请求事件,之后调用请求缓冲池的pushEvent接口,将原始请求事件放到请求缓冲池中,可以包括如 下接口或方法DprocessReq uest 负责接收WEB通讯模块发来的请求。2)unPackEvent 将TOB通讯模块发来的经过打包的事件解包,得到原始请求事 件。2、请求缓冲池负责存储请求接收模块解包后的原始请求,可以包括如下接口 DpushEvent 将原始请求事件放到缓冲池中。2)popEvent 从缓冲池中取出原始请求事件。3) size 获取缓冲池中的原始请求事件数目。4) clear 缓冲池的清理方法。3、请求分发模块从请求缓冲池中获取原始请求。(调用请求缓冲池popEvent接 口)并分发。可以包括如下的接口或方法DdispatchRequest 将原始请求分发给接收者。对应于TOB通讯模块的接收部分,服务器通讯模块的发送部分可以包括1、返回接收模块负责接收Server中功能实体发出的返回事件,可以包括如下的 接口 DpushReturnValue 发送返回事件的接口,当Server中的功能实体需要将返回 事件发送给WEB客户端时,调用该接口。该接口调用服务器通讯模块中的返回值缓冲池中 的pushEvent将接收到的返回事件放到返回值缓冲池中,之后根据服务器通讯模块中的打 包发送模块的策略打包,当WEB通讯模块请求时交给WEB通讯模块。2、返回值缓冲池负责存储接口模块接收到的返回事件,可以包括如下接口 DpushEvent 将返回事件放到缓冲池中。2)popEvent 从缓冲池中取出返回事件。3) size 获取缓冲池中的返回事件数目。4) clear 缓冲池的清理方法。3、打包发送模块按一定策略从缓冲池中获取返回事件(调用请求缓冲池 popEvent接口),打包,当WEB通讯模块请求时将打包后的返回事件交给WEB通讯模块。可 以包括如下接口DgetEvent 将多个返回事件打包成一个单一的包。如图8所示,当TOB客户端中的功能实体发起请求时WEB通讯模块中的请求接收模块中的packRequest接口接收到TOB客户端中功能 实体的请求后,将请求放到请求缓冲池中(调用请求缓冲池pushEvent接口),打包发送模 块按一定策略从请求缓冲池中根据请求的优先级获取一定数目的请求(调用请求缓冲池 popEvent接口,获取事件的数目可配置),之后调用packEvent接口,将这些请求打包后通 过sendRequest接口,调用服务器通讯模块中请求接收模块的processRequest接口,一次 发往服务器通讯模块。如图9所示,服务器通讯模块的请求接收模块的processRequest接口来接收TOB 通讯模块侧发来的被打包过的请求,该请求接收模块将WEB通讯模块的请求解包后(调用 imPackEvent接口),得到原始请求,并将原始请求放到请求缓冲池中(调用请求缓冲池的pushEvent接口),请求分发模块从请求缓冲池中获取请求(调用请求缓冲池的popEvent 接口),分发给请求接收者(调用dispatchRequest接口)。由上述本发明的实施例提供的技术方案可以看出,其由于将TOB客户端对TOB服 务器的调用进行了汇聚,打包,由此减少了由于大量并发请求导致的阻塞问题,减少了并发 请求创建链接所占用的资源和时间。而且,区别于“Comet”技术,"Comet"技术实现TOB服务器主动向TOB客户端推送 事件的模式,其需要占用长链接,或是需要WEB服务器特别的支持。本发明实施例提供的技 术方案,可以实现WEB客户端推模式WEB通讯模块、服务器通讯模块可以视为通讯层,WEB 客户端业务层向通讯层注册事件,由通讯层统一按一定策略到服务器上将事件取回,不占 用长连接,也不需要服务器特别的支持。由于调用都是WEB客户端发起的,如果请求失败, 可以方便的处理(如重新发起请求,等等),从而保证请求事件不丢失。当然本发明也可以 模拟实现WEB服务器推送数据。
具体实施方式
二结合WEB通讯模块以及服务器通讯模块,说明本发明实施例WEB并发事件处理方 法的具体流程。TOB通讯模块以及服务器通讯模块,可以参考上述具体实施方式
一,在此不作赘 述。如图10所示,当TOB客户端中的功能实体发起的请求返回时WEB服务器中的功能实体先把返回事件发给服务器通讯模块的请求接收模块中的 pushReturnValue接口,该pushReturnValue接口将返回事件放到返回值缓冲池中(调用返 回值缓冲池的pushEvent接口),当TOB通讯模块请求返回事件包时,打包发送模块按一定 策略从返回值缓冲池中获得返回事件(调用返回值缓冲池的pushEvent接口)并打包,通 过getEvent方法一次交给TOB通讯模块返回。或者,TOB通讯模块主动向服务器通讯模块 发起一个特殊的请求(通过getEventFromServer发起)获取返回事件包,调用服务器通讯 模块打包发送模块的getEvent接口,将返回事件包取回。如图11所示,WEB通讯模块在获取返回事件包后,将获取到的返回事件包交给返 回接收模块,该返回接收模块将请求事件包解包后(调用unPackEvent接口),得到返回 事件,并将返回事件放到返回值缓冲池中(调用返回值缓冲池的pushEvent接口),返回值 分发模块从返回值缓冲池中获取返回事件(调用返回值缓冲池的popEvent接口),通过 dispatchEvent接口,将返回事件分发给接收者。由上述本发明的实施例提供的技术方案可以看出,其由于将TOB客户端对TOB服务器的调用进行了汇聚,打包,由此减少了由于大量并发请求导致的阻塞问题,减少了并发 请求创建链接所占用的资源和时间。实现WEB客户端推模式TOB通讯模块、服务器通讯模块可以视为通讯层,WEB客户 端业务层向通讯层注册事件,由通讯层统一按一定策略到服务器上将事件取回,不占用长 连接,也不需要服务器特别的支持。由于调用都是WEB客户端发起的,如果请求失败,可以 方便的处理(如重新发起请求,等等),从而保证请求事件不丢失。当然本发明也可以模拟 实现WEB服务器推送数据。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为 依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知 悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明 所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部 分,可以参见其他实施例的相关描述。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。

以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围 为准。
权利要求
1.一种TOB并发事件处理方法,其特征在于,包括 接收并存储请求事件;根据预定策略将所述请求事件打包成一个请求事件包发送给WEB服务器。
2.根据权利要求1所述的WEB并发事件处理方法,其特征在于,所述请求事件包括订阅 请求事件,所述接收并存储请求事件包括接收订阅请求事件及其对应的订阅策略; 根据所述订阅策略复制并存储所述订阅请求事件;根据预定策略将所述请求事件打包成一个请求事件包发送给WEB服务器包括 根据预定策略将所述订阅请求事件与所述请求事件打成一个请求事件包发送给WEB 服务器。
3.根据权利要求1或2所述的TOB并发事件处理方法,其特征在于,所述预定策略包 括请求事件的优先级、请求事件的时间间隔、请求事件的数量或请求事件的大小中的至少一个。
4.根据权利要求1或2所述的TOB并发事件处理方法,其特征在于,所述方法还包括 将所述请求事件打包成一个请求事件包发送给WEB服务器后,获取所述WEB服务器生成的对应请求事件的返回事件包,对所述返回事件包进行解包得到请求事件对应的返回 值;或者,发送获取返回事件包的请求给所述WEB服务器,所述获取返回事件包的请求用 以指示所述WEB服务器返回对应请求事件的返回事件包;获取所述WEB服务器生成的对应请求事件的返回事件包,对所述返回事件包进行解包 得到请求事件对应的返回值。
5.一种TOB并发事件处理装置,其特征在于,包括 请求接收模块,用于接收请求事件;请求缓存池,用于存储所述接收到的请求事件;打包发送模块,用于根据预定策略将所述请求事件打包成一个请求事件包发送给WEB 服务器。
6.根据权利要求5所述的TOB并发事件处理装置,其特征在于,所述请求事件包括订 阅请求事件时,所述请求接收模块,还用于接收订阅请求事件及其对应的订阅策略,此时, 所述装置还包括复制模块,用于根据所述订阅策略复制所述订阅请求事件,所述请求缓存 池,还用于存储所述订阅请求事件,所述打包发送模块,还用于根据预定策略将所述订阅请 求事件与所述请求事件打成一个请求事件包发送给WEB服务器。
7.根据权利要求5或6所述的TOB并发事件处理装置,其特征在于,所述预定策略包 括请求事件的优先级、请求事件的时间间隔、请求事件的数量或请求事件的大小中的至少 一个。
8.根据权利要求5或6所述的TOB并发事件处理装置,其特征在于,所述装置还包括 发送模块,用于发送获取返回事件包的请求给所述WEB服务器,所述获取返回事件包的请求用以指示所述WEB服务器返回对应请求事件的返回事件包;返回接收模块,用于获取所述WEB服务器生成的对应请求事件的返回事件包,对所述 返回事件包进行解包得到请求事件对应的返回值。
9.一种TOB并发事件处理方法,其特征在于,包括接收并存储对应WEB客户端发送的请求事件的返回值,所述返回值为返回事件;根据预定策略将所述返回事件打包成返回事件包并返回给WEB客户端。
10.根据权利要求9所述的TOB并发事件处理方法,其特征在于,所述预定策略包括 返回事件的优先级、返回事件的时间间隔、返回事件的数量或返回事件的大小中的至少一 个。
11.根据权利要求9或10所述的TOB并发事件处理方法,其特征在于,所述根据预定策 略将所述返回事件打包成返回事件包并发送给WEB客户端,包括当接收到所述WEB客户端发送的请求事件包,根据预定策略将所述返回事件打包成返 回事件包并返回给所述WEB客户端;或者,当接收到所述WEB客户端发送的获取返回事件包的请求,根据预定策略将所述 返回事件打包成返回事件包并返回给所述WEB客户端。
12.—种WEB并发事件处理装置,其特征在于,包括返回接收模块,用于接收至少一个对应WEB客户端发送的请求事件的返回值,所述返 回值为返回事件;返回值缓存池,用于存储所述接收到的返回事件;打包发送模块,用于根据预定策略将所述返回事件打包成返回事件包并返回给WEB客户端。
13.根据权利要求12所述的TOB并发事件处理装置,其特征在于,所述预定策略包括 返回事件的优先级、返回事件的时间间隔、返回事件的数量或返回事件的大小中的至少一 个。
14.根据权利要求12或13所述的TOB并发事件处理装置,其特征在于,还包括接收模 块,用于接收所述WEB客户端发送的获取返回事件包的请求,所述获取返回事件包的请求 用以指示所述WEB服务器返回对应请求事件的返回事件包,所述打包发送模块在接收到所 述TOB客户端发送的获取返回事件包的请求,根据预定策略将所述返回事件打包成返回事 件包并返回给所述WEB客户端。
全文摘要
本发明实施例涉及一种WEB并发事件处理方法及装置。其中,一种WEB并发事件处理方法,包括接收并存储请求事件;根据预定策略将所述请求事件打包成一个请求事件包发送给WEB服务器。当WEB页面产生大量并发请求时,通过对并发请求进行汇聚、打包后发送WEB服务器,减少了由于大量并发请求导致的阻塞问题。
文档编号H04L29/06GK102088398SQ20091025206
公开日2011年6月8日 申请日期2009年12月8日 优先权日2009年12月8日
发明者马贵 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1