一种共享会话数据的方法、系统及装置制造方法

文档序号:7979769阅读:104来源:国知局
一种共享会话数据的方法、系统及装置制造方法
【专利摘要】本发明公开了一种共享会话(Session)数据的方法,包括:当网络(Web)服务器集群中的任意一台Web服务器检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器;若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户端。本发明还同时公开了一种共享Session数据的系统及装置,采用本发明能提高Web服务器集群共享Session数据的效率,且不增加Web服务器集群的配置。
【专利说明】一种共享会话数据的方法、系统及装置【技术领域】
[0001]本发明涉及互联网【技术领域】,尤其涉及一种共享会话(Session)数据的方法、系统及装置。
【背景技术】
[0002]当用户使用客户端访问任意一个网站时,客户端与该网站的网络(Web)服务器集群中的任意一台Web服务器建立连接,所述Web服务器中保存的与所述客户端从建立连接到断开连接这段时间内产生的所有信息为会话(Session)。所述Session包括Session变量和Session标识号码(ID, Identity)两部分,其中Session变量存储于Web服务器,SessionID存储于客户端。所述Web服务器保存与客户端间的Session包括:Web服务器收到客户端发来的开始会话的请求后,生成该会话对应的Session ID,并将Session ID发送给所述客户端;当胃必服务器检测到所述客户端发来的请求报文后,根据请求报文中的Session ID,并根据请求报文的内容对自身保存的对应的Session的信息进行读取或写入的操作。但是,当保存Session数据的Web服务器发生故障时,就会无法利用已有的Session数据为客户端提供服务,如此,需要客户端重新与所访问的网站的Web服务器集群中的一台Web服务器建立连接,这会给客户端访问网站带来不便。
[0003]目前,为解决上述问题,已提出Session数据共享的方法,具体为:当Web服务器集群中,Web服务器检测到自身保存的任意一个Session ID对应的Session中的数据发生改变时,该Web服务器将发送改变的数据复制到Web服务器集群的其他Web服务器中。如此,就可以避免一台Web服务器发生故障,而影响客户端访问网站的情况。
[0004]但是,上述Session数据共享的方法,由于需要将Web服务器集群中各个Web服务器中发送变化的Session中的数据复制到其他Web服务器中,导致Session数据很容易在Web服务器集群中成网状交互传递,这样就会使Session数据共享的效率较低;另外,需要Web服务器集群中每个Web服务器都知道其他Web服务器的位置,如此,使Web服务器集群的配置较为复杂 。
[0005]可见,现有的Session数据共享的方法,由于需要Web服务器集群中所有Web服务器共同参与进行Session数据共享,导致Web服务器集群共享Session数据的效率低下,且Web服务器集群的配置较为复杂。

【发明内容】

