服务调用方法和设备与流程

文档序号:25279445发布日期:2021-06-01 17:25阅读:76来源:国知局
服务调用方法和设备与流程
本申请涉及金融科技(fintech)
技术领域
,尤其涉及一种服务调用方法和设备。
背景技术
:随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技转变。例如:金融类应用程序产品用于为用户提供服务。用户通过客户端正常使用该金融应用程序产品时,所发起的调用请求是合法的。但用户高频访问但并未使用应用程序所提供服务时,所发起的调用请求是不合法的,需要及时拦截。通常情况下,对不合法的调用请求拦截是采用黑名单机制,在黑名单中记录有客户端ip地址,当发起该调用请求的客户端的ip地址在黑名单内时进行拦截。也就是不合法的调用请求必须记录在黑名单中,而没有记录的不合法的调用请求无法限制。并且,在拦截的前期,由于程序产品的数据量不足,需要购买已知的黑名单数据库。然而,现有的黑名单技术不能实时拦截不在黑名单中非法请求,且使用ip地址拦截因素单一,容易出现错误拦截,购买已知的黑名单数据库不能针对不同业务场景进行针对化的拦截。技术实现要素:本申请提供一种服务调用方法和设备,旨在提供一种实时准确拦截非正常请求且可以适用于不同业务场景的技术方案。第一方面,本申请提供一种服务调用方法,方法应用于服务器,方法包括:获取多个正常调用样本和同一请求源发起的调用请求;其中,预设时间段是从开始时刻至当前时刻的时间段;计算同一请求源发起的调用请求和多个正常调用样本的相似度;当相似度满足预设相似度要求时,响应请求源发起的调用请求。可选地,计算同一请求源发起的调用请求和正常调用样本的相似度,具体包括:对同一请求源发起的调用请求进行用户行为分析,获得第一行为数据;获取多个正常调用样本的第二行为数据;根据第一行为数据和多个第二行为数据,计算相似度。可选地,对同一请求源发起的调用请求进行用户行为分析获得第一行为数据,具体包括以下至少一项:对同一请求源发起的调用请求进行用户活跃度分析,获得活跃度评估值;对同一请求源发起的调用请求进行用户参与度分析,获得参与度评估值;对同一请求源发起的调用请求进行用户价值分析,获得价值评估值。可选地,对同一请求源发起的调用请求进行用户活跃度分析获得活跃度评估值,具体包括以下至少一项:统计在具有同一用户标识和同一接口标识的调用请求的数量;统计在具有同一设备标识和同一接口标识的调用请求的数量;统计在具有同一设备标识的调用请求所请求调用的接口数量;其中,同一请求源包括同一设备标识的客户端或者同一用户标识的客户端。可选地,对同一请求源发起的调用请求进行用户参与度分析获得参与度评估值,具体包括:根据同一请求源发起的调用请求确定同一请求源的调用路径的路径长度;将同一请求源的最长调用路径的路径长度作为参与度评估值。可选地,对同一请求源发起的多次调用请求进行用户价值分析获得价值评估值,具体包括:根据同一请求源发起的多次调用请求确定同一请求源的调用路径;根据调用路径中各节点的单个价值获得所有调用路径的总价值;根据所有调用路径的总价值和单个价值大于零的节点数,计算单个价值大于零的节点的平均价值;其中,价值评估值包括单个价值大于零的节点的平均价值。在上述技术方案中,通过对调用数据从用户参与度、用户活跃度以及用户产生价值三个方面进行用户行为分析,可根据应用场景的自身特性灵活加入行为分析因素,实现全方位的保护系统安全。根据调用请求的行为数据和正常调用样本的行为数据计算相似度,行为数据可以反映不同业务场景的特征,可以应用于不同使用场景。可选地,根据第一行为数据和多个第二行为数据计算相似度,具体包括:针对每个第二行为数据,计算第一行为数据和第二行为数据的第一欧式距离;从多个第一欧式距离中选择按从小到大的顺序排列时前k个第一欧式距离,并计算k个第一欧式距离的平均值;其中,k个第一欧式距离的平均值为相似度,k为正整数。可选地,当相似度满足预设相似度要求时,响应请求源发起的调用请求,具体包括:针对每个正常调用样本,计算正常调用样本的第二行为数据和其他正常调用样本的第二行为数据之间第二欧式距离;针对每个非正常调用样本,计算非正常调用样本的第四行为数据和其他正常调用样本的第二行为数据之间第三欧式距离;根据第二欧式距离的分布情况和第三欧式距离的分布情况确定预设距离阈值;当k个第一欧式距离的平均值小于预设距离阈值时,响应请求源发起的调用请求。可选地,方法还包括:针对每个正常调用样本,从多个第二欧式距离中选择按从小到大的顺序排列时前k个第二欧式距离,并计算k个第二欧式距离的平均值;针对每个非正常调用样本,从多个第三欧式距离中选择按从小到大的顺序排列时前k个第三欧式距离,并计算k个第三欧式距离的平均值;统计k个第二欧式距离的平均值的分布情况,获得第二欧式距离的分布情况,并统计k个第三欧式距离的平均值的分布情况,获得第三欧式距离的分布情况。在上述技术方案中,通过获取正常调用样本到正常调用样本之间的欧式距离分布,以及非正常调用样本到正常调用样本之间的欧式距离分布,以准确根据分布情况确定距离阈值,进而准确判断调用请求所属类型,提高非正常请求的拦截准确率。可选地,获取正常调用样本,具体包括:获取样本数据,其中,样本数据包括:历史时间段内同一请求源发起的历史请求;对样本数据进行用户行为分析,获得第三行为数据;若第三行为数据满足正常请求条件时,样本数据为正常调用样本。可选地,获取同一请求源发起的调用请求,具体包括:接收网关设备转发的同一请求源发起的调用请求;其中,调用请求是网关设备在判断调用请求的标识信息不存在于预设非正常请求的标识列表中时转发的。在上述技术方案中,可根据判定结果实时更新非正常请求标识列表,无需购买已知的黑名单数据库,由网关设备根据非正常请求标识列表对调用请求进行初步筛选,减少服务器数据处理量,提升实时拦截效率。第二方面,本申请提供一种服务器,包括:存储器,处理器;存储器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行第一方面及可选方案所涉及的服务调用方法。第三方面,本申请一种服务调用系统,包括第二方面所涉及的服务器、网关设备和客户端。第四方面,本申请一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现第一方面及可选方案所涉及的服务调用方法。第五方面,本申请一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面及可选方案所涉及的服务调用方法。本申请提供的服务调用方法和设备,获取一定时间段内同一请求源发起的调用请求,通过计算调用请求和正常请求样本的相似度,并根据相似度确定该调用请求是否为正常请求,可实现请求实时拦截,及时保护系统,减少人工干预。且通过判断调用请求是否为正常请求,可以避免由于使用一次调用请求进行判定出现误判情况。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。图1为本申请一实施例提供的服务调用系统的结构示意图;图2为本申请另一实施例提供的服务调用方法的流程示意图;图3为本申请另一实施例提供的服务调用方法的流程示意图;图4为本申请另一实施例提供的服务调用方法的数据流图;图5为本申请提供的用户画像分析示意图;图6为本申请提供的调用路径示意;图7为本申请提供的服务调用装置的结构示意图;图8为本申请提供的服务器的结构示意图。通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在金融应用程序产品中,若是用户通过客户端正常的访问金融应用程序产品,用户操作行为是合法行为。但用户若通过客户端对金融应用程序产品进行非正常操作,例如:不断的访问金融应用程序产品接口,但该操作行为并不是用于享受应用程序所提供各种服务,针对这种异常的高频访问行为,会占用金融应用程序产品正常的业务资源,导致正常使用的用户受到影响。为解决上述技术问题,本申请提供一种服务调用方法和设备。本申请的技术构思:获取在一段时间内的调用请求,并对调用请求从产生价值、参与度和活跃度等多个方面进行用户行为分析,以获得用户行为数据,再根据用户行为数据判定是否为正常请求或者非正常请求,可以实时拦截异常,可以防止简单通过某一信息对用户请求拦截而导致错误拦截的问题,可以实现更加精准拦截非正常请求。此外,计算调用请求的用户数据和正常调用样本的用户请求的相似度,根据相似度判定是否为正常请求,根据调用请求的行为数据和正常调用样本的行为数据计算相似度,行为数据可以反映不同业务场景的特征,可以适应不同业务场景。如图1所示,本申请一实施例提供一种服务调用系统,该服务调用系统包括服务器101、网关设备102以及客户端103。服务器101通过网关设备102和客户端103之间通信连接。客户端103用于向网关设备102发送调用请求,网关设备102在接收到客户端103的调用请求后,判断调用请求内标识信息是否在非正常申请的标识信息列表中,若是,则停止响应该调用请求。若否,由网关设备102向服务器101转发调用请求,该调用请求用于调用服务器的接口。服务器继续计算多个调用请求和正常调用样本的相似度,在相似度满足预设相似度条件时,响应当前时刻发起的调用请求,以实现实时阻拦非正常请求,也能适应不同业务场景。如图2所示,本申请一实施例提供一种服务调用方法,该服务调用方法应用于图1所示的服务调用系统,该服务调用方法具体包括如下步骤:s201、服务器获取多个正常调用样本和同一请求源发起的调用请求。其中,将同一个请求源在历史时间段内发起的至少一次历史调用请求作为样本数据,并根据历史数据确定上述历史调用请求是否为正常调用请求。从样本数据中选出属于正常调用请求的样本数据,并将其作为正常调用样本。同一请求源是指调用请求中用于唯一标识该请求的标识信息是相同的,则这些调用请求来自于同一请求源。获取同一请求源在某一时间段内发起的多次调用请求。s202、服务器计算同一请求源发起的多个调用请求和多个正常调用样本的相似度。其中,针对每个正常调用样本,计算同一请求源发起的多次调用请求和一个正常调用样本的相似度,获得多个相似度。s203、判断相似度是否满足预设相似度要求,若是,进入s204,否则,进入s205。其中,当相似度的数值越高,表示调用请求和正常调用样本相似度越高。则预设相似度要求为相似度达到预设相似度阈值。当相似度的数值越低,表示调用请求和正常调用样本相似度越高。则预设相似度要求为相似度小于预设相似度阈值。s204、响应请求源发起的调用请求。其中,当相似度满足预设相似度要求时,表示调用请求和正常调用样本相似度越高,则说明该调用请求为正常调用请求,服务器响应该请求源发起的调用请求。s205、拒绝请求源发起的调用请求。在上述技术方案中,通过计算同一请求源在发起的调用请求与正常调用样本之间相似度,根据相似度判断请求源发起的调用请求是否为正常请求,并在请求源发起的调用请求为正常请求时响应该调用请求,本方案可实现实时拦截非正常请求,根据调用请求的行为数据和正常调用样本的行为数据计算相似度,行为数据可以反映不同业务场景的特征,可以适应不同业务,且通过判断调用请求是否为正常请求,可以避免由于使用一次调用请求进行判定出现误判情况。如图3和图4所示,本申请另一实施例提供一种服务调用方法,该方法应用于上述图1的服务调用系统,该服务调用方法包括如下步骤:s301、网关设备接收客户端设备发送的调用请求。s302、网关设备判断调用请求的标识信息不在预设非正常请求的标识列表中,转发调用请求。其中,调用请求的标识信息用于唯一标识调用请求,通常使用客户端的设备标识和/或用户账户信息。非正常请求的标识列表是动态更新的,由服务器实时判断客户端发起的调用请求是否为正常请求,在判断调用请求为非正常请求时,向网关设备发送调用请求的标识信息,以实时更新非正常请求的标识列表。根据判定结果实时更新非正常请求标识列表,无需购买已知的黑名单数据库,由网关设备根据非正常请求标识列表对调用请求进行初步筛选,减少服务器数据处理量,提升实时拦截效率。s303、服务器获取多个正常调用样本和同一请求源发起的多次调用请求。其中,在获取正常调用样本时,获取样本数据,其中,样本数据包括历史时间段内同一请求源发起的历史请求,对样本数据进行用户行为分析获得第三行为数据,若第三行为数据满足正常请求条件时,该样本数据为正常调用样本。用户行为分析在s304中详细说明,此处不再赘述。第三行为数据包括参与度评估值、活跃度评估值和价值评估值,当活跃度评估值小于第一活跃度阈值时,该样本数据为正常调用样本。当活跃度评估值小于第二活跃度阈值,且参与度评估值高于参与度阈值,或者,当活跃度评估值小于第二活跃度阈值,且价值评估值高于价值阈值,该样本数据为正常调用样本。s304、计算同一请求源发起的多次调用请求和多个正常调用样本的相似度。其中,在计算同一请求源发起的多次调用请求和正常调用样本的相似度时,对同一请求源发起的多次调用请求进行用户行为分析获得第一行为数据,并获取多个正常调用样本的第二行为数据,根据第一行为数据和多个第二行为数据计算相似度。如图5,在对同一请求源发起的多次调用请求进行用户行为分析时,可以从用户活跃频次、用户访问深度以及产生价值三个方面进行分析,以整体反应用户画像数据。更具体地,采用以下至少一项对同一请求源发起的多次调用请求进行用户行为分析:对同一请求源发起的多次调用请求进行用户活跃度分析获得活跃度评估值。对同一请求源发起的多次调用请求进行用户参与度分析获得参与度评估值。对同一请求源发起的多次调用请求进行用户价值分析,获得价值评估值。第一行为数据包括活跃度评估值、参与度评估值以及价值评估值中一种或者多种组合。其中,用户活跃度可以通过访问频次来体现。更具体地,采用以下至少一项同一请求源发起的调用请求进行用户活跃度分析:统计在具有同一用户标识和同一接口标识的调用请求的数量。统计在具有同一设备标识和同一接口标识的调用请求的数量。统计在具有同一设备标识的调用请求所请求调用的接口数量。同一请求源包括同一设备标识的客户端或者同一用户标识的客户端。通过统计在具有同一用户标识和同一接口标识的调用请求的数量,可以反映同一个用户对同一接口的访问频次,当访问频次过高,则可以反映该用户属于使用客户端非正常访问服务器。通过在具有同一设备标识和同一接口标识的调用请求的数量,可以反映同一设备对同一接口的访问频次,当访问频次过高,则可以反映该客户端非正常访问服务器。通过统计在具有同一设备标识的调用请求所请求调用的接口数量,可以反映同一设备对服务器的访问频次,当访问频次过高,则可以反映该客户端非正常访问服务器。通过从用户层次、设备层次以及接口层次统计对服务器的访问次数,可以反映是否是正常请求。其中,用户参与度可以最长调用路径来确定,更具体地,在对同一请求源发起的多次调用请求进行用户参与度分析时,根据同一请求源发起的多次调用请求确定同一请求源的调用路径的路径长度,将同一请求源的最长调用路径的路径长度作为参与度评估值。在确定同一请求源的调用路径的路径长度时,预先设置每个节点所在层次,并设置可以相互跳转的两个节点之间的路径长度。如图6所示,分为三个层次的节点,且两个节点之间的路径长度已经标记在图中。根据同一请求源发起的多次调用请求确定请求源调用各个节点的顺序,根据请求源的节点调用顺序确定请求源的调用路径。再根据两个节点之间的路径长度确定各个调用路径的路径长度。例如:为1a-2a-1a-3b,可以确定两条调用路径:0-1a-2a和0-1a-3b。并根据图6上标记的两个节点之间的路径长度,确定两条调用路径长度为3和4,则可以确定参与度评估值为4。其中,价值评估值可以用调用请求带来的价值确定,通过统计各个调用请求的带来价值获得用户评估值。为更加准确反应调用请求所产生的产值,此处以所有调用路径中单个价值大于零的节点的的平均价值作为价值评估值。更具体地,在对同一请求源发起的多次调用请求进行用户价值分析时,预先设置各个节点的单个价值,根据同一请求源发起的多次调用请求确定同一请求源的调用路径,根据调用路径中各节点的单个价值获得所有调用路径的总价值。其中,先根据各节点的单个价格计算每个调用路径的价值,再计算获得所有调用路径的总价值,根据所有调用路径的总价值和单个价值大于零的节点数计算单个价值大于零的节点的平均价值,并将单个价值大于零的节点的平均价值作为价值评估值。根据所有调用路径的总价值和单个价值大于零的节点数,计算单个价值大于零的节点的平均价值,并将其作为价值评估值,可以避免单个节点的单个价值过高抬高价值评估值,导致过高评估用户产生价值,也可以避免价值为零的节点拉低价值评估值,导致过低评价用户产生价值,最终实现准确评估用户产生价值。采用同样方式计算获得每个正常调用样本的第二行为数据。在获得第一行为数据和第二行为数据后,针对每个第二行为数据,计算第一行为数据和第二行为数据的第一欧式距离,从多个第一欧式距离中选择按从小到大的顺序排列时前k个第一欧式距离,并计算k个第一欧式距离的平均值,将k个第一欧式距离的平均值为相似度,k为正整数。s305、当相似度满足预设相似度要求时,响应请求源发起的调用请求。其中,当k个第一欧式距离的平均值小于预设距离阈值时,说明调用请求为正常调用请求,则响应请求源发起的调用请求。预设距离阈值作为评价是否正常请求的门槛值,采用如下方式获得:获取多个正常调用样本d1和多个非正常调用样本d2。针对每个正常调用样本d1,计算正常调用样本d1的第二行为数据和其他正常调用样本d1的第二行为数据之间第二欧式距离。针对每个非正常调用样本d2,计算非正常调用样本d2的第四行为数据和其他正常调用样本d1的第二行为数据之间第三欧式距离。获取第二欧式距离的分布情况和第三欧式距离的分布情况,根据第二欧式距离的分布情况和第三欧式距离的分布情况确定预设距离阈值。优选地,预设距离阈值位于第二欧式距离的边界值和第三欧式距离的边界值之间,可选为两个边界值中的任一个,或者是中间值,具体不做限定。通过获取正常调用样本到正常调用样本之间的欧式距离分布,以及非正常调用样本到正常调用样本之间的欧式距离分布,以准确根据分布情况确定距离阈值,进而准确判断调用请求所属类型,提高非正常请求的拦截准确率。更具体地,在获取多个第二欧式距离的分布情况和多个第三欧式距离的分布情况时,针对每个正常调用样本,从多个第二欧式距离中选择按从小到大的顺序排列时前k个第二欧式距离,并计算k个第二欧式距离的平均值。针对每个非正常调用样本,从多个第三欧式距离中选择按从小到大的顺序排列时前k个第三欧式距离,并计算k个第三欧式距离的平均值。其中,第二欧式距离的分布情况包括k个第二欧式距离的平均值的分布情况,第三欧式距离的分布情况包括k个第三欧式距离的平均值的分布情况。统计k个第二欧式距离的平均值的分布情况,获得第二欧式距离的分布情况,并统计k个第三欧式距离的平均值的分布情况,获得第三欧式距离的分布情况。s306、服务器向网关设备发送响应结果。s307、网关设备转发响应结果。s308、当相似度满足预设相似度要求时,服务器更新非正常调用请求标识列表。当相似度不满足预设相似度要求时,该调用请求为非正常调用,从调用请求中提取标识信息,例如:发起调用请求的设备标识或者用户标识,并将该标识信息增加至非正常调用请求标识列表中。在上述技术方案中,从用户活跃度、用户参与度以及用户产生价值三个维度中至少一个维度中对调用请求进行评价,获得行为数据,该行为数据可以反映是否为正常请求,计算调用请求的行为数据和正常调用请求的行为数据之间的欧式距离,以判定该调用请求是否为正常调用请求,在欧式距离小于预设距离阈值时响应调用请求,可实现实时阻拦非正常申请,根据调用请求的行为数据和正常调用样本的行为数据计算相似度,行为数据可以反映不同业务场景的特征,可以适应不同业务。下面以客户端中金融应用程序向服务器发起请求为例,说明本申请另一实施例提供一种服务调用方法,该服务调用方法应用于上述服务调用系统,该服务调用方法具体包括如下步骤:s401、网关设备接收客户端设备发送的调用请求。其中,客户端内金融应用程序发起调用请求,并发送至网关设备。s402、网关设备判断调用请求的标识信息不在预设非正常请求的标识列表中,转发调用请求。其中,网关设备确定该金融程序发起的调用请求的标识信息不在非正常请求的标识列表中时,转发该调用请求。s403、服务器获取多个正常调用样本和同一请求源发起的多次调用请求。在确定该金融应用程序的正常调用样本时,收集该金融应用程序产品运营一段时间后接收到的历史请求,并将某个历史时间段内同一请求源发起的历史请求作为样本数据。并从用户活跃度、用户参与度以及用户产生价值这三个方向对样本数据进行用户行为分析获得样本数据的第三行为数据,并根据样本数据的第三行为数据对样本数据进行判断,确定样本数据是否为正常调用请求。用户活跃度是统计单个用户通过客户端在历史时间段内访问该金融应用程序的服务器的频率,用户参与度是在用户子在使用该金融应用程序时在产品上的停留时间或者页面访问的深度统计,用户产生价值是用户在发生交易行为时对金融应用程序产品产生的价值,用户产生价值并非指多少金钱交易。可预先设置用户参与的交易行为的价值评估值,例如:可按下表1进行设置。统计用户使用客户端在历史时间段内访问该金融应用程序的服务器的频率已经在用户活跃度分析中说明,此次不再赘述。下面描述计算用户参数度评估值的过程。根据金融业务特性,将不同类型的调用请求分为1、2、3、4等n种类型,每一类调用请求对应有m个节点,每个节点之间有一个路径长度,将每个用户在某一时间段内访问的节点次序组合起来得到有向无循环路径图。通过计算调用路径,将最长调用路径作为参与度评估值。通过最长路径法可以获得用户参与度最深的行为轨迹。通过预置每个节点的价值评估值,根据每个节点的价值评估值计算所有调用路径的总价值,将总价值和单个价值大于零的节点数量相除得到价值评估值。通过对用户价值分析、参与度分析以及活跃度分析,可以获得历史请求的用户数据,根据历史请求的行为数据对历史请求进行正常请求和非正常请求判定。优选地,将价值评估值小且访问频次高的历史请求判定为非正常请求。如表1所示,对不同类型的调用请求进行分类。两个可以跳转的节点之间的路径长度已经在图6中标记,此次不再赘述。表1接口层次表编号接口说明0授权登陆1a查询银行卡信息1b请求用户信息2a用户开户2b新增绑定银行卡2c删除绑定银行卡3a取现交易3b在线消费交易最长路径算法是指从原点0开始向下访问到的最深的节点所经过的路径长度。节点3b是高层次的节点,且路径比节点3a更复杂。此处考虑以3b结尾的路径d(3b)。d(3b)=max{or{d(2a)+3,d(2b)+3}+or{d(1a)+3,d(1b)+3}}其中,max表示取最大值。or表示取任意的上一层节点,也就是选择d(2a)+3或者选择d(2b)+3进行最大值计算。选择d(1a)+3或者d(1b)+3进行最大值计算。从图6中可知,以3b结尾的最长路径必定经过了1、2类节点,到达3b的节点一定经过了1类节点中的至少一个点,因此,or{d(1a)+3,d(1b)+3}小于or{d(2a)+3,d(2b)+3}。依次类推,对于任意的点x最长路径:d(x)=max(u,w)∈sum{d(u)+w(u,x)}其中,w(u,x)表示u点到x点的入边距离,d(u)表示以u点为结尾的路径长度。预先设置各行为的价值评估值如表2所示,并获得样本数据如下表3所示,结合表1和表2数据对表3中样本数据进行用户行为分析,获得各个样本数据的第三行为数据。表2各行为的价值评估值表3样本数据正常请求条件设置为价值阈值p=2.1,参与度阈值d=2,第一活跃度阈值f=120次,第二活跃度阈值为300。针对样本数据1,用户a在t1时间段内,最长调用路径为6,大于参与度阈值d,t1时间段仅有一条路径,该路径的总价值为6,价值评估值为为(2+3)/2=2.5,大于价值阈值p,访问频率为10,小于第一活跃度阈值f1,样本数据1为正常调用样本。针对样本数据2,用户b在t1时间段内,最长调用路径为1,小于参与度阈值d,价值评估值为为0,小于价值阈值p,访问频率为1000,大于第二活跃度阈值f2,样本数据2为非正常调用样本。针对样本数据3,用户c在t1时间段内,最长调用路径为1,小于参与度阈值d,价值评估值为0,小于价值阈值p,访问频率为2,小于第一活跃度阈值f1,样本数据3为正常调用样本。针对样本数据4,用户a在t2时间段内,最长调用路径为1+2=3,大于参与度阈值d,价值评估值为1,小于价值阈值p,访问频率为10,小于第一活跃度阈值f1,样本数据4为正常调用样本。针对样本数据5,用户b在t2时间段内,最长调用路径为1+3=4,大于参与度阈值d,价值评估值为1,小于价值阈值p,访问频率为280,小于第二活跃度阈值f2,样本数据5为正常调用样本。s404、计算同一请求源发起的调用请求和多个正常调用样本的相似度。其中,通过对同一请求源发起的调用请求进行用户行为分析,获得第一行为数据。第一行为数据包括n个分量,标记为(x1,x2…,xn)。将这n个分量映射到n维空间上。根据如下公式(1)计算第一行为数据和正常调用样本的第二行为数据的欧式距离,作为调用请求和正常调用样本之间偏移值,并用该欧式距离评价调用请求是否为正常调用请求。其中,(y1,y2…,yn)为第二行为数据。优选地,当第一行为数据包括3个分量时,采用如下公式计算:正常调用样本d1和非正常调用样本d2数据量都比较大,在计算调用请求和正常调用样本d1的欧式距离时,可以先计算调用请求的第一行为数据和每个正常调用样本d1的第二行为距离的欧式距离,再从正常调用样本d1中选择距离调用请求最近的k的正常调用样本,根据如下公式(3)计算欧式距离的平均值,用该平均值作为相似度。再将公式(3)计算得到的欧式距离的平均值与距离阈值比较,以确定调用请求是否正常调用。采用如下方式计算距离阈值。假设正常调用样本b有m个,标记为b1至bm,非正常调用样本c有n个,标记为c1至cn。针对b1,依次计算b1和b1、b2……、bm的欧式距离,得到m个b1的欧式距离,从m个b1的欧式距离选择选择最短的k个b1的欧式距离,计算k个b1的欧式距离的平均值lb1。针对b2至bm也采用上述方式计算获得b2的欧式距离的平均值lb2至bm的欧式距离的平均值lbm。针对c1,计算c1和b1、b2……、bm的欧式距离,得到m个c1的欧式距离,从m个c1的欧式距离选择选择最短的k个c1的欧式距离,计算k个c1的欧式距离的平均值lc1。针对c2至cm也采用上述方式计算获得c2的欧式距离的平均值lc2至cn的欧式距离的平均值lcn。统计lb1至lbm的分布情况,并统计lc1至lcn的分布情况,根据分布情况确定距离阈值。s405、当相似度满足预设相似度要求时,响应请求源发起的调用请求。下面以具体实例说明计算欧式距离,以及根据欧式距离确定调用请求是否为正常请求的过程。第一行为数据和第二行为数据均包括具有相同用户标识和相同接口的调用请求的数量、具有相同设备标识和相同接口的调用请求的数量以及同一设备标识所请求调用接口的数量,分别对应x、y、z影响因素。第一行为数据和距离第一行为数据最近的3个第二行为数据如表4和表5所示,此处k=3,且距离阈值设置为6.6。表4第一行为数据第一行为数据xyz数据112147数据250451表5第二行为数据第二行为数据xyz数据313146数据414137数据512155根据公式(2)和公式(3)计算获得数据1的欧式距离的平均值为la=1.962。根据公式(2)和公式(3)计算获得数据2的欧式距离的平均值为lb=48.542。la小于l,数据1为正常请求,响应该请求源发起的调用请求,lb大于l,数据2为非正常请求,拦截该请求源发起的调用请求。在上述技术方案中,从用户活跃度、用户参与度以及用户产生价值三个维度中至少一个维度中对调用请求进行评价获得行为数据,计算调用请求的行为数据和正常调用样本的行为数据之间的欧式距离,以判定该调用请求是否为正常调用请求,在欧式距离小于预设距离阈值时响应调用请求,可实现实时阻拦非正常申请,根据调用请求的行为数据和正常调用样本的行为数据计算相似度,行为数据可以反映不同业务场景的特征,可实现适应不同业务场景。如图7所示,本申请提供一种服务调用装置500,该装置500包括:获取模块501,用于获取多个正常调用样本和同一请求源发起的多次调用请求;处理模块502,用于计算同一请求源发起的多次调用请求和多个正常调用样本的相似度;处理模块502还用于当相似度满足预设相似度要求时,响应请求源发起的调用请求。可选地,处理模块502具体用于:对同一请求源发起的多次调用请求进行用户行为分析,获得第一行为数据;获取多个正常调用样本的第二行为数据;根据第一行为数据和多个第二行为数据,计算相似度。可选地,处理模块502具体用于:对同一请求源发起的多次调用请求进行用户活跃度分析,获得活跃度评估值;对同一请求源发起的多次调用请求进行用户参与度分析,获得参与度评估值;对同一请求源发起的多次调用请求进行用户价值分析,获得价值评估值。可选地,处理模块502具体用于:统计在具有同一用户标识和同一接口标识的调用请求的数量;统计在具有同一设备标识和同一接口标识的调用请求的数量;统计在具有同一设备标识的调用请求所请求调用的接口数量;其中,同一请求源包括同一设备标识的客户端或者同一用户标识的客户端。可选地,处理模块502具体用于:根据同一请求源发起的多次调用请求确定同一请求源的调用路径的路径长度;将同一请求源的最长调用路径的路径长度作为参与度评估值。可选地,处理模块502具体用于:根据同一请求源发起的多次调用请求确定同一请求源的调用路径;根据调用路径中各节点的单个价值获得所有调用路径的总价值;根据所有调用路径的总价值和单个价值大于零的节点数,计算单个价值大于零的节点的平均价值;其中,价值评估值包括单个价值大于零的节点的平均价值。可选地,处理模块502具体用于:针对每个第二行为数据,计算第一行为数据和第二行为数据的第一欧式距离;从多个第一欧式距离中选择按从小到大的顺序排列时前k个第一欧式距离,并计算k个第一欧式距离的平均值;其中,k个第一欧式距离的平均值为相似度,k为正整数。可选地,处理模块502还用于:针对每个正常调用样本,计算正常调用样本的第二行为数据和其他正常调用样本的第二行为数据之间第二欧式距离;针对每个非正常调用样本,计算非正常调用样本的第四行为数据和其他正常调用样本的第二行为数据之间第三欧式距离;根据第二欧式距离的分布情况和第三欧式距离的分布情况确定预设距离阈值;当k个第一欧式距离的平均值小于预设距离阈值时,响应请求源发起的调用请求。可选地,处理模块502还用于:针对每个正常调用样本,从多个第二欧式距离中选择按从小到大的顺序排列时前k个第二欧式距离,并计算k个第二欧式距离的平均值;针对每个非正常调用样本,从多个第三欧式距离中选择按从小到大的顺序排列时前k个第三欧式距离,并计算k个第三欧式距离的平均值;统计k个第二欧式距离的平均值的分布情况,获得第二欧式距离的分布情况,并统计k个第三欧式距离的平均值的分布情况,获得第三欧式距离的分布情况。可选地,获取模块501具体用于:获取历史时间段内同一请求源发起的历史请求;对获取历史时间段内同一请求源发起的历史请求进行用户行为分析,获得第三行为数据;若第三行为数据满足正常请求条件时,历史时间段内同一请求源发起的历史请求为正常调用样本。可选地,获取模块501具体用于:接收网关设备转发的同一请求源发起的调用请求;其中,调用请求是网关设备在判断调用请求的标识信息不存在于预设非正常请求的标识列表中时转发的。如图8所示,本申请另一实施例提供的服务器600包括:发送器601、接收器602、存储器603、及处理器604。其中,发送器601用于发送指令和数据,接收器602用于接收指令和数据,存储器603用于存储计算机执行指令,处理器604,用于执行存储器存储的计算机执行指令,以实现上述实施例中服务调用方法所执行的各个步骤。具体可以参见前述服务调用方法实施例中的相关描述。可选地,上述存储器603既可以是独立的,也可以跟处理器604集成在一起。当存储器603独立设置时,该处理设备还包括总线,用于连接存储器603和处理器604。本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上处理设备所执行的服务调用方法。本申请实施例还提供一种计算机程序产品,包括指令,指令被处理器执行时实现如上处理设备所执行的服务调用方法。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1