消息接收、推送、传输的方法、装置、服务器组及系统制造方法及图纸

技术编号:9671197 阅读:118 留言:0更新日期:2014-02-14 18:07
本申请涉及一种消息接收、发送、传输的方法及消息接收装置、服务器组和消息传输系统。所述消息接收方法包括:设置用于作为哈希算法的目标对象的服务器组,所述服务器组中包括多个服务器;配置所述服务器组中的多个服务器接收请求消息的负载策略;根据所述负载策略,所述服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请求消息。因此,本申请通过设置服务器组,由服务器组接收到通过一致性哈希算法转发来的请求消息,按照负载策略由服务器组中的一个服务器来接收,从而可以使得服务器的负载均衡。

【技术实现步骤摘要】
消息接收、推送、传输的方法、装置、服务器组及系统
本申请涉及互联网通信领域,尤其涉及一种消息接收方法、消息推送方法、消息传输方法、消息接收装置、服务器组和消息传输系统。
技术介绍
随着互联网的迅速发展,服务器和用户所在的客户端终端上的浏览器之间的消息传输频繁。在面向浏览器的消息传输系统中,有两个过程,第一过程中浏览器端将请求负载到不同服务器上,第二过程中消息推送的系统在消息需要推送的时候,根据用户账户找到用户所在的服务器,由该服务器推送到浏览器上。第一过程的现有的技术方案中,浏览器向服务器发送请求,采用一致性哈希(hash)算法,将用户的请求负载到目标对象服务器上。该方案是将每个服务器划为多个控制点,每个控制点控制一定范围内的请求,例如有10个服务器,每个服务器被划分为16个控制点,则总共有160个控制点。假设使用哈希算法的值的范围为0-16000,则每个控制点控制100个范围,每个服务器控制1600个范围,也就是经过hash计算后,在这1600范围内的请求就被发送到对应的服务器上。但是一致性hash算法有个缺点,尽管每个控制点控制的范围是一样的,但是可能经过hash计算后,处于某个范围内的数据特别多,这样会导致发送到某个服务器上的请求特别多,因此,造成每个服务器上负载不均衡。而第二过程消息推送的系统向浏览器推送消息时,一般需要查找用户所在的服务器,然后将消息推送到相关服务器上,这就存在需要集中存储用户浏览器与服务器的对应关系,从而导致消息推送系统需要维护一个庞大的数据信息,因而导致数据维护繁琐、查找速度缓慢和系统的性能下降。
技术实现思路
本申请提供了一种消息接收的方法、消息推送的方法、消息传输的方法、消息接收装置和服务器组,以解决服务器上的负载不均衡,以及数据维护繁琐、查找速度缓慢和系统的性能下降的问题。为了实现上述,本申请提供了一种消息接收的方法。该方法包括:设置用于作为哈希算法的目标对象的服务器组,所述服务器组中包括多个服务器;配置所述服务器组中的多个服务器接收请求消息的负载策略;根据所述负载策略,所述服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请求消息。本申请提供了一种消息推送的方法。该方法包括:服务器组接收消息推送的系统根据哈希算法推送的下发消息,所述服务器组中包括多个服务器;所述服务器组中的所述多个服务器接收到所述下发消息后,每个服务器检测本身是否为根据负载策略接收请求消息的服务器;当一个服务器确定为所述根据负载策略接收所述请求消息的服务器时,所述确定为所述根据负载策略接收所述请求消息的服务器将所述下发消息发送。本申请提供了一种消息传输的方法。该方法包括:根据负载策略,服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请求消息,所述服务器组中包括多个服务器;所述服务器组接收消息推送的系统根据哈希算法推送的下发消息;所述服务器组中的所述多个服务器接收到所述下发消息后,每个服务器检测本身是否为根据负载策略接收所述请求消息的服务器;当一个服务器确定为所述根据负载策略接收所述请求消息的服务器时,所述确定为所述根据负载策略接收所述请求消息的服务器将所述下发消息发送。本申请提供了一种消息传输的方法。该方法包括:对端服务器根据哈希算法向本端服务器组发送请求消息,所述本端服务器组中包括多个服务器;根据预先配置的负载策略,所述本端服务器组中的一个服务器接收所述请求消息,并向第三端服务器发送;所述第三端服务器根据哈希算法,将下发消息发送给所述本端服务器组中的多个服务器;所述本端服务器组中的所述根据预先配置的负载策略接收所述请求消息的所述服务器,向所述对端服务器发送所述下发消息。本申请提供了一种消息发送的装置,其特征在于,所述装置包括:设置单元,用于设置服务器组,所述服务器组中包括多个服务器;配置单元,用于配置所述服务器组中的多个服务器接收请求消息的负载策略;处理单元,用于根据所述负载策略,所述服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请求消息。本申请提供了一种服务器组,包括多个服务器,所述服务器用于:接收消息推送的系统根据哈希算法推送的下发消息;检测本身是否为根据负载策略接收所述请求消息的服务器;将所述下发消息发送。本申请提供了一种服务器组,包括多个服务器,所述服务器用于:根据负载策略,接收对端服务器根据哈希算法转发的浏览器的请求消息;接收消息推送的系统根据哈希算法推送的下发消息;检测本身是否为根据负载策略接收所述请求消息的服务器;将所述下发消息发送。本申请提供了一种消息传输系统,该系统包括:对端服务器,用于根据哈希算法向本端服务器组转发浏览器的请求消息;所述本端服务器组中包括多个服务器,所述服务器用于根据预先配置的负载策略,接收所述请求消息并向第三端服务器发送,以及向所述对端服务器发送下发消息。所述第三端服务器,用于根据哈希算法,将下发消息发送给所述本端服务器组中的多个服务器。因此,本申请通过设置服务器组,由服务器组接收到通过一致性哈希(hash)算法转发来的请求消息,按照负载策略由服务器组中的一个服务器来接收,从而可以使得服务器的负载均衡;服务器组中的多个服务器接收经过hash算法推送的下发消息,可以达到初步的负载均衡,由原先按照负载策略接收了请求消息的服务器来向浏览器发送而不必维护大量数据,并且可以快捷地发送。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请消息接收、推送、传输的方法适用的应用架构示意图。图2为本申请实施例消息接收的方法的流程图。图3为本申请实施例消息接收的方法的流程图。图4为本申请实施例消息推送的方法的流程图。图5为本申请实施例消息传输的方法的流程图。图6为本申请实施例消息传输的方法的流程图。具体实施方式本申请通过将网页(web)服务器分组设置,并且给每一个服务器组配置负载策略,分组后的服务器组代替现有hash算法中的一个服务器,当经过hash算法计算后,对于属于该服务器组的哈希算法的值的范围内的请求,将被转发至该服务器组,由服务器组根据负载策略接收该请求消息。当消息推送的系统有下发消息需要推送给用户时,利用hash算法将该下发消息推送给服务器组中的所有服务器,而由之前接收了请求消息的服务器将该下发消息下发给用户。下面首先介绍本申请消息接收、推送、传输的方法适用的应用场景示意图。图1为本申请消息接收、推送、传输的方法适用的应用架构。如图1所示,该架构包括多个客户端终端1、多个代理服务器2、多个服务器组3和消息推送的系统4。客户端终端上具有浏览器10,服务器组3中包括多个服务器31、32等。代理服务器2在本申请也被称为对端服务器,该代理服务器用来将用户通过浏览器发起的请求消息经过hash算法转发给web服务器组3(在本申请也被称为服务器组或本端服务器组),由按照负载策略的该服务器组中一个服务器来接收该请求消息,从而完成服务器和终端的一个连接实现消息传输的第一过程。当消息推送的系统4具有下发消息需要推送给用户时,本文档来自技高网...
消息接收、推送、传输的方法、装置、服务器组及系统