[0006]有鉴于此,本发明的目的在于提供一种共享Session数据的方法、系统及装置,能提高Web服务器集群中Web服务器共享Session数据的效率,且不增加Web服务器集群的配置。
[0007]为达到上述目的,本发明的技术方案是这样实现的:
[0008]本发明提供了一种共享Session数据的方法,该方法包括:
[0009]当Web服务器集群中的Web服务器检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器;
[0010]若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户端。
[0011 ] 上述方案中,所述将更新后的Session字段发送给Session存储服务器,包括:Web服务器将更新后的Session字段及请求报文中的Session ID编写为更新信息,将更新信息发给Session存储服务器。
[0012]上述方案中,所述将更新后的Session字段发送给Session存储服务器之后,该方法还包括=Session存储服务器根据Web服务器发来的更新后的Session字段更新对应的Session 字段。
[0013]上述方案中,所述Session存储服务器根据Web服务器发来的更新后的Session字段更新对应的Session字段,包括=Session存储服务器实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取SessionID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新自身保存的Session字段;若没有收至IJ,则继续实时检测是否收到Web服务器发来的更新信息。
[0014]上述方案中,所述根据请求报文从Session数据中提取对应的Session字段,包括:
[0015]Web服务器提取请求报文中的Session ID,根据Session ID确定请求报文对应的Session数据,再根据请求报文中的请求内容从Session数据中提取Session字段;
[0016]或者,
[0017]Web服务器提取请求报文中的Session ID,根据Session ID从Session存储服务器中确定请求报文对应的Session数据,Web服务器再根据请求报文中的请求内容从Session存储服务器中Session数据中提取Session字段。
[0018]上述方案中,所述Web服务器检测到自身收到请求报文之前,该方法还包括:
[0019]Web服务器集群中的Web服务器实时检测是否收到开始会话的请求,若是,则生成Session ID并将该Session ID发给Session存储服务器,继续实时检测是否收到开始会话的请求;否则,Web服务器检测自身是否收到请求报文。
[0020]上述方案中,所述将该Session ID发给Session存储服务器之后,该方法还包括:Session存储服务器还会接收并保存Web服务器发来的SessionID。
[0021]本发明提供了一种共享Session数据的方法,该方法包括:
[0022]Session存储服务器根据Web服务器发来的更新后的Session字段,更新对应的Session 字段。
[0023]上述方案中,所述Session存储服务器根据Web服务器发来的更新后的Session字段,更新对应的Session字段,包括=Session存储服务器实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新自身保存的Session字段;若没有收到,则继续实时检测是否收到Web服务器发来的更新信息。
[0024]上述方案中,所述更新对应的Session字段之前,该方法还包括:Session存储服务器接收并保存Web服务器发来的Session ID。[0025]上述方案中,所述接收并保存Web服务器发来的Session ID之前,该方法还包括:Web服务器集群中的Web服务器实时检测是否收到开始会话的请求,若是,则生成SessionID并将该Session ID发给Session存储服务器,继续实时检测是否收到开始会话的请求;否则,Web服务器检测自身是否收到请求报文。
[0026]上述方案中,所述Session存储服务器根据Web服务器发来的更新后的Session字段,更新对应的Session字段之前,该方法还包括:当Web服务器集群中的Web服务器检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器。
[0027]本发明还提供了一种共享Session数据的系统,该系统包括:Web服务器和Session存储服务器;其中,
[0028]Web服务器,用于处于Web服务器集群中,当检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器,若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户端;
[0029]Session存储服务器,用于根据Web服务器发来的更新后的Session字段更新对应的Session字段。
[0030]本发明提供了一种Web服务器,该Web服务器包括:检测单元、处理单元和数据存储单元;其中,
[0031]检测单元,用于当检测到自身收到请求报文时,将请求报文发送给处理单元;
[0032]处理单元,用于判断检测单元发来的请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新数据存储单元中的Session字段,提取更新后的Session字段发送给Session存储服务器,若为读取操作请求,则根据请求报文从数据存储单元中的Session数据中提取对应的Session字段,将Session字段发给对应的客户端;
[0033]数据存储单元,用于根据处理单元的操作更新自身存储的Session字段,以及为处理单元提供Session字段。
[0034]上述方案中,所述处理单元,具体用于将更新后的Session字段及请求报文中的Session ID编写为更新信息,将更新信息发给Session存储服务器。
[0035]上述方案中,所述处理单元,具体用于提取请求报文中的Session ID,根据Session ID确定请求报文对应的Session数据,再根据请求报文中的请求内容从数据存储单元中提取Session字段;
[0036]或者,
[0037]所述处理单元,具体用于提取请求报文中的Session ID,根据Session ID从Session存储服务器中确定请求报文对应的Session数据,Web服务器再根据请求报文中的请求内容从Session存储服务器中Session数据中提取Session字段。
[0038]上述方案中,所述检测单元,还用于实时检测是否收到开始会话的请求,若是,则生成Session ID并将该Session ID发给Session存储服务器,继续实时检测是否收到开始会话的请求;否则,检测自身是否收到请求报文。
[0039]本发明还提供了一种Session存储服务器,所述Session存储服务器包括:信息接收处理单元和Session数据存储单元;其中,
[0040]信息收发处理单元,用于将Web服务器发来的更新后的Session字段发送给Session数据存储单元;
[0041]Session数据存储单元,用于根据信息接收处理单元发来的更新后的Session字段更新对应的Session字段。
[0042]上述方案中,所述信息收发处理单元,还用于实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新Session数据存储单元保存的Session字段;若没有收到,则继续实时检测是否收到Web服务器发来的更新信息。
[0043]上述方案中,所述信息收发处理单元,还用于将Web服务器发来的Session ID发送给Session数据存储单元;
[0044]相应的,所述Session数据存储单元,还用于接收并保存信息收发处理单元发来的 Session ID。
[0045]本发明所提供的共享Session数据的方法、系统及装置,能当Web服务器检测到自身收到请求报文时,根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器,或者根据请求报文从Session数据中提取对应的Session字段发给对应的客户端,如此,就能直接将Session数据保存在Session存储服务器,并能实时将更新后的Session数据保存在Session存储服务器,从而,避免现有技术中将Web服务器中发生更新后的Session数据保存在Web服务器集群中的多个Web服务器而带来的降低共享Session数据的效率的问题,能够提高Web服务器集群中Web服务器共享Session数据的效率;
[0046]另夕卜,由于Web服务器集群中Web服务器中的Session数据,只需写入Session存储服务器或从Session存储服务器读取,所以能够不增加Web服务器集群的配置复杂度。
【专利附图】

