Web轮询方法、装置及系统的制作方法

文档序号:7550016阅读:324来源:国知局
专利名称:Web轮询方法、装置及系统的制作方法
技术领域
本发明涉及通信领域,具体涉及一种Web轮询方法、装置及系统。
背景技术
网络(Web)轮询是指在互联网中,客户端通过HTTP (HTTP-Hypertext transferprotocol,超文本传输协议)的方式,周期性的访问服务端,以获取新数据。因为HTTP本质上是无状态的,所以客户端和服务端的交互必须遵循请求/响应的模式来进行。当前网站最常见的架构是前端使用Nginx等Web服务器,后端使用MySQL等DB (Data Base,数据库)服务器。当用户发起用户文件请求时,Nginx服务器访问MySQL服务器,获取相应的数据并呈现给用户。图1示出了根据现有技术的传统Web轮询的流程图。参见图1,客户端(Client)为了获取最新的数据,会按照一定的时间间隔不断去服务端查询(Request)。在服务端,Nginx服务器将Request转至MySQL服务器,MySQL服务器返回响应消息(Response),然后Nginx服务器将Response返回客户端。在Web轮询中,客户端为了能够尽可能快的获取到最新的数据,通常会加快轮询的频率,也就是说,各个Request之间的间隔时间会缩小。而在服务端,Nginx服务器和MySQL服务器通常分属不同的物理服务器,当客户端加快轮询Nginx服务器的频率时,Nginx服务器同样也要加快轮询MySQL服务器的频率,而MySQL服务器的抗压能力通常不如Nginx服务器,如此一来MySQL服务器就会表现出高负载,从而导致系统整体出现性能的短板。需要说明的是,此处仅仅是使用Nginx服务器和MySQL服务器作为例证,在实施过程中所使用的服务器并不限于Nginx服务器,也不限于MySQL服务器。

发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的Web轮询方法、装置和相应的系统。依据本发明的一个方面,提供了一种网络Web轮询系统,包括至少一个客户端、网络服务器和数据库服务器,其中:所述客户端,配置为发送Web轮询请求;所述数据库服务器,配置为实时将本地增加的数据推送到所述网络服务器;所述网络服务器,配置为存储所述数据库服务器推送的数据;以及,接收所述客户端发送的网络Web轮询请求时,从所述网络服务器自身存储的数据中进行查询,并将查询到的数据返回至所述客户端。可选地,所述数据库服务器还配置为:为本地存储的数据增加标识ID字段作为主键;当本地存储的ID字段增加时,将增加的ID字段以及对应的数据推送到所述网络服务器。可选地,所述网络服务器还配置为在本地的共享内存中存储所述数据库服务器推送的数据。可选地,所述网络服务器还配置为:比较所述客户端已收到的ID字段和本地存储的ID字段,判断本地存储的ID字段是否有增加;若判断结果为是,则将增加的ID字段对应的数据返回至所述客户端;若判断结果为否,则返回比较操作。可选地,所述网络服务器还配置为:对所述客户端与所述网络服务器本身的连接时间进行计时;若计时时长超过设定时间,则断开与所述客户端的连接。依据本发明的另一个方面,提供了一种数据库服务器,包括:获取模块,配置为实时获取本地增加的数据;推送模块,配置为将实时获取的数据推送到网络服务器。可选地,所述推送模块还配置为:为本地存储的数据增加标识ID字段作为主键;当本地存储的ID字段增加时,将增加的ID字段以及对应的数据推送到所述网络服务器。依据本发明的另一个方面,提供了一种网络服务器,包括:存储模块,配置为存储数据库服务器推送的数据;接收模块,配置为接收客户端发送的网络Web轮询请求;查询模块,配置为从所述存储模块存储的数据中进行查询,并将查询到的数据返回至所述客户端。可选地,所述存储模块还配置为在本地的共享内存中存储所述数据库服务器推送的数据。可选地,所述查询模块还配置为:比较所述客户端已收到的标识ID字段和所述网络服务器本地存储的ID字段,判断本地存储的ID字段是否有增加;若判断结果为是,则将增加的ID字段对应的数据返回至所述客户端;若判断结果为否,则返回比较操作。依据本发明的另一个方面,提供了一种网络Web轮询方法,包括:接收客户端发送的Web轮询请求;根据所述Web轮询请求在网络服务器存储的数据中进行查询,并将查询到的数据返回至所述客户端;其中,数据库服务器实时将自身增加的数据推送到所述网络服务器,并将所述增加的数据存储在网络服务器中。可选地,所述数据库服务器实时将自身增加的数据推送到所述网络服务器,包括:所述数据库服务器为自身存储的数据增加标识ID字段作为主键;
当所述数据库服务器存储的ID字段增加时,所述数据库服务器将增加的ID字段以及对应的数据推送到所述网络服务器。可选地,还包括:所述网络服务器在本地的共享内存中存储所述数据库服务器推送的数据。可选地,所述在网络服务器存储的数据中进行查询,并将查询到的数据返回至所述客户端,包括:比较客户端已收到的ID字段和所述网络服务器存储的ID字段,判断所述网络服务器存储的ID字段是否有增加;若判断结果为是,则将增加的ID字段对应的数据返回至所述客户端;若判断结果为否,则返回比较操作。可选地,还包括:对所述网络服务器与所述客户端的连接时间进行计时;若计时时长超过设定时间,则断开所述网络服务器与所述客户端的连接。在本发明实施例中,改变了现有的Web轮询方式,前台服务器不再到后台服务器中轮询获取数据,而是由作为后台服务器的数据库服务器实时将数据推送到作为前台的网络服务器中。当客户端需要查询数据时,网络服务器只需要在自身存储的数据中进行轮询,而不需要到后台服务器进行轮询,轮询成本大大降低,即使加快轮询频率也不会给后台服务器造成过重负载,解决了硬件短板的问题,降低了对后台服务器的要求,节省硬件成本。另外,轮询成本降低,就可以加快轮询频率,客户端可能更快轮询到相关数据,从而达到准实时的效果,提升客户端的体验。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式



