一种消息处理方法及服务器的制造方法_2

文档序号:9330366阅读:来源:国知局
户端。
[0058]本发明实施例中,服务器根据获取到的网元操作请求所指示的被操作网元,将获取到的网元操作请求缓存到相应的队列,由于一个队列用于缓存针对同一个网元的网元操作请求,一个队列中缓存的网元操作请求被串行执行,不同队列中缓存的网元操作请求被并行执行,因此使得同一个网元的网元操作请求串行执行,不同网元的网元操作请求并行执行,提高了服务器处理效率。
【附图说明】
[0059]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0060]图1为现有技术中的消息处理系统示意图;
[0061]图2为本发明实施例提供的一种消息处理方法流程示意图;
[0062]图3为本发明实施例提供的一种服务器结构示意图;
[0063]图4为本发明实施例提供的一种消息处理系统示意图。
【具体实施方式】
[0064]本发明实施例提供一种消息处理方法及服务器。本发明实施例中,服务器获取客户端发送的网元操作请求;根据获取到的网元操作请求所指示的被操作网元,将获取到的网元操作请求缓存到相应的队列;其中,一个队列用于缓存针对同一个网元的网元操作请求,一个队列中缓存的网元操作请求被串行执行,不同队列中缓存的网元操作请求被并行执行;将获取到的网元操作请求的执行结果返回给客户端。使得同一个网元的网元操作请求串行执行,不同网元的网元操作请求并行执行,且同步返回各个客户端的网元操作请求的执行结果,提高了服务器处理效率。
[0065]为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0066]图2示出了本发明实施例一提供的一种消息处理方法,包括以下步骤:
[0067]步骤201,服务器获取客户端发送的网元操作请求;
[0068]步骤202,服务器根据获取到的网元操作请求所指示的被操作网元,将获取到的网元操作请求缓存到相应的队列;
[0069]步骤203,服务器将获取到的网元操作请求的执行结果返回给所述客户端。
[0070]较佳地,一个队列用于缓存针对同一个网元的网元操作请求,一个队列中缓存的网元操作请求被串行执行,不同队列中缓存的网元操作请求被并行执行。
[0071]本发明实施例中服务器根据获取到的网元操作请求所指示的被操作网元,将获取到的网元操作请求缓存到相应的队列,由于一个队列用于缓存针对同一个网元的网元操作请求,一个队列中缓存的网元操作请求被串行执行,不同队列中缓存的网元操作请求被并行执行,因此使得同一个网元的网元操作请求串行执行,不同网元的网元操作请求并行执行,提高了服务器处理效率。
[0072]考虑到不同的客户端可能针对同一被操作网元发起相同的网元操作请求,为了提高处理消息,在一个优选实施例中,可只执行一次该请求。
[0073]具体来说,在步骤202中,服务器根据获取到的网元操作请求所指示的被操作网元,确定用于缓存被操作网元的网元操作请求的队列;服务器根据获取到的网元操作请求所指示的被对被操作网元的操作信息,判断确定出的队列中是否包含具有相同操作信息的其他网元操作请求;若判断为否,则将获取到的网元操作请求缓存到所述确定出的队列;若判断为是,则在步骤203中,服务器将所述其他网元操作请求的执行结果作为获取到的网元操作请求的执行结果返回给所述客户端。
[0074]可以看出,当队列中已经缓存了具有相同操作信息的网元操作请求时,只需执行一次该请求,并将执行后的结果共享给各个具有相同操作信息的网元操作请求的客户端,减少了重复的执行过程,提高了服务器的执行效率。
[0075]较佳地,在步骤202中,服务器确定网元操作请求的优先级,并根据网元操作请求的优先级,将获取到的网元操作请求缓存到相应的队列。
[0076]进一步地,根据以下内容之一或组合,确定获取到的网元操作请求的优先级:获取到的网元操作请求发生的时间;获取到的网元操作请求所来源的客户端;获取到的网元操作请求所指示的对被操作网元进行操作的类型;获取到的网元操作请求所指示的对被操作网元进行操作的目标参数。
[0077]根据设定网元操作请求的优先级,首先判断队列中网元操作请求的优先级,队列中优先级高的网元操作请求优先执行,使得处理过程更加合理和有效。
[0078]在实施例中,各个缓存队列也可以预设优先级,作为队列的属性。当服务器的负荷达到设定值的阈值后,根据队列的优先级,优先执行优先级高的队列。
[0079]较佳地,一个网元对应设置有一个队列;或者,一个网元对应设置有第一队列和第二队列,第一队列用于缓存除查询请求以外的网元操作请求,第二队列用于缓存查询请求。若一个网元对应设置有第一队列和第二队列,则在步骤202中,服务器根据获取到的网元操作请求所指示的被操作网元以及针对被操作网元的操作类型,从用于缓存针对所述被操作网元的网元操作请求的第一队列和第二队列中选择一个队列,并将获取到的网元操作请求缓存到所述选择出的队列。
[0080]在实施例中,当查询操作的目标参数和其他网元操作请求的目标参数不一致时,可将查询操作缓存在第二队列中执行,减少了同一个队列的负载和等待时间。
[0081]较佳地,在步骤201中,服务器获取客户端发送的N个网元操作请求,N个网元操作请求来源于一个或多个客户端,N为大于或等于I的整数。在步骤203中,服务器在获得N个网元操作请求的执行结果后,根据N个网元操作请求所来源的客户端,将来自于同一个客户端的网元操作请求的执行结果携带于一个响应消息返回给对应的客户端。
[0082]例如,客户端A下发了 N个网元操作请求,服务器将N个网元操作请求分发到M个队列中,在M个队列执行完N个网元操作请求后,服务器将N个网元操作请求的执行结果汇总,发送给相应客户端A。客户端的网元操作请求的执行结果同步返回,提高执行结果反馈的准确性和效率。
[0083]基于相同的技术构思,本发明实施例还提供一种服务器,该服务器可执行上述方法实施例。本发明实施例提供的服务器如图3所示,包括:
[0084]请求获取模块301,用于获取客户端发送的网元操作请求;
[0085]智能处理模块302,根据获取到的网元操作请求所指示的被操作网元,将获取到的网元操作请求缓存到相应的队列
[0086]结果返回模块303,用于将获取到的网元操作请求的执行结果返回给所述客户端。
[0087]较佳地,一个队列用于缓存针对同一个网元的网元操作请求,一个队列中缓存的网元操作请求被串行执行,不同队列中缓存的网元操作请求被并行执行。
[0088]较佳地,智能处理模块302根据获取到的网元操作请求所指示的被对被操作网元的操作信息,判断确定出的队列中是否包含具有相同操作信息的其他网元操作请求;若判断为否,则将获取到的网元操作请求缓存到确定出的队列;若判断为是,结果返回模块303将其他网元操作请求的执行结果作为获取到的网元操作请求的执行结果返回给客户端。
[0089]可以看出,当队列中已经缓存了具有相同操作信息的网元操作请求时,只需执行一次该请求,并将执行后的结果共享给各个具有相同操作信息的网元操作请求的客户端,减少了重复的执行过程,提高了服务器的执行效率。
[0090]较佳地,智能处理模块302确定
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1