一种业务处理方法及装置与流程

文档序号:33458815发布日期:2023-03-15 03:11阅读:24来源:国知局
一种业务处理方法及装置与流程

1.本技术涉及互联网通信技术领域,尤其涉及一种业务处理方法及装置。


背景技术:

2.随着互联网通信技术的迅猛发展,互联网产品层出不穷。常需要对其中服务功能进行业务处理(比如测试、用户问题定位等),以确定相关互联网产品是否可以保障用户正常的使用体验。示例性的,在需要对服务功能a进行测试时,由工作人员开启一番针对性的测试部署;在需要对服务功能b进行测试时,由工作人员开启另一番针对性的测试部署。相关技术中,不同番针对性的业务处理部署中,常涉及一些通用性的环节。对于通用性的环节的重复设置,易影响业务处理效率、增加业务处理成本。


技术实现要素:

3.为了解决现有技术应用在对服务功能进行业务处理时,业务处理效率低、业务处理成本高等问题,本技术提供了一种业务处理方法及装置:
4.根据本技术的第一方面,提供了一种业务处理方法,应用于提供线上服务的系统,所述方法包括:
5.响应于接收到的业务处理请求,确定所述业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略;其中,所述指定服务功能为所述提供线上服务的系统的任意至少一个服务功能,所述灰度策略描述了分批次的将所述指定账号集中的账号纳入业务处理范围的策略;
6.基于所述灰度策略从所述指定账号集中确定出当前批次账号;
7.利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理;
8.在完成针对所述当前批次账号的业务处理之后,重复上述确定出当前批次账号至进行针对所述当前批次账号的业务处理的步骤,至进行完针对所述指定账号集中所有账号的业务处理。
9.根据本技术的第二方面,提供了一种业务处理装置,应用于提供线上服务的系统,所述装置包括:
10.响应模块:用于响应于接收到的业务处理请求,确定所述业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略;其中,所述指定服务功能为所述提供线上服务的系统的任意至少一个服务功能,所述灰度策略描述了分批次的将所述指定账号集中的账号纳入业务处理范围的策略;
11.确定模块:用于基于所述灰度策略从所述指定账号集中确定出当前批次账号;
12.业务处理模块:用于利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理;
13.重复模块:用于在完成针对所述当前批次账号的业务处理之后,重复上述确定出
当前批次账号至进行针对所述当前批次账号的业务处理的步骤,至进行完针对所述指定账号集中所有账号的业务处理。
14.根据本技术的第三方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如第一方面所述的业务处理方法。
15.根据本技术的第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如第一方面所述的业务处理方法。
16.根据本技术的第五方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行如第一方面所述的业务处理方法。
17.本技术提供的一种业务处理方法及装置,具有如下技术效果:
18.本技术通过确定业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略;然后基于灰度策略从指定账号集中确定出当前批次账号;再利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理;最后在完成针对当前批次账号的业务处理之后,重复上述确定出当前批次账号至进行针对当前批次账号的业务处理的步骤,至进行完针对指定账号集中所有账号的业务处理。本技术提供的业务处理方案应用于提供线上服务的系统,基于指示分批次的将指定账号集中的账号纳入业务处理范围的灰度策略,提高了针对服务功能的业务处理中对于相关数据的控制能力。工作人员可以根据业务处理需求触发业务处理请求的生成和发送,该业务处理方案可以兼容不同的业务处理程序选择,可以提高业务处理效率、用户操作便捷性,也可以避免重复开发造成的成本浪费。
附图说明
19.为了更清楚地说明本技术实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
20.图1是本技术实施例提供的一种应用环境的示意图;
21.图2是本技术实施例提供的一种业务处理方法的流程示意图;
22.图3是本技术实施例提供的参照参考账号集对指定账号集进行处理的一种示意图;
23.图4是本技术实施例提供的利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理的一种示意图;
24.图5是本技术实施例提供的任务提交界面示意图;
25.图6是本技术实施例提供的指示审批中的界面示意图;
26.图7是本技术实施例提供的指示审批单据的界面示意图;
27.图8是本技术实施例提供的指示页面进度及输出的界面示意图;
28.图9是本技术实施例提供的业务处理系统的架构示意图;
29.图10是本技术实施例提供的一种业务处理装置的组成框图;
30.图11是本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
31.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
32.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
33.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
34.数据库(database,db):它可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
35.现网服务:指正在运行中的服务于某互联网产品的用户的服务。
36.代理对象(agent):指能接收服务端指令运作,并上报相应结果的软件实体。
37.b/s架构:即browser/server(浏览器/服务器)架构,表示系统仅维护服务器侧,而客户端使用浏览器来运行软件。
38.请参阅图1,图1是本技术实施例提供的一种应用环境的示意图,该应用环境中可以包括客户端10和服务端20。客户端10与服务端20可以通过有线或无线通信方式进行直接或间接地连接。工作人员可以根据业务处理需求通过客户端10触发业务处理请求的生成和发送。服务端20响应于接收到的业务处理请求,基于该业务处理请求对指定服务功能进行业务处理。需要说明的是,图1仅仅是一种示例。
39.客户端10可以是智能手机、电脑(如台式电脑、平板电脑、笔记本电脑等)、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、数字助理、智能可穿戴设备、智能语音交互设备(如智能音响等)、智能家电、车载终端等类型的实体设备,也可以是运行于实体设备中的软体,比如计算机程序。客户端所对应的操作系统可以包括安卓系统(android系统)、ios系统(是由苹果公司开发的移动操作系统)、linux系统(一种操作系统)、microsoft windows系统(微软视窗操作系统)等。
40.服务端20可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。其中服务器可以包括有网络通信单元、处理器和存储器等等。服务端可以为对应的客户端提供后台服务。
41.在实际应用中,指定服务功能可以是提供线上服务的系统的任意至少一个服务功
能。该提供线上服务的系统所提供的线上服务可以包括以下至少之一:办公自动化(oa)服务、即时通信服务、直播服务、邮箱服务、投屏服务等。该提供线上服务的系统可以基于微服务架构实现的。
42.以下介绍本技术一种业务处理方法的具体实施例,图2是本技术实施例提供的一种业务处理方法的流程示意图,本技术提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,所述方法可以包括:
43.s201:响应于接收到的业务处理请求,确定所述业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略;其中,所述指定服务功能为所述提供线上服务的系统的任意至少一个服务功能,所述灰度策略描述了分批次的将所述指定账号集中的账号纳入业务处理范围的策略;
44.在本技术实施例中,服务端接收业务处理请求,确定该业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略。业务处理请求可以是相关对象(比如用户、模拟器)通过客户端触发生成并发送的。本技术实施例提供的业务处理方案应用于提供线上服务的系统,该指定服务功能为该提供线上服务的系统的任意至少一个服务功能,该指定服务功能可以包括以下至少之一:待向相关用户全面开放的服务功能、已向相关用户全面开放的功能。其中,相关用户可以是游客用户,也可以是注册用户。注册用户可以包括第一类用户和所拥有用户权限多于第一类用户的第二类用户。指定业务处理程序可以来自候选业务处理程序集,该候选业务处理程序集中的业务处理程序可以用于针对相关服务功能实现压测、推广、用户问题定位等。指定业务处理程序的确定,说明将针对指定服务功能进行何种业务处理。指定账号集确定了对相关服务功能进行业务处理所针对的用户范围,可以理解,借助指定账号集中账号用户对于相关服务功能的使用情况实现业务处理。灰度策略描述了分批次的将指定账号集中的账号纳入业务处理范围的策略,也即基于分批次思想,每次借助指定账号集中部分账号用户对于相关服务功能的使用情况实现子业务处理步骤,通过多次子业务处理步骤完成业务处理。
45.在一示例性的实施方式中,所述确定所述业务处理请求对应的灰度策略的过程,包括下述步骤:首先,确定所述业务处理请求对应的灰度配置信息;其中,所述灰度配置信息包括灰度比例变化参数和指示初始批次账号的灰度比例;其中,所述灰度比例变化参数指示下一个批次账号对应的灰度比例相对上一个批次账号对应的灰度比例的增减幅度;然后,基于所述灰度配置信息得到所述灰度策略。
46.灰度策略中“分批次的将指定账号集中的账号纳入业务处理范围”内容,可以是基于具体的灰度配置信息确定的。相关对象(比如用户、模拟器)可以通过客户端进行灰度配置信息的具体设置,相应的,服务端接收到的业务处理请求包含灰度配置信息。服务端从业务处理请求中读取灰度配置信息,从而基于灰度配置信息得到灰度策略。由于需要灰度配置信息指示各批次账号,那么灰度配置信息可以提供各批次账号分别对应的账号标识组,也可以提供各批次账号分别相对指定账号集的占比信息。比如,分三批次将指定账号集中的账号纳入业务处理范围,第一批次账号相对指定账号集的占比信息为30%,第二批次账
号相对指定账号集的占比信息为30%,第三批次账号相对指定账号集的占比信息为40%。
47.考虑到工作人员进行灰度配置的便捷性,可以在灰度配置信息中引入灰度比例变化参数和指示初始批次账号的灰度比例。灰度比例变化参数指示下一个批次账号对应的灰度比例相对上一个批次账号对应的灰度比例的增减幅度。示例性的,指示初始批次账号的灰度比例为10%,灰度比例变化参数(递增)为10%,说明:第一批次账号相对指定账号集的占比信息为10%,第二批次账号相对指定账号集的占比信息为20%,第三批次账号相对指定账号集的占比信息为30%,第一批次账号相对指定账号集的占比信息为40%。其中指示递增的灰度比例变化参数,考虑到业务处理对于系统的风险,可以为工作人员提供基于子业务处理步骤的反馈信息暂停或停止业务处理的选择空间。
48.通过灰度配置信息丰富了灰度策略的构成,使得分批次将指定账号集中的账号纳入业务处理范围的过程可以存在差异、更具个性化,从而更好的提高业务处理中工作人员对于用户数据的控制能力。当然,灰度配置信息中还可以包括各批次账号分别对应的子业务处理步骤的时长信息。
49.在实际应用中,参见图5,本技术实施例提供的业务处理系统包括任务提交界面,任务提交界面作为一图形用户界面(graphical user interface,gui)。工作人员可以通过该界面进行相关参数的输入,从而触发上述业务处理请求的生成和发送。由于业务处理程序并非一直运行以实现相关业务处理,可以将业务处理程序视作离线工具。离线工具执行往往存在操作数据量巨大,数据有分类分级的特点。因此在灰度执行中,均分每次灰度的数据并不合适。本系统的灰度算法,支持了用户可选的,分梯次地灰度数据数量。默认情况下,会将数据按10%20%30%40%进行切分来灰度执行。对于上述指定业务处理程序的设置,可以参见图5中的“工具/脚本路径”、“工具/脚本参数”。对于上述指定账号集的设置,可以参见图5中的“uin列表路径”。对于上述灰度策略的设置,可以参见图5中的“初始灰度vid百分比”、“后续每次灰度递增”、“每两次执行中间sleep”。工作人员在完成基础的工具开发之后,在本页面上传和输入相应的工具,参数,选择灰度策略,任务说明等。
50.s202:基于所述灰度策略从所述指定账号集中确定出当前批次账号;
51.在本技术实施例中,服务端基于灰度策略从指定账号集中确定出当前批次账号。服务端可以基于灰度策略中的各批次账号分别对应的账号标识组,从指定账号集中确定出相匹配的当前批次账号。服务端可以基于灰度策略中的各批次账号分别相对指定账号集的占比信息,从指定账号集中确定出相匹配的当前批次账号。其中,各批次账号分别相对指定账号集的占比信息可以来自灰度比例变化参数和指示初始批次账号的灰度比例。基于占比信息从指定账号集中确定出当前批次账号时,可以是从指定账号集中随机选取满足占比信息要求的账号;也可以是从指定账号序列中依序抽取满足占比信息要求的序列分段,指定账号序列是按照预设指标降序或升序的顺序对指定账号集进行排序得到的,预设指标可以是账号活跃度、账号注册时间等。
52.在一示例性的实施方式中,在所述基于所述灰度策略从所述指定账号集中确定出当前批次账号之前,所述方法还包括:确定所述业务处理请求对应的并发策略;其中,所述并发策略用于指示需要同时启动的业务处理程序的数量;
53.相应的,在所述利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理之前,所述方法还包括:确定所述并发策略指示的指定数量;启动所
述指定数量个所述指定业务处理程序。
54.为提高业务处理效率,可以引入并发策略的概率,这样根据并发策略所指示的数量来启动用于业务处理的指定业务处理程序。相关对象(比如用户、模拟器)可以方便的通过客户端进行并发策略的设置,相应的,服务端接收到的业务处理请求包含该并发策略。示例性的,若并发策略指示需要同时启动的业务处理程序的数量为5,那么将5作为指定数量,启动5个指定业务处理程序。需要说明的是,指定业务处理程序可以是预先部署于相关机器设备上的,也可以是在响应业务处理请求之后部署于相关机器设备上的。在实际应用中,对于这里并发策略的设置,可以参见图5中的“页面并发数”。
55.在一示例性的实施方式中,如图3所示,在所述基于所述灰度策略从所述指定账号集中确定出当前批次账号之前,所述方法还包括:
56.s301:将所述指定账号集与参考账号集进行对比;其中,所述参考账号集的构成账号类别包括以下至少之一:关键账号类别、异常账号类别;
57.s302:当所述指定账号集和所述参考账号集之间存在交集账号时,基于所述交集账号生成对应的审批请求。
58.参考账号集的构成账号类别包括以下至少之一:关键账号类别、异常账号类别,也即关键账号和/或异常账号构成了参考账号集。关键账号可以是关键客户(用户)所使用的账号,其中关键客户(key account/key client,ka),指对产品使用频率高,活跃度大,粘性强,对产品收入和日活等数据贡献大的用户。异常账号可以是存在对应的异常记录的账号,异常记录可以是历史操作行为(比如历史登录行为)的异常记录。
59.比如,参考账号集包括账号1-100,指定账号集包括账号100-200,那么对指定账号集与参考账号集进行对比的结果为存在作为交集账号的账号100。然后,基于作为交集账号的账号100生成对应的审批请求。审批请求将发送至具有审核权限的工作人员,由该具有审核权限的工作人员确定是否将该交集账号纳入对相关服务功能进行业务处理所针对的用户范围。若确定将该交集账号纳入对相关服务功能进行业务处理所针对的用户范围,那么指定账号集不变,依然基于灰度策略从指定账号集中确定出当前批次账号。可以理解为,审批通过,从而利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理。
60.若确定不将该交集账号纳入对相关服务功能进行业务处理所针对的用户范围,也即审批不通过,从而不需要利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理。当然,也可以基于该交集账号更新指定账号集,也即将该交集账号移出指定账号集,然后基于灰度策略从更新后的指定账号集中确定出当前批次账号,以利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理。需要说明的是,交集账号的数量可以不限于这里示例中的1个。参考账号集的构成账号可以根据实际需求灵活调整。
61.利用参考账号集对指定账号集中的关键账号和异常账号进行有效过滤,同时增加基于关键账号和异常账号的审批环节,在兼顾业务处理对于系统的风险以及业务处理在用户维度的有效性的同时,提高了管控指定账号集的灵活度。
62.下面将介绍参考账号集的相关内容:
63.1)参考账号集的更新过程包括下述步骤:首先,定期从磁盘获取指示参考账号组的加密数据;然后,对所述加密数据进行解密处理得到所述参考账号组;最后,利用所述参考账号组更新存放于代理对象的进程内存中的所述参考账号集;其中,所述代理对象为部
署于用于实现审批业务的机器设备上的程序。
64.指示参考账号组的加密数据可以是通过加密算法对参考账号组进行加密处理得到的,参考账号组可以由当前时间段新增的参考账号构成,加密算法可以是非对称加密算法,比如aes加密算法。当前时间段新增的参考账号一般存放于磁盘。定期从磁盘获取指示参考账号组的加密数据,然后对加密数据进行解密处理得到参考账号组。定期可以指示固定的预设时间间隔,那么每隔预设时间间隔从磁盘获取指示参考账号组的加密数据,然后对加密数据进行解密处理得到参考账号组。可以将服务端视作一个机器设备集群,机器设备集群中包括用于实现审批业务的第一类机器设备,以及剩余的第二类机器设备。代理对象(agent)部署于第一类机器设备上,可以在该代理对象的进程内存中存放定期从磁盘获取且经解密处理得到的参考账号,这些参考账号便构成了参考账号集。
65.一方面作为敏感数据的参考账号需要通过加密处理来确保安全、不被泄露,一方面参考账号集与指定账号集需要进行对比,参考账号集所对应的账号数据可能以亿计,若每次执行对比操作都对加密数据进行解密处理则在资源和时间消耗上都是巨大的。定期异步将敏感数据(经加密处理后的)解密后放入代理对象的进程内存中以提高相关操作的效率,尽量减少在物理磁盘上保留敏感数据(经加密处理后的)的时长。通过牺牲少量的安全性(攻击者需要攻破操作系统并侵入agent进程所在内存才能拿到参考账号),来达到安全和性能的平衡。
66.2)由代理对象作为执行主体的相关操作:由代理对象(或者服务端利用代理对象)将指定账号集与参考账号集进行对比。当指定账号集和参考账号集之间存在交集账号时,由代理对象(或者服务端利用代理对象)生成指示交集账号的审批请求。这里的参考账号集即是维护于agent侧的参考账号集。
67.此外,也可以由代理对象定期从磁盘获取指示参考账号组的加密数据,由代理对象对加密数据进行解密处理得到参考账号组;由代理对象利用参考账号组更新存放于其进程内存中的参考账号集。
68.在实际应用中,在任务提交后,业务处理系统会对任务做安全审计,若工具操作影响到了ka等敏感账号,则视具体敏感程度,会需上一层级审批。业务处理系统对ka等敏感企业或敏感账号增加审批限制,整体控制风险。如图6所示,任务页面显示审批中。如图7所示,上级人员收到审批单据,依安全考量通过或拒绝审批。若审批拒绝,任务中止。若审批通过,任务会进行灰度执行状态。
69.s203:利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理;
70.在本技术实施例中,服务端利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理。
71.在一示例性的实施方式中,在所述利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理之前,所述方法还包括下述步骤:首先,确定支持所述指定服务功能实现的目标机器设备;然后,利用部署于所述目标机器设备上的代理对象启动所述指定业务处理程序。
72.指定业务处理程序可以是预先部署于相关机器设备上的,也可以是在响应业务处理请求之后部署于相关机器设备上的。可以将提供线上服务的系统视作一个机器设备集
群,机器设备集群中包括支持指定服务功能实现的目标机器设备。代理对象(agent)部署于目标机器设备上,可以利用该代理对象启动指定业务处理程序。代理对象的应用,可以提高利用指定业务处理程序对相关服务功能进行业务处理的管控粒度。结合前述步骤s301-s302中有关“审批请求”的记载,可以在审批通过后,利用代理对象启动指定业务处理程序,从而利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理。
73.在实际应用中,目标机器设备上的agent通过与服务端的交互获取待执行任务,agent将在执行任务前准备好与任务执行相适应的沙盒环境。沙盒环境主要用于对两个同时执行的任务进行隔离。agent按灰度及并发策略,启动工具执行,同时更新工具输出及任务进度,页面进度及输出展示可参见图8。
74.在一示例性的实施方式中,结合前述步骤s202中对于“并发策略”的应用,
75.参见图4,所述利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理,包括:
76.s401:基于所述指定数量对所述当前批次账号进行切分,得到所述指定数量个分片;
77.s402:分别为每个所述指定业务处理程序分配对应的一个所述分片;
78.s403:针对所述指定服务功能,分别利用每个所述指定业务处理程序进行分片维度的业务处理。
79.示例性的,指定数量为5,当前批次账号包括账号301-400。将当前批次账号切分为5个分片:包括账号301-320的分片1、包括账号321-340的分片2、包括账号341-360的分片3、包括账号361-380的分片4和包括账号381-400的分片5。对于同时启动的5个指定业务处理程序(程序1-5),可以为程序1分配分片1作为对相关服务功能进行业务处理所针对的用户范围、为程序2分配分片2作为对相关服务功能进行业务处理所针对的用户范围、为程序3分配分片3作为对相关服务功能进行业务处理所针对的用户范围、为程序4分配分片4作为对相关服务功能进行业务处理所针对的用户范围,以及为程序5分配分片5作为对相关服务功能进行业务处理所针对的用户范围。由此,针对指定服务功能,分别利用每个指定业务处理程序进行分片维度的业务处理。将并发策略与针对当前批次账号的数据分片相结合,各个指定业务处理程序分别对应的账号数量较均匀,可以降低数据倾斜带来的干扰,可以提高进行针对当前批次账号的业务处理的效率。需要说明的是,可以从当前批次账号中随机选取满足分片账号数量要求的账号构成相关分片;也可以是从当前批次账号序列中依序抽取满足分片账号数量要求的序列分段构成相关分片,当前批次账号序列是按照预设指标降序或升序的顺序对当前批次账号进行排序得到的,预设指标可以是账号活跃度、账号注册时间等。
80.进一步的,所述分别利用每个所述指定业务处理程序进行分片维度的业务处理,可以包括以下步骤:首先,基于预设数量对所述分片进行切分,得到至少两个子分片;然后,为每个所述子分片配置对应的子分片序号;最后,利用所述指定业务处理程序基于所述子分片序号依次进行子分片维度的业务处理。
81.以利用程序1进行分片维度(对应分片1)的业务处理为例,当预设数量为5时,切分分片1得到子分片1-4。其中“1-4”作为对应子分片的子分片序号,子分片1包括账号301-305,子分片2包括账号306-310,子分片3包括账号311-315,以及子分片4包括账号316-320。
程序1可以按照子分片序号依次进行子分片维度的业务处理,也即程序1先进行针对子分片1的业务处理,然后进行针对子分片2的业务处理,再针对子分片3的业务处理,最后针对子分片4的业务处理。需要说明的是,可以从分片中随机选取满足子分片账号数量要求的账号构成相关子分片;也可以是从分片账号序列中依序抽取满足子分片账号数量要求的序列分段构成相关子分片,分片账号序列是按照预设指标降序或升序的顺序对分片中账号进行排序得到的,预设指标可以是账号活跃度、账号注册时间等。
82.分片账号数量可以视作响应并发策略而确定的,子分片账号数量则可以看作在此基础上更细粒度、更底层的账号切分,为实现更细粒度的用户数据的管控提供了实现条件。预设数量可以根据实际需求灵活调整。
83.以下将介绍如何实现更细粒度的用户数据的管控:
84.在上述利用指定业务处理程序基于子分片序号依次进行子分片维度的业务处理的基础上,本技术提供的业务处理方案还包括:1)响应于接收到的暂停业务处理指令,确定当前进行的子分片维度的业务处理的进度,以及当所述进度指示子分片维度的业务处理完成时,暂停业务处理并记录所述当前进行的子分片维度的业务处理所对应的子分片序号;2)响应于接收到的继续业务处理指令,基于所述对应的子分片序号确定相邻的下一个子分片序号,以及基于所述相邻的下一个子分片序号继续进行子分片维度的业务处理。
85.如果子分片维度的业务处理中,借助相关账号用户对于相关服务功能的使用情况进行业务处理的顺序是基于账号序号的升序顺序的。结合上述示例,在进行针对子分片3(包括账号311-315)的业务处理的过程中,若服务端接收到暂停业务处理指令,那么确定当前进行的针对子分片3的业务处理的进度:账号314,说明子分片3的业务处理尚未完成。当进度(对应账号315)指示子分片维度的业务处理完成时,暂停业务处理并记录当前进行的子分片维度的业务处理所对应的子分片序号:3。若服务端接收到继续业务处理指令,基于对应的子分片序号确定相邻的下一个子分片序号:4,以及基于相邻的下一个子分片序号继续进行子分片维度的业务处理,及进行针对子分片4的业务处理。
86.可以将上述“实现更细粒度的用户数据的管控”视作本技术提供的业务处理方案具备的“断点续跑”能力。可以在底层,对分片作进一步的切分。切分算法可以依据需要操作的数据量,动态计算合适的预设数量,将子分片中的账号数据的量控制在一个较小的值。在此基础上,可以实现对于暂停业务处理以及继续业务处理的及时响应。
87.当然,在并发策略的应用中,暂停业务处理指令所针对的业务处理程序可以是具体的至少一个程序,也可以是所有程序。当针对的业务处理程序的数量有至少两个(比如有程序1、3和4)时,上述示例中的子分片维度的业务处理也不局限于“利用程序1基于子分片序号依次进行子分片维度的业务处理”,还包括“利用程序3基于子分片序号依次进行子分片维度的业务处理”和“利用程序4基于子分片序号依次进行子分片维度的业务处理”。
88.s204:在完成针对所述当前批次账号的业务处理之后,重复上述确定出当前批次账号至进行针对所述当前批次账号的业务处理的步骤,至进行完针对所述指定账号集中所有账号的业务处理。
89.在本技术实施例中,在完成针对当前批次账号的业务处理之后,服务端重复上述确定出当前批次账号至进行针对当前批次账号的业务处理的步骤,至进行完针对指定账号集中所有账号的业务处理。其中,“上述确定出当前批次账号至进行针对当前批次账号的业
务处理的步骤”的执行可以参考前述步骤s202和s203中的相关记载,不再赘述。
90.在实际应用中,参见图9,本技术实施例提供的业务处理系统本发明系统采用经典b/s架构。该系统在流程上包括:
91.a)用户由网页,即客户端输入上传相关信息,包括要执行的工具(对应图5中的“工具/脚本路径”),工具参数(对应图5中的“工具/脚本参数”),操作账号列表(对应图5中的“uin列表路径”),灰度策略(对应图5中的“初始灰度vid百分比”、“后续每次灰度递增”、“每两次执行中间sleep”),任务描述(对应图5中的“任务目的”、“涉及数据量”、“可能影响范围”、“预计执行时长”、“页面并发数”、“工具内部并发数”)等。
92.b)任务提交后由服务端(server端)做安全审计。server端一方面检查输入各项数据的有效性,另一方面维护一份ka等敏感账号列表及相应规则,比对上传的操作账号列表,若命中敏感度规则,则进入审批流程。
93.c)若审批不通过,则任务结束。若审批通过,server端将工具数据整理输入db存储。
94.d)此时待执行任务的机器上,常驻agent将能从server端交互获取到待执行任务。
95.e)agent将在执行任务前准备好相应执行的沙盒环境,并按输入的灰度需求,对数据进行分片。
96.f)完成数据和环境准备后,agent将按输入的并发数并发调起工具,分配相应灰度的数据分片,灰度执行任务。灰度分配算法将保证任务操作的数据和影响面从小到大。每次灰度任务执行完成,经过一定的观察时间后确认无问题,才会执行下一个灰度任务。
97.g)在任务执行的过程中,用户都可以根据观察到的输出,并结合现网监控和用户反馈,对任务进行实时调整操作暂停或重启或中止任务,从而达到更好的执行效果。agent以底层“小分片”为原子单位执行任务,当感知到用户输入暂停或中止操作,则会在每个原子事务执行后再响应,同时记录执行的分片的偏移量。当用户希望重启任务,则从上次完成的偏移量开始取数据继续灰度执行。在本系统的“断点续跑”能力支持下,暂停的任务亦可以无损重启,继续操作。
98.此外,需要说明的是,在确保灰度有序的基础上,对于部分离线工具任务,可能会希望使用多进程并发来统分利用计算机资源。本系统原生支持了多进程并发,并发数操作者可选。同时并发能力对用户侧透明,工具开发者无需额外开发成本。本系统除了对数据做安全审批,在离线工具执行上亦有安全性的保障。首先系统限制离线工具在受限的特定的机器上执行,特定机器上会针对性地审计用户操作,票据审批等。其次agent调用离线工具时会使用页面操作者的账号同样的权限,确保用户不会利用此系统越权操作。本系统支持和把控的灰度能力,让离线工具对数据的操作更有序;对暂停重启的支持可让工具执行者实时调整任务。在整体上提高了离线工具执行的准确性。离线工具执行受系统管控和审计,减少了误操作风险,降低了对用户数据的的影响,提高了安全性。系统原生支持并发能力、“断点续跑”能力,对开发者透明,工具操作者无需额外开发成本,提高了使用便利性。
99.由以上本技术实施例提供的技术方案可见,本技术实施例中通过确定业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略;然后基于灰度策略从指定账号集中确定出当前批次账号;再利用指定业务处理程序对指定服务功能进行针对当前批次账号的业务处理;最后在完成针对当前批次账号的业务处理之后,重复上述确定出
当前批次账号至进行针对当前批次账号的业务处理的步骤,至进行完针对指定账号集中所有账号的业务处理。本技术提供的业务处理方案应用于提供线上服务的系统,基于指示分批次的将指定账号集中的账号纳入业务处理范围的灰度策略,提高了针对服务功能的业务处理中对于相关数据的控制能力。工作人员可以根据业务处理需求触发业务处理请求的生成和发送,该业务处理方案可以兼容不同的业务处理程序选择,可以提高业务处理效率、用户操作便捷性,也可以避免重复开发造成的成本浪费。
100.本技术实施例还提供了一种业务处理装置,如图10所示,该业务处理装置1000应用于提供线上服务的系统,该业务处理装置包括:
101.响应模块1001:用于响应于接收到的业务处理请求,确定所述业务处理请求对应的指定服务功能、指定业务处理程序、指定账号集和灰度策略;其中,所述指定服务功能为所述提供线上服务的系统的任意至少一个服务功能,所述灰度策略描述了分批次的将所述指定账号集中的账号纳入业务处理范围的策略;
102.确定模块1002:用于基于所述灰度策略从所述指定账号集中确定出当前批次账号;
103.业务处理模块1003:用于利用所述指定业务处理程序对所述指定服务功能进行针对所述当前批次账号的业务处理;
104.重复模块1004:用于在完成针对所述当前批次账号的业务处理之后,重复上述确定出当前批次账号至进行针对所述当前批次账号的业务处理的步骤,至进行完针对所述指定账号集中所有账号的业务处理。
105.需要说明的,所述装置实施例中的装置与方法实施例基于同样的发明构思。
106.本技术实施例提供了一种电子设备,该电子设备包括处理器和存储器,该存储器中存储有至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的业务处理方法。
107.进一步地,图11示出了一种用于实现本技术实施例所提供的业务处理方法的电子设备的硬件结构示意图,所述电子设备可以参与构成或包含本技术实施例所提供的业务处理装置。如图11所示,电子设备110可以包括一个或多个(图中采用1102a、1102b,
……
,1102n来示出)处理器1102(处理器1102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器1104、以及用于通信功能的传输装置1106。除此以外,还可以包括:显示器、输入/输出接口(i/o接口)、通用串行总线(usb)端口(可以作为i/o接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图11所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备110还可包括比图11中所示更多或者更少的组件,或者具有与图11所示不同的配置。
108.应当注意到的是上述一个或多个处理器1102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到电子设备110(或移动设备)中的其他元件中的任意一个内。如本技术实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
109.存储器1104可用于存储应用软件的软件程序以及模块,如本技术实施例中所述的业务处理方法对应的程序指令/数据存储装置,处理器1102通过运行存储在存储器114内的
软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的一种业务处理方法。存储器1104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1104可进一步包括相对于处理器1102远程设置的存储器,这些远程存储器可以通过网络连接至电子设备110。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
110.传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备110的通信供应商提供的无线网络。在一个实例中,传输装置1106包括一个网络适配器(networkinterfacecontroller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实施例中,传输装置1106可以为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。
111.显示器可以例如触摸屏式的液晶显示器(lcd),该液晶显示器可使得用户能够与电子设备110(或移动设备)的用户界面进行交互。
112.本技术的实施例还提供了一种计算机可读存储介质,所述存储介质可设置于电子设备之中以保存用于实现方法实施例中一种业务处理方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述方法实施例提供的业务处理方法。
113.可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
114.需要说明的是:上述本技术实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本技术特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
115.本技术中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
116.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
117.以上所述仅为本技术的较佳实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1