通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据现有技术的传统Web轮询的流程图;图2示出了根据本发明一个实施例的Web轮询系统的结构示意图;图3示出了根据本发明一个实施例的数据库服务器的结构示意图;图4示出了根据本发明一个实施例的网络服务器的结构示意图;图5示出了根据本发明一个实施例的Web轮询方法的处理流程图;以及图6示出了根据本发明一个实施例的Web轮询方法的实例示意图。
具体实施例方式在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。由现在技术中的描述可知,传统Web轮询的最大弊端在于会造成后端数据库服务器负载激增。为解决该技术问题,本发明实施例提供了一种新的Web轮询系统。图2提供了根据本发明一个实施例的Web轮询系统的结构示意图。参见图2,Web轮询系统中至少包括有客户端210、网络服务器220 (作为服务端的前端服务器)和数据库服务器230 (作为服务端的后端服务器)。现对Web轮询系统的组成部件以及各部件的功能进行具体说明。首先,介绍客户端210。在系统中,客户端210配置为发送Web轮询请求。客户端210的数量可以根据实际情况确定,在轮询状态下,客户端210通常为至少一个,例如两个、三个、四个甚至更多。图2中客户端210数量为三个,仅用于示意客户端的数量为至少一个,对于客户端实际数量并不产生限定。其次,介绍数据库服务器220。参见图2,数据库服务器220与网络服务器230耦合。数据库服务器220作为后台服务器,配置为实时将本地增加的数据推送到网络服务器230,保证网络服务器230中的数据是最新的,实现数据的实时更新,以便于给用户提供最新的数据,提高用户感受体验。然后,介绍网络服务器230。参见图2,网络服务器一端与客户端210相耦合,另一端与数据库服务器220相耦合。作为服务端的前台服务器,网络服务器230会存储数据库服务器220推送的数据。进一步,当接收客户端210发送的Web轮询请求时,网络服务器230从网络服务器230自身存储的数据中进行查询,并将查询到的数据返回至客户端210。在本发明实施例中,改变了现有的Web轮询方式,前台服务器不再到后台服务器中轮询获取数据,而是由作为后台服务器的数据库服务器实时将数据推送到作为前台的网络服务器中。当客户端需要查询数据时,网络服务器只需要在自身存储的数据中进行轮询,而不需要到后台服务器进行轮询,轮询成本大大降低,即使加快轮询频率也不会给后台服务器造成过重负载,解决了硬件短板的问题,降低了对后台服务器的要求,节省硬件成本。另外,轮询成本降低,就可以加快轮询频率,客户端可能更快轮询到相关数据,从而达到准实时的效果,提升客户端的体验。数据库服务器220在推送过程中,为保证数据推送的实时性,为本地存储的数据增加标识ID字段作为主键。每个数据都有一个对应的ID字段,当本地存储的ID字段增加时,则获知本地存储的数据增加。此时,将增加的ID字段以及对应的数据推送到网络服务器230。此处可以采用的ID字段有多种,例如,为每个数据设置一个关键字key,利用key作为ID字段。再例如,以自然数的顺序依次为本地数据设置ID字段,若原存储有4个数据,其ID字段分别为0-3,若出现ID字段为4,则该数据必然是新增的数据。再例如,也可以以英文字母A-Z为本地数据设置ID字段等等。用于作为ID字段的信息能够起到标识作用即可。进一步,需要说明的是,数据库服务器220发现自身存储有新数据时,可以采用数据库服务器220本身的触发器或者在逻辑层代码里利用观察者模式主动通知网络服务器230,以便网络服务器230作为数据接收的准备。网络服务器230在存储数据过程中,优选在本地的共享内存中存储数据库服务器推送的数据,由于共享内存具备多进程可以共享的特性,因此,网络服务器230中的所有进程都可以查询或调用在共享内容中存储的数据,提高数据的轮询效率。在本发明实施例中,网络服务器230接收到客户端210发送的Web论询请求后,比较客户端210之前已收到的ID字段和当前网络服务器230本地存储的ID字段,判断网络服务器230本地存储的ID字段是否有增加。若判断结果为是,则将增加的ID字段对应的数据返回至客户端210,若判断结果为否,则返回比较操作。在实施过程中,需要说明的是,服务端将增加的数据发送至客户端210后,服务端会断开与客户端210的连接,以提高系统的安全性。在本例,网络服务器230代表服务端与客户端210连接,因此,在网络服务器230将数据发送至客户端210后,网络服务器230断开与客户端210的连接。若网络服务器230 —直没有发送新的数据至客户端210,则保持与客户端210的连接。但是,考虑到服务稳定性,若一直执行长连接,则稳定性容易被影响,因此,网络服务器230可以对客户端210与网络服务器230本身的连接时间进行计时,若计时时长超过设定时间,则断开与客户端210的连接。在连接断开之后,客户端210会再度重新发起Web轮询请求,周而复始,以保证数据的实时获取。上文对整个Web轮询系统进行介绍,现分别对其中的数据库服务器以及网络服务器的架构进行具体说明。基于同一发明构思,本发明实施例还提供了 一种数据库服务器220。该数据库服务器220可以主动推送增加的数据至网络服务器230。图3示出根据本发明一个实施例的数据库服务器的结构示意图。参见图3,该数据库服务器220至少包括获取模块221和推送模块222。其中,各模块的结构以及功能如下。获取模块221,配置为实时获取本地增加的数据;推送模块222,与获取模块221相耦合,配置为将实时获取的数据推送到网络服务器。其中,推送模块222可以选择的一种优选的推送方式如下:为本地存储的数据增加ID字段作为主键。随后,因ID字段具备自增能力,因此,只需监控ID字段,当本地存储的ID字段增加时,将增加的ID字段以及对应的数据推送到网络服务器230。基于同一发明构思,本发明实施例还提供了一种网络服务器230。图4示出了根据本发明一个实施例的网络服务器的结构示意图。参见图4,该网络服务器230至少包括存储模块231、接收模块232以及查询模块233。现对各模块的功能以及其结构连接进行具体分析。存储模块231,配置为存储数据库服务器220推送的数据;接收模块232,配置为接收客户端210发送的Web轮询请求;查询模块233,配置为从存储模块231存储的数据中进行查询,并将查询到的数据返回至客户端210。为便于各进程均能够调用新增数据,优选的,存储模块231选择在本地的共享内存中存储数据库服务器220推送的数据。在一个优选的实施例中,查询模块233可以通过比较客户端210已收到的标识ID字段和网络服务器本地存储的ID字段,判断本地存储的ID字段是否有增加。若判断结果为是,则查询模块233将增加的ID字段对应的数据返回至客户端210。若判断结果为否,则查询模块233返回比较操作,继续对客户端210已收到的标识ID字段和网络服务器本地存储的ID字段进行比较。基于同一发明构思,本发明实施例还提供了一种Web轮询方法。图5示出了根据本发明一个实施例的Web轮询方法的处理流程图。参见图5,Web轮询方法包括步骤S502至步骤S506。步骤S502、数据库服务器实时将自身增加的数据推送到网络服务器,并将增加的数据存储在网络服务器中。步骤S502、接收客户端发送的Web轮询请求。步骤S504、根据Web轮询请求在网络服务器存储的数据中进行查询,并将查询到的数据返回至客户端。在本发明实施例中,改变了现有的Web轮询方式,前台服务器不再到后台服务器中轮询获取数据,而是由作为后台服务器的数据库服务器实时将数据推送到作为前台的网络服务器中。当客户端需要查询数据时,只需要在网络服务器自身存储的数据中进行轮询,而不需要由网络服务器到后台服务器进行轮询,轮询成本大大降低,即使加快轮询频率也不会给后台服务器造成过重负载,解决了硬件短板的问题,降低了对后台服务器的要求,节省硬件成本。另外,轮询成本降低,就可以加快轮询频率,客户端可能更快轮询到相关数据,从而达到准实时的效果,提升客户端的体验。其中,步骤S502在实施时提及,数据库服务器实时将自身增加的数据推送到网络服务器。为保证数据推送的实时性,为本地存储的数据增加标识ID字段作为主键。每个数据都有一个对应的ID字段,当本地存储的ID字段增加时,则获知本地存储的数据增加。此时,将增加的ID字段以及对应的数据推送到网络服务器。此处可以采用的ID字段有多种,例如,为每个数据设置一个关键字key,利用key作为ID字段。再例如,以自然数的顺序依次为本地数据设置ID字段,若原存储有4个数据,其ID字段分别为0-3,若出现ID字段为4,则该数据必然是新增的数据。再例如,也可以以英文字母A-Z为本地数据设置ID字段等等。用于作为ID字段的信息能够起到标识作用即可。进一步,需要说明的是,数据库服务器发现自身存储有新数据时,可以采用数据库服务器本身的触发器或者在逻辑层代码里利用观察者模式主动通知网络服务器,以便网络服务器作为数据接收的准备。在网络服务器中存储数据时,优选在网络服务器的共享内存中存储数据库服务器推送的数据,由于共享内存具备多进程可以共享的特性,因此,网络服务器中的所有进程都可以查询或调用在共享内容中存储的数据,提高数据的轮询效率。网络服务器接收到客户端发送的Web轮询请求后,会在网络服务器存储的数据中进行查询,比较客户端已收到的ID字段和网络服务器存储的ID字段,判断网络服务器存储的ID字段是否有增加。若判断结果为是,则将增加的ID字段对应的数据返回至客户端。若判断结果为否,则返回比较操作。在实施过程中,需要说明的是,服务端将增加的数据发送至客户端后,服务端会断开与客户端的连接,以提高系统的安全性。在本例,网络服务器代表服务端与客户端连接,因此,在网络服务器将数据发送至客户端后,网络服务器断开与客户端的连接。
若网络服务器一直没有发送新的数据至客户端,则保持与客户端的连接。但是,考虑到服务稳定性,若一直执行长连接,则稳定性容易被影响,因此,网络服务器可以对客户端与网络服务器本身的连接时间进行计时,若计时时长超过设定时间,则断开与客户端的连接。为将本发明实施例所采用的Web轮询方法所能达到的效果阐述地更清楚更明白,且与现有技术形成对比,现提供一个与图1相同的具体应用环境对其进行说明。图6示出了根据本发明一个实施例的Web轮询方法的实例示意图。由于应用环境与图1相同,在此不做赘述。需要说明的是,此处仅仅是使用Nginx服务器和MySQL服务器作为例证,在本发明实施例的实施过程中所使用的服务器并不限于Nginx服务器,也不限于MySQL服务器,即,不限于特定的数据库服务器和网络服务器类型。具体的,本例中,假设数据保存到MySQL服务器中时,使用了一个自增ID字段作为主键。客户端发出请求后,使用HTTP1.1中提供的Ke印Alive形式与服务端保持长连接,同时查询出当前用户已经收到的最新的ID字段,以备稍后使用。在本例中,Nginx服务器不再主动查询MySQL服务器,而是由MySQL服务器把新数据的ID字段主动推送(push)到Nginx服务器上。具体的做法是:当MySQL服务器上存储了新数据的时候,可以利用MySQL服务器本身的触发器或者在逻辑层代码里利用观察者模式主动通知前端Nginx服务器。而前端Nginx服务器则把相应的新数据ID字段保存在Nginx共享内存中,以便所有的Nginx进程都可以使用。并且,Nginx服务器轮询不必再轮询远程MySQL服务器,只需要轮询本地共享内存即可,由于轮询本地共享内存的开销相对较低,所以可以加快轮询的频率,从而到到准实时的效果,提升了客户端的体验。同时由于减低了对后端MySQL服务器的请求书,可以节省硬件成本。客户端轮询Nginx服务器时,Nginx服务器可以比对用户已经收到的最新的ID和保存在共享内存中的系统的最新的ID,因为ID是自增的,所以很容易判断出此客户端是否有新消息(即是否有新数据需要发送到客户端,对客户端的数据进行更新)。一旦确定有新消息,就把新消息反馈给客户端,并立刻终止连接。随后,客户端会重新发送Web轮询请求。反之如果没有新消息,服务端会保持连接,但出于服务稳定性的考虑,这个长连接不会永久保持下去,通常会设定一个时长,一旦连接时间达到该设定时长,服务端就会主动断开。然后由客户端再重新发起Web轮询请求,建立连接,如此周而复始。技术关键点在于以Nginx共享内存为基础现实本地轮询,以替代传统的远程轮询,从而极大的提升客户端体验,降低硬件成本。由此可见,本发明实施例将在保证客户端使用方法兼容传统Web轮询方案的基础上,有效降低后端数据库服务器的负载,使之不再成为系统整体性能的短板。采用本发明实施例提供的Web轮询方法、装置以系统能够达到如下有益效果:在本发明实施例中,改变了现有的Web轮询方式,前台服务器不再到后台服务器中轮询获取数据,而是由作为后台服务器的数据库服务器实时将数据推送到作为前台的网络服务器中。当客户端需要查询数据时,网络服务器只需要在自身存储的数据中进行轮询,而不需要到后台服务器进行轮询,轮询成本大大降低,即使加快轮询频率也不会给后台服务器造成过重负载,解决了硬件短板的问题,降低了对后台服务器的要求,节省硬件成本。另外,轮询成本降低,就可以加快轮询频率,客户端可能更快轮询到相关数据,从而达到准实时的效果,提升客户端的体验。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式
的权利要求书由此明确地并入该具体实施方式
,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的Web轮询系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
权利要求
1.一种网络Web轮询系统,包括至少一个客户端、网络服务器和数据库服务器,其中: 所述客户端,配置为发送Web轮询请求; 所述数据库服务器,配置为实时将本地增加的数据推送到所述网络服务器; 所述网络服务器,配置为存储所述数据库服务器推送的数据;以及,接收所述客户端发送的网络Web轮询请求时,从所述网络服务器自身存储的数据中进行查询,并将查询到的数据返回至所述客户端。
2.根据权利要求1所述的系统,其特征在于,所述数据库服务器还配置为: 为本地存储的数据增加标识ID字段作为主键; 当本地存储的ID字段增加时,将增加的ID字段以及对应的数据推送到所述网络服务器。
3.根据权利要求1或2所述的系统,其特征在于,所述网络服务器还配置为在本地的共享内存中存储所述数据库服务器推送的数据。
4.根据权利要求1至3任一项所述的系统,其特征在于,所述网络服务器还配置为: 比较所述客户端已收到的ID字段和本地存储的ID字段,判断本地存储的ID字段是否有增加; 若判断结果为是,则将增加的ID字段对应的数据返回至所述客户端; 若判断结果为否,则返回比较操作。
5.根据权利要求1至 4任一项所述的系统,其特征在于,所述网络服务器还配置为: 对所述客户端与所述网络服务器本身的连接时间进行计时; 若计时时长超过设定时间,则断开与所述客户端的连接。
6.一种数据库服务器,包括: 获取模块,配置为实时获取本地增加的数据; 推送模块,配置为将实时获取的数据推送到网络服务器。
7.根据权利要求6所述的数据库服务器,其特征在于,所述推送模块还配置为: 为本地存储的数据增加标识ID字段作为主键; 当本地存储的ID字段增加时,将增加的ID字段以及对应的数据推送到所述网络服务器。
8.一种网络服务器,包括: 存储模块,配置为存储数据库服务器推送的数据; 接收模块,配置为接收客户端发送的网络Web轮询请求; 查询模块,配置为从所述存储模块存储的数据中进行查询,并将查询到的数据返回至所述客户端。
9.根据权利要求8所述的网络服务器,其特征在于,所述存储模块还配置为在本地的共享内存中存储所述数据库服务器推送的数据。
10.根据权利要求8或9所述的网络服务器,其特征在于,所述查询模块还配置为: 比较所述客户端已收到的标识ID字段和所述网络服务器本地存储的ID字段,判断本地存储的ID字段是否有增加; 若判断结果为是,则将增加的ID字段对应的数据返回至所述客户端; 若判断结果为否,则返回比较操作。
11.一种网络Web轮询方法,包括: 接收客户端发送的Web轮询请求; 根据所述Web轮询请求在网络服务器存储的数据中进行查询,并将查询到的数据返回至所述客户端; 其中,数据库服务器实时将自身增加的数据推送到所述网络服务器,并将所述增加的数据存储在网络服务器中。
12.根据权利要求11所述的方法,其特征在于,所述数据库服务器实时将自身增加的数据推送到所述网络服务器,包括: 所述数据库服务器为自身存储的数据增加标识ID字段作为主键; 当所述数据库服务器存储的ID字段增加时,所述数据库服务器将增加的ID字段以及对应的数据推送到所述网络服务器。
13.根据权利要求11或12所述的方法,其特征在于,还包括:所述网络服务器在本地的共享内存中存储所述数据库服务器推送的数据。
14.根据权利要求11至13任一项所述的方法,其特征在于,所述在网络服务器存储的数据中进行查询,并将查询到的数据返回至所述客户端,包括: 比较客户端已收到的ID字段和所述网络服务器存储的ID字段,判断所述网络服务器存储的ID字段是否有增加; 若判断结果为是,则将增加的ID字段对应的数据返回至所述客户端; 若判断结果为否,则返回比较操作`。
15.根据权利要求11至14任一项的方法,还包括: 对网络服务器与客户端的连接时间进行计时; 若计时时长超过设定时间,则断开网络服务器与客户端的连接。
全文摘要
本发明公开了一种Web轮询系统,包括至少一个客户端、网络服务器和数据库服务器,其中所述客户端,配置为发送Web轮询请求;所述数据库服务器,配置为实时将本地增加的数据推送到所述网络服务器;所述网络服务器,配置为存储所述数据库服务器推送的数据;以及,接收所述客户端发送的Web轮询请求时,从所述网络服务器自身存储的数据中进行查询,并将查询到的数据返回至所述客户端。采用本发明能够降低系统负载,减少硬件成本。本发明还公开了相应的装置以及方法。
文档编号H04L29/08GK103167017SQ20131000788
公开日2013年6月19日 申请日期2013年1月9日 优先权日2013年1月9日
发明者王博, 叶剑锋 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1