【附图说明】
[0047]图1为本发明共享Session数据的方法流程示意图;
[0048]图2为本发明共享Session数据的系统的组成结构示意图。
【具体实施方式】
[0049]本发明的基本思想是:当Web服务器集群中的任意一台Web服务器检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器;若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户端。
[0050]下面结合附图及具体实施例对本发明再作进一步详细的说明。
[0051]本发明提出一种共享Session数据的方法,如图1所示,包括以下步骤:
[0052]步骤101 =Web服务器集群中任意一台Web服务器检测自身是否收到请求报文,若收到,则执行步骤102 ;否则,重复执行步骤101。
[0053]这里,所述请求报文为现有技术中规定的当客户端浏览网站时,向该网站对应的Web服务器集群发送的报文,包括Session ID和请求内容;其中,所述请求内容为:写入操作请求和读取操作请求;
[0054]所述写入操作请求为修改、增加或改写当前保存的Session数据中的Session字段的操作请求。
[0055]所述Web服务器为Web服务器集群中的任意一台Web服务器。
[0056]步骤102:该Web服务器判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则执行步骤103 ;若为读取操作请求,则执行步骤104。
[0057]具体的,该Web服务器先提取请求报文中的Session ID,查看自身是否保存有对应Session ID的Session数据,若没有对应的Session ID的Session数据,则根据请求报文中的Session ID从Session存储服务器中提取该SessionID对应的Session数据并保存,Web服务器再判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则执行步骤103 ;若为读取操作请求,则执行步骤104 ;
[0058]若有对应的Session ID的Session数据,则Web服务器判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则执行步骤103 ;若为读取操作请求,则执行步骤104。
[0059]步骤103:该Web服务器根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器,结束处理流程。
[0060]这里,所述更新Session字段为:Web服务器按照请求报文中的写入操作请求,根据写入操作请求所对应的Session字段进行操作,比如,当请求报文中的写入操作请求为需要对用户名进行修改时,对自身保存的Session数据中的“session-name”字段进行修改;
[0061]所述将更新后的Session字段发送给Session存储服务器包括:Web服务器将更新后的Session字段及请求报文中的Session ID编写为更新信息,将更新信息发给Session存储服务器。
[0062]另外,执行步骤103之后,所述Session存储服务器还会根据Web服务器发来的更新后的Session字段更新对应的Session字段,具体为:Session存储服务器实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新自身保存的Session字段;若没有收到,则继续实时检测是否收到Web服务器发来的更新信息。
[0063]步骤104:该Web服务器根据请求报文从Session数据中提取对应的Session字段发给对应的客户端。
[0064]这里,所述从Session数据中提取请求报文对应的Session字段可以为:Web服务器提取请求报文中的Session ID,根据Session ID确定请求报文对应的Session数据,再根据请求报文中的请求内容从Session数据中提取Session字段;也可以为:Web服务器提取请求报文中的Session ID,根据Session ID从Session存储服务器中确定请求报文对应的Session数据,Web服务器再根据请求报文中的请求内容从Session存储服务器中Session数据中提取Session字段。[0065]执行步骤101之前,Web服务器还会进行如下操作:
[0066]步骤a:ffeb服务器集群中任意一台Web服务器实时检测是否收到开始会话的请求,若是,则执行步骤b ;否则,执行步骤101。
[0067]这里,所述开始会话的请求为现有技术中规定的报文类型,可以通过判断报文中是否包含“Session StartO ”字段,来判断对应的请求报文是否为开始会话的请求。
[0068]步骤b:ffeb服务器生成Session ID,并将该Session ID发送给Session存储服务器,返回步骤a。
[0069]具体为:Web服务器生成Session ID,将该Session ID发送给Session存储服务器,并将该Session ID发给客户端,返回步骤a ;
[0070]这里,所述生成Session ID为现有技术,这里不做赘述;所述将该SessionID发给客户端为现有技术,这里不做赘述。
[0071]上述步骤b完成后,所述Session存储服务器还会接收并保存Web服务器发来的Session ID,具体为=Session存储服务器实时检测是否收到Web服务器发来的SessionID,若收到,则保存Session ID ;若没收到,则继续实时检测是否收到Web服务器发来的Session ID。[0072]如图2所示,本发明提供了一种共享Session数据的系统,该系统包括:Web服务器21和Session存储服务器22 ;其中,
[0073]Web服务器21,用于处于Web服务器21集群中,当检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器22,若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户〗而;
[0074]Session存储服务器22,用于根据Web服务器21发来的更新后的Session字段更新对应的Session字段。
[0075]所述Web服务器21为Web服务器21集群中的任意一台Web服务器21。
[0076]所述Web服务器21,具体用于检测自身是否收到请求报文,若收到,则判断该请求报文中的请求内容为写入操作请求还是读取操作请求;否则,继续检测自身是否收到请求报文。
[0077]所述Web服务器21,具体用于先提取请求报文中的Session ID,查看自身是否保存有对应Session ID的Session数据,若没有对应的Session ID,则根据请求报文中的Session ID从Session存储服务器22中提取该SessionID对应的Session数据并保存,再判断该请求报文中的请求内容为写入操作请求还是读取操作请求;若有对应的SessionID,则直接判断该请求报文中的请求内容为写入操作请求还是读取操作请求。
[0078]所述Web服务器21,具体用于按照请求报文中的写入操作请求,根据写入操作请求所对应的Session字段进行操作获得更新后的Session字段。
[0079]所述Web服务器21,具体用于将更新后的Session字段及请求报文中的SessionID编写为更新信息,将更新信息发给Session存储服务器22 ;相应的,所述Session存储服务器22,具体用于实时检测是否收到Web服务器21发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新自身保存的Session字段,若没有收到,则继续实时检测是否收到Web服务器21发来的更新信息。
[0080]所述Web服务器21,具体用于提取请求报文中的Session ID,根据Session ID确定请求报文对应的Session数据,再根据请求报文中的请求内容从Session数据中提取Session字段;或者,提取请求报文中的Session ID,根据Session ID从Session存储服务器22中确定请求报文对应的Session数据,再根据请求报文中的请求内容从Session存储服务器22中Session数据中提取Session字段;相应的,所述Session存储服务器22,还用于为Web服务器21提供自身存储的Session数据。
[0081]所述Web服务器21,还用于实时检测是否收到开始会话的请求,若是,则生成Session ID,并将该Session ID发送给Session存储服务器22,否则,检测是否收到请求报文。
[0082]所述Web服务器21,还用于将Session ID发送给Session存储服务器22,并将该Session ID发给客户端;相应的,所述Session存储服务器22,还用于接收并保存Web服务器21发来的Session ID。
[0083]所述Session存储服务器22,具体用于实时检测是否收到Web服务器21发来的Session ID,若收到,则保存Session ID,若没收到,则继续实时检测是否收到Web服务器21 发来的 Session ID。
[0084]所述Web服务器21包括:检测单元211、处理单元212和数据存储单元213 ;其中,
[0085]检测单元211,用于当检测到自身收到请求报文时,将请求报文发送给处理单元212 ;
[0086]处理单元212,用于判断检测单元211发来的请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新数据存储单元213中的Session字段,提取更新后的Session字段发送给Session存储服务器22,若为读取操作请求,则根据请求报文从数据存储单元213中的Session数据中提取对应的Session字段,将Session字段发给对应的客户端;
[0087]数据存储单元213,用于根据处理单元212的操作更新自身存储的Session字段,以及为处理单元212提供Session字段。
[0088]所述检测单元211,具体用于检测自身是否收到请求报文,若收到,则将请求报文发送给处理单元212,否则,继续检测自身是否收到请求报文。
[0089]所述处理单元212,具体用于先提取请求报文中的Session ID,查看数据存储单元213是否保存有对应Session ID的Session数据,若没有对应的Session ID,则根据请求报文中的Session ID从Session存储服务器22中提取对应的Session数据并保存到数据存储单元213中,再判断该请求报文中的请求内容为写入操作请求还是读取操作请求;若有对应的Session ID,则直接判断该请求报文中的请求内容为写入操作请求还是读取操作请求。
[0090]所述处理单元212,具体用于按照请求报文中的写入操作请求,根据写入操作请求对数据存储单元213中所对应的Session字段进行操作获得更新后的Session字段。
[0091]所述处理单元212,具体用于将更新后的Session字段及请求报文中的SessionID编写为更新信息,将更新信息发给Session存储服务器22。[0092]所述处理单元212,具体用于提取请求报文中的Session ID,根据SessionID确定请求报文对应的Session数据,再根据请求报文中的请求内容从数据存储单元213中提取Session字段;或者,提取请求报文中的Session ID,根据Session ID从Session存储服务器22中确定请求报文对应的Session数据,再根据请求报文中的请求内容从Session存储服务器22中Session数据中提取Session字段。
[0093]所述检测单元211,还用于实时检测是否收到开始会话的请求,若是,则生成Session ID,并将该Session ID发送给Session存储服务器22,并将该Session ID发给客户端,否则,检测是否收到请求报文。
[0094]所述Session存储服务器22包括:信息接收处理单元221和Session数据存储单元222 ;其中,
[0095]信息收发处理单元221,用于将Web服务器21发来的更新后的Session字段发送给Session数据存储单元222 ;
[0096]Session数据存储单元222,用于根据信息接收处理单元221发来的更新后的Session字段更新对应的Session字段。
[0097]所述信息收发处理单元221,还用于为Web服务器21提供Session数据存储单元222存储的Session数据;相应的,所述Session数据存储单元222,还用于为信息接收处理单元221提供Session数据。
[0098]所述信息收发处理单元221,还用于将Web服务器21发来的Session ID发送给Session数据存储单元222 ;相应的,所述Session数据存储单元222,还用于接收并保存信息收发处理单元221发来的Session ID。
[0099]所述信息收发处理单元221,具体用于实时检测是否收到Web服务器21发来的Session ID,若收到,则将Web服务器21发来的Session ID发送给Session数据存储单元222,若没收到,则继续实时检测是否收到Web服务器21发来的Session ID。
[0100]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【权利要求】
1.一种共享会话Session数据的方法,其特征在于,该方法包括: 当网络Web服务器集群中的Web服务器检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器; 若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户端。
2.根据权利要求1所述的方法,其特征在于,所述将更新后的Session字段发送给Session存储服务器,包括:Web服务器将更新后的Session字段及请求报文中的Session标识号码ID编写为更新信息,将更新信息发给Session存储服务器。
3.根据权利要求1或2所述的方法,其特征在于,所述将更新后的Session字段发送给Session存储服务器之后,该方法还包括=Session存储服务器根据Web服务器发来的更新后的Session字段更新对应的Session字段。
4.根据权利要求3所述的方法,其特征在于,所述Session存储服务器根据Web服务器发来的更新后的Session字段更新对应的Session字段,包括:Session存储服务器实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新自身保存的Session字段;若没有收到,则继续实时检测是否收到Web服务器发来的更新信息。
5.根据权利要求1所述的方法,其特征在于,所述根据请求报文从Session数据中提取对应的Session字段,包括: Web服务器提取请求报文中的Session ID,根据Session ID确定请求报文对应的Session数据,再根据请求报文 中的请求内容从Session数据中提取Session字段; 或者, Web服务器提取请求报文中的Session ID,根据Session ID从Session存储服务器中确定请求报文对应的Session数据,Web服务器再根据请求报文中的请求内容从Session存储服务器中Session数据中提取Session字段。
6.根据权利要求1所述的方法,其特征在于,所述Web服务器检测到自身收到请求报文之前,该方法还包括: Web服务器集群中的Web服务器实时检测是否收到开始会话的请求,若是,则生成Session ID并将该Session ID发给Session存储服务器,继续实时检测是否收到开始会话的请求;否则,Web服务器检测自身是否收到请求报文。
7.根据权利要求6所述的方法,其特征在于,所述将该SessionID发给Session存储服务器之后,该方法还包括=Session存储服务器还会接收并保存Web服务器发来的Session ID。
8.一种共享Session数据的方法,其特征在于,该方法包括: Session存储服务器根据Web服务器发来的更新后的Session字段,更新对应的Session 字段。
9.根据权利要求8所述的方法,其特征在于,所述Session存储服务器根据Web服务器发来的更新后的Session字段,更新对应的Session字段,包括:Session存储服务器实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新自身保存的Session字段;若没有收到,则继续实时检测是否收到Web服务器发来的更新信息。
10.根据权利要求8或9所述的方法,其特征在于,所述更新对应的Session字段之前,该方法还包括=Session存储服务器接收并保存Web服务器发来的Session ID。
11.根据权利要求10所述的方法,其特征在于,所述接收并保存Web服务器发来的Session ID之前,该方法还包括:Web服务器集群中的Web服务器实时检测是否收到开始会话的请求,若是,则生成Session ID并将该Session ID发给Session存储服务器,继续实时检测是否收到开始会话的请求;否则,Web服务器检测自身是否收到请求报文。
12.根据权利要求8所述的方法,其特征在于,所述Session存储服务器根据Web服务器发来的更新后的Session字段,更新对应的Session字段之前,该方法还包括:当Web服务器集群中的Web服务器检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器。
13.一种共享Session数据的系统,其特征在于,该系统包括:Web服务器和Session存储服务器;其中, Web服务器,用于处于Web服务器集群中,当检测到自身收到请求报文时,判断该请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新Session字段,将更新后的Session字段发送给Session存储服务器,若为读取操作请求,则根据请求报文从Session数据中提取对应的Session字段发给对应的客户端; Session存储服务器,用于根据Web服务器发来的更新后的Session字段更新对应的Session 字段。`
14.一种Web服务器,其特征在于,该Web服务器包括:检测单元、处理单元和数据存储单元;其中, 检测单元,用于当检测到自身收到请求报文时,将请求报文发送给处理单元; 处理单元,用于判断检测单元发来的请求报文中的请求内容为写入操作请求还是读取操作请求,若为写入操作请求,则根据请求报文更新数据存储单元中的Session字段,提取更新后的Session字段发送给Session存储服务器,若为读取操作请求,则根据请求报文从数据存储单元中的Session数据中提取对应的Session字段,将Session字段发给对应的客户端; 数据存储单元,用于根据处理单元的操作更新自身存储的Session字段,以及为处理单元提供Session字段。
15.根据权利要求14所述的Web服务器,其特征在于, 所述处理单元,具体用于将更新后的Session字段及请求报文中的Session ID编写为更新信息,将更新信息发给Session存储服务器。
16.根据权利要求14所述的Web服务器,其特征在于, 所述处理单元,具体用于提取请求报文中的Session ID,根据Session ID确定请求报文对应的Session数据,再根据请求报文中的请求内容从数据存储单元中提取Session字段; 或者,所述处理单元,具体用于提取请求报文中的Session ID,根据Session ID从Session存储服务器中确定请求报文对应的Session数据,Web服务器再根据请求报文中的请求内容从Session存储服务器中Session数据中提取Session字段。
17.根据权利要求14所述的Web服务器,其特征在于, 所述检测单元,还用于实时检测是否收到开始会话的请求,若是,则生成Session ID并将该Session ID发给Session存储服务器,继续实时检测是否收到开始会话的请求;否则,检测自身是否收到请求报文。
18.一种Session存储服务器,其特征在于,所述Session存储服务器包括:信息接收处理单元和Session数据存储单元;其中, 信息收发处理单元,用于将Web服务器发来的更新后的Session字段发送给Session数据存储单元; Session数据存储单元,用于根据信息接收处理单元发来的更新后的Session字段更新对应的Session字段。
19.根据权利要求18所述的Session存储服务器,其特征在于, 所述信息收发处理单元,还用于实时检测是否收到Web服务器发来的更新信息,若收到,则从更新信息中提取Session ID确定本次更新对应的Session数据,再根据更新信息中的更新后的Session字段,更新Session数据存储单元保存的Session字段;若没有收到,则继续实时检测是否收 到Web服务器发来的更新信息。
20.根据权利要求18所述的Session存储服务器,其特征在于, 所述信息收发处理单元,还用于将Web服务器发来的Session ID发送给Session数据存储单兀; 相应的,所述Session数据存储单元,还用于接收并保存信息收发处理单元发来的Session ID。
【文档编号】H04L29/06GK103491057SQ201210192770
【公开日】2014年1月1日 申请日期:2012年6月12日 优先权日:2012年6月12日
【发明者】潘俊, 付章华, 祝明远 申请人:深圳中兴网信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1