一种报文数据处理方法和装置、以及计算机设备与流程

文档序号:17147901发布日期:2019-03-19 23:09阅读:126来源:国知局
本发明涉及计算机领域,尤其涉及一种报文数据处理方法和装置、以及计算机设备。
背景技术
::随着用户数量的增加,用户需求越来越多样化,需要使用大量的服务器来保证为大量的用户需求提供服务。例如,能够为医院提供风控智能审核服务的服务系统,在接收到医院客户端发送的审核请求之后,审核就医行为中的违规、欺诈、滥用的现象,如根据处方判断是否滥用药品等。随着接入客户端的数量增多,请求也变多,并发的请求数量很大,导致服务系统提供审核服务的能力下降。在服务器的cpu负载上升的情况下,部分客户端容易因服务器在短时间内未响应其发送的请求,而向服务器重复发送请求报文,造成服务器宕机。针对相关技术中的服务系统由于需求方的系统错误导致服务器容易崩溃的技术问题,目前尚未提出有效的解决方案。技术实现要素:有鉴于此,本发明实施例提供了一种报文数据处理方法和装置、以及计算机设备,用以解决相关技术中的服务系统由于需求方的系统错误导致服务器容易崩溃的技术问题。一方面,本发明实施例提供了一种客户端进行交互的服务方法,包括:监控至少两个客户端在目标时段内的报文数据发送行为;基于报文数据发送行为,从至少两个客户端中确定出目标客户端,目标客户端为报文数据发送行为存在异常状态的客户端;禁止响应目标客户端发送的报文数据。另一方面,本发明实施例提供了一种客户端进行交互的服务装置,包括:监控单元,用于监控至少两个客户端在目标时段内的报文数据发送行为;确定单元,用于基于报文数据发送行为,从至少两个客户端中确定出目标客户端,其中,目标客户端为报文数据发送行为存在异常状态的客户端;执行单元,用于禁止响应目标客户端发送的报文数据。另一方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,当处理器执行计算机程序时实现本发明实施例的客户端进行交互的服务方法。再一方面,本发明实施例还提供了一种存储介质,本发明实施例的存储介质包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行本发明实施例的客户端进行交互的服务方法。上述技术方案中的任意一个技术方案具有如下有益效果:通过在监控到某个客户端的发送行为存在异常的情况下,禁止对目标客户端发送的报文数据进行响应,解决了相关技术中由于服务需求量增多,导致服务系统可靠性降低的技术问题,仅对监控到异常行为的客户端停止服务,达到了提高服务系统可靠性的技术效果。【附图说明】为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。图1是本发明实施例所提供的一种可选的客户端进行交互的服务方法的流程示意图;图2是本发明实施例所提供的一种可选的客户端进行交互的服务装置的示意图;图3是本发明实施例提供的一种计算机设备的组成框图。【具体实施方式】为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。需要说明的是,尽管在本发明的权利要求书、说明书和附图中可能采用术语第一、第二、第三等来用于区别类似的对象xxx,应当理解,术语第一、第二、第三等不必用于描述特定的顺序或先后次序,仅用来将这些类似的对象xxx彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一xxx也可以被称为第二xxx,类似地,第二xxx也可以被称为第一xxx。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。针对现有技术中所存在的相关技术中的服务系统由于需求方的系统错误导致服务器容易崩溃的技术问题,本发明实施例提供了如下解决思路:监控至少两个客户端在目标时段内的报文数据发送行为;基于报文数据发送行为,从至少两个客户端中确定出目标客户端,目标客户端为报文数据发送行为存在异常状态的客户端;禁止响应目标客户端发送的报文数据。在该思路的引导下,本方案实施例提供了以下可行的实施方案。本发明实施例提供了一种客户端进行交互的服务方法。具体的,请参考图1,其为本发明实施例所提供的一种可选的客户端进行交互的服务方法的流程示意图,如图1所示,该方法包括以下步骤:步骤101,监控至少两个客户端在目标时段内的报文数据发送行为;步骤102,基于报文数据发送行为,从至少两个客户端中确定出目标客户端,其中,目标客户端为报文数据发送行为存在异常状态的客户端;步骤103,禁止响应目标客户端发送的报文数据。本发明实施例提供的方法通过监控每个客户端在当前时刻之前的一个时段内的发送行为,例如,发送的频率、发送的报文数据的大小、报文数据的重复次数等等,进而判断每个客户端在对应时段内的发送行为是否异常。如果判断出某一个或多个客户端的发送行为处于异常状态,例如,如果某客户端发送频率超过预设频率、或者连续发送30个超过500kb大小的报文数据等等,确定对应的的客户端处于异常状态,继续接收和存储每个客户端发送的数据,但是停止对处于异常状态的客户端提供服务,仅对不处于异常状态的客户端提供对应的服务。通过本发明实施例提供的方法,解决了相关技术中由于服务需求量增多,导致服务系统可靠性降低的技术问题,服务器仅对监控到异常行为的客户端停止服务,达到了提高服务系统可靠性的技术效果。需要说明的是,步骤101~步骤103的执行主体为与客户端进行交互的服务器。实现本实施例中的方法步骤,具体可以通过在服务器中配置相关的应用或该应用中配置插件或软件开发工具包(softwaredevelopmentkit,sdk)等功能单元实现上述方法步骤。可以理解的是,所述应用可以是安装在终端上的应用程序(nativeapp),或者还可以是终端上的浏览器的一个网页程序(webapp),本发明实施例对此不进行限定。可选的,本发明实施例中所涉及的终端可以包括但不限于个人计算机(personalcomputer,pc)、个人数字助理(personaldigitalassistant,pda)、无线手持设备、平板电脑(tabletcomputer)、手机、mp3播放器、mp4播放器等。可选的,可以对每个客户端在目标时段内报文数据发送次数进行监控,根据每个客户端的发送次数判断对应的客户端是否行为异常。具体的,在监控至少两个客户端在目标时段内的报文数据发送行为时,可以记录每个客户端在目标时段内发送报文数据的次数,进而,在基于报文数据发送行为,从至少两个客户端中确定出目标客户端时,确定在目标时段内发送报文数据的次数超过预设次数的客户端为目标客户端。进一步可选的,可以监控每个客户端在目标时段内发送的报文数据是否超过预设大小的报文数据,并记录发送超过预设大小报文数据的发送次数的方式,根据发送超过预设大小报文数据的发送次数来判断对应客户端是否行为异常。具体的,在监控每个客户端在目标时段内的报文数据发送行为时,可以记录每个客户端在目标时段内发送超过预设大小的报文数据的次数,进而,确定在目标时段内发送超过预设大小的报文数据的次数超过预设次数的客户端为目标客户端。可选的,可以通过redis远程数据服务器对每个客户端发送报文数据的次数进行计数,进而,分别判断每个客户端在目标时段内发送报文数据的次数是否超过预设次数。具体的,可以包括如下步骤:步骤201,调用redis远程数据服务器的历史计数记录;步骤202,基于历史计数记录,确定每个客户端在目标时长内发送报文数据的平均次数,其中,目标时长为目标时段的长度;步骤203,确定在目标时段内发送报文数据的次数与平均次数相差超过预设阈值的客户端为目标客户端。例如,对于至少两个客户端中的第一客户端,基于历史计数记录确定,第一客户端在历史记录中,平均每3分钟内发送200次报文数据,也即,平均次数为200次。而通过redis远程数据服务器记录第一客户端在当前时刻之前的3分钟内(目标时段)接收到1000次报文数据,第一客户端在目标时段内接收到的报文数据的次数与平均次数之差为800次,超过预设阈值300次,进而,判断出第一客户端存在异常的发送行为,处于异常状态。可选的,禁止响应目标客户端发送的报文数据的步骤,可以包括:步骤301,禁止响应目标客户端在目标时段内发送的报文数据中未被响应的报文数据;步骤302,禁止响应目标客户端在目标时段之后的预设时间范围内发送的报文数据。例如,服务器对每个客户端(医院)提供审核服务,服务器用于响应每个客户端发送的待审核的报文数据。服务器在接收到医院发送的审核请求之后,审核就医行为中的违规、欺诈、滥用的现象,如根据处方判断是否滥用药品等。服务器通过redis记录每一家医院在最近3分钟内发送超过500kb大小的报文数据的次数。如果某一家医院最近3分钟内发送超过500kb大小的报文数据的次数达到1000次,与3分钟内发送报文数据平均次数超过预设阈值,也即,与该医院的历史发送行为相差较大,则认为该医院存在异常发送行为,停止对该医院的服务,禁止响应目标客户端发送的报文数据。在当前时刻之后的30分钟内仅接收并存储该医院的报文数据,不对该医院发送的报文数据执行审核。在30分钟之后自动解除对该医院的服务限制,继续为该医院提供审核服务。需要说明的是,上述步骤302中所述的预设时间范围的确定方法可以是根据每个客户端的的优先等级来确定,例如,如果某一家医院的优先等级较高,停止服务的时间太长可能会给医院造成较大损失,则应当尽快的及时恢复提供服务。或者,还可以获取历史记录的每个客户端的解除异常的处理时间,基于历史异常处理时间确定发生了异常行为的客户端可能解除掉异常的时间确定预设时间范围。再如,可选的,如果目标客户端在被停止服务之后,有需要紧急处理的报文数据,目标客户端还可以在报文数据中添加紧急标识,以请求服务器优先响应,服务器在识别出紧急标识之后,如果确定目标客户端具有对应的权限(如某医院为部队医院),和/或,基于报文数据判断出满足一定的条件(如识别出报文数据携带有患者是服役军人身份的信息),则确定可以对该报文数据优先提供审核服务,响应报文数据对目标客户端进行反馈。在从至少两个客户端中确定出目标客户端之后,还可以向目标客户端发送提示信息,以提示目标客户端发送的报文数据已被禁止响应。需要说明的是,上述的方法可以是通过应用层实现,例如,上述方法的一种可选的硬件环境为,服务器是分布式的服务器集群,包括多个服务器,在每个服务器中均布局有能够实现本发明实施例提供的方法的应用。每个客户端通过调用服务器集群的应用接口,将报文数据发送至服务器,请求服务器提供服务,响应发送的报文数据。服务器通过多个服务器之一来处理目标客户端的报文数据。由于每个服务器均布局有能够实现上述方法的应用,因此,接收到报文数据的服务器可以与redis远程数据服务器通信,通过redis远程数据服务器监控和记录目标客户端的行为,进而,该服务器可以调取redis远程数据服务器的记录,并基于redis远程数据服务器反馈的监控结果,判断每个客户端是否存在异常行为。如果确定出异常,则停止向对应的客户端提供目标服务。进一步地,该服务器还可以与服务器集群中的其它服务器发送通知,以通知其它服务器目标客户端存在异常行为。因此,本发明实施例提供的方法能够从应用层上拦截存在异常行为的客户端的请求,禁止响应目标客户端的报文数据。需要说明的是,在上述应用场景中,一个客户端发送的每个报文数据可以发送给不同的服务器,或者,也可以预先指定一个客户端发送的所有报文数据均发送给某一个指定的服务器,本发明对此不做具体限制。本发明实施例的客户端进行交互的服务方法至少具有以下有益效果:通过在监控到某个客户端的发送行为存在异常的情况下,禁止对目标客户端发送的报文数据进行响应,解决了相关技术中由于服务需求量增多,导致服务系统可靠性降低的技术问题,仅对监控到异常行为的客户端停止服务,达到了提高服务系统可靠性的技术效果。基于本发明实施例所提供的客户端进行交互的服务方法,本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。请参考图2,其为本发明实施例所提供的一种可选的客户端进行交互的服务装置的功能方块图。如图2所示,该装置包括:监控单元10、确定单元20和执行单元30。其中,监控单元,用于监控至少两个客户端在目标时段内的报文数据发送行为;确定单元,用于基于报文数据发送行为,从至少两个客户端中确定出目标客户端,其中,目标客户端为报文数据发送行为存在异常状态的客户端;执行单元,用于禁止响应目标客户端发送的报文数据。作为本实施例一种可选的实施方式,监控单元包括:记录模块,用于记录每个客户端在目标时段内发送报文数据的次数;确定单元包括:第一确定模块,用于确定在目标时段内发送报文数据的次数超过预设次数的客户端为目标客户端。作为本实施例一种可选的实施方式,记录模块还用于记录每个客户端在目标时段内发送超过预设大小的报文数据的次数。作为本实施例一种可选的实施方式,记录模块包括:计数模块,用于通过redis远程数据服务器对每个客户端发送报文数据的次数进行计数;第一确定模块包括:调用模块,用于调用redis远程数据服务器的历史计数记录;第二确定模块,用于确定每个客户端在目标时长内发送报文数据的平均次数,其中,目标时长为目标时段的长度;第三确定模块,用于确定在目标时段内发送报文数据的次数与平均次数相差超过预设阈值的客户端为目标客户端。作为本实施例一种可选的实施方式,执行单元包括:第一执行模块,用于禁止响应目标客户端在目标时段内发送的报文数据中未被响应的报文数据;第二执行模块,用于禁止响应目标客户端在目标时段之后的预设时间范围内发送的报文数据。作为本实施例一种可选的实施方式,该装置还包括:第四确定模块,用于在第二执行模块禁止响应目标客户端在目标时段之后的预设时间范围内发送的报文数据之前,根据目标客户端的优先等级和/或历史异常处理时间确定预设时间范围。作为本实施例一种可选的实施方式,该装置还包括:发送模块,用于在确定单元从至少两个客户端中确定出目标客户端之后,,向目标客户端发送提示信息,其中,提示信息用于提示目标客户端发送的报文数据已被禁止响应。由于本实施例中的各单元能够执行图1所示的客户端进行交互的服务方法,本实施例未详细描述的部分,可参考对图1对应实施例的相关说明。本发明实施例的客户端进行交互的服务装置至少具有以下有益效果:通过在监控到某个客户端的发送行为存在异常的情况下,禁止对目标客户端发送的报文数据进行响应,解决了相关技术中由于服务需求量增多,导致服务系统可靠性降低的技术问题,仅对监控到异常行为的客户端停止服务,达到了提高服务系统可靠性的技术效果。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。所属领域的技术人员可以理解,实现上述实施例方法中的全部或部分步骤可以是通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,计算机通过读取存储介质中的程序进而能够执行本发明实施例提供的客户端进行交互的服务方法。相应的,本发明实施例还提供了一种计算机设备,如图3所示,本发明实施例提供的计算机设备包括存储器21、处理器22以及存储在存储器21中并可在处理器22上运行的计算机程序,处理器22执行计算机程序时实现前述任一项的客户端进行交互的服务方法。相应的,本发明实施例还提供了一种存储介质,本发明实施例的存储介质包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如下步骤:监控至少两个客户端在目标时段内的报文数据发送行为;基于报文数据发送行为,从至少两个客户端中确定出目标客户端,目标客户端为报文数据发送行为存在异常状态的客户端;禁止响应目标客户端发送的报文数据。本发明实施例的存储介质至少具有以下有益效果:通过在监控到某个客户端的发送行为存在异常的情况下,禁止对目标客户端发送的报文数据进行响应,解决了相关技术中由于服务需求量增多,导致服务系统可靠性降低的技术问题,仅对监控到异常行为的客户端停止服务,达到了提高服务系统可靠性的技术效果。在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1