【技术保护点】
一种消息接收的方法,其特征在于,所述方法包括:设置用于作为哈希算法的目标对象的服务器组,所述服务器组中包括多个服务器;配置所述服务器组中的多个服务器接收请求消息的负载策略;根据所述负载策略,所述服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请求消息。

【技术特征摘要】
1.一种消息接收的方法,其特征在于,所述方法包括:设置用于作为哈希算法的目标对象的服务器组,所述服务器组中包括多个服务器,其中,所述设置包括设置服务器根据所述服务器组的负载压力调整所述服务器组中的多个服务器;配置所述服务器组中的多个服务器接收请求消息的负载策略;根据所述负载策略,所述服务器组中的主控服务器接收对端服务器根据哈希算法转发的浏览器的请求消息或者侦听由所述对端服务器根据哈希算法转发的浏览器的请求消息待到达;所述服务器组中的主控服务器根据负载策略,选择所述服务器组中满足负载条件的服务器;所述服务器组中的所述满足负载条件的服务器接收所述请求消息。2.如权利要求1所述的消息接收的方法,其特征在于,所述负载策略为选择负载排序靠后的服务器用以发送所述请求消息;所述根据所述负载策略,所述服务器组中的主控服务器根据负载策略,选择所述服务器组中满足负载条件的服务器具体包括:所述服务器组中的主控服务器根据负载策略,轮询所述多个服务器的负载,来选择负载排序靠后的服务器;所述服务器组中的所述满足负载条件的服务器接收所述请求消息具体包括:所述服务器组中的所述负载排序靠后的所述服务器接收所述请求消息,并发送所述请求消息。3.一种消息推送的方法,其特征在于,所述方法包括:服务器组接收消息推送的系统根据哈希算法推送的下发消息,所述服务器组中包括多个服务器,其中,所述服务器组通过设置服务器得到,所述设置包括设置服务器根据所述服务器组的负载压力调整所述服务器组中的多个服务器;所述服务器组中的所述多个服务器接收到所述下发消息后,每个服务器检测本身是否为根据负载策略接收请求消息的服务器;当一个服务器确定为所述根据负载策略接收所述请求消息的服务器时,所述确定为所述根据负载策略接收所述请求消息的服务器将所述下发消息发送。4.一种消息传输的方法,其特征在于,所述方法包括:根据负载策略,服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请求消息,所述服务器组中包括多个服务器,其中,所述服务器组通过设置服务器得到,所述设置包括设置服务器根据所述服务器组的负载压力调整所述服务器组中的多个服务器;所述服务器组接收消息推送的系统根据哈希算法推送的下发消息;所述服务器组中的所述多个服务器接收到所述下发消息后,每个服务器检测本身是否为根据负载策略接收所述请求消息的服务器;当一个服务器确定为所述根据负载策略接收所述请求消息的服务器时,所述确定为所述根据负载策略接收所述请求消息的服务器将所述下发消息发送。5.如权利要求4所述的消息传输的方法,其特征在于,所述负载策略为轮询表,所述轮询表用于指示根据所述轮询表中排布好的所述服务器的顺序,所述服务器组中的多个服务器轮流接收所述请求消息。6.如权利要求4所述的消息传输的方法,其特征在于,所述负载策略为选择负载排序靠后的服务器用以发送所述请求消息;所述根据所述负载策略,所述服务器组中的一个服务器接收对端服务器根据哈希算法转发的浏览器的请...

【专利技术属性】
技术研发人员:张乐伟
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1