一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

业务状态变更处理方法、装置、电子设备及存储介质与流程

2022-10-22 07:41:25 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,具体涉及一种业务状态变更处理方法、装置、电子设备及存储介质。


背景技术:

2.随着互联网技术的快速发展,对各种互联网业务的需求也越来越多元化和个性化,例如在电子商务平台中,订单形成、订单修改、订单取消、订单完成等需求越来越具体、相关的处理过程越来越复杂。为了提高互联网业务系统的业务处理能力以及提高业务流程的维护便利程度,往往采用使多个系统分别独立运行的方式,使每个系统处理指定类型的业务。在不同的业务场景中,各种业务状态的变更十分频繁,随着业务量的扩张,各种业务状态也随之扩张,因此业务状态变更的处理即成为一项极为繁杂的工作,现有技术中业务状态变更处理的效果不佳,极容易影响业务系统的性能,影响业务的正常进行,给业务平台带来损失。


技术实现要素:

3.本技术的目的是提供一种业务状态变更处理方法、装置、电子设备及存储介质。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
4.根据本技术实施例的一个方面,提供一种业务状态变更处理方法,包括:
5.针对目标业务搭建状态机,所述状态机包括所述目标业务的业务流程中涉及的业务状态以及业务状态之间的变换策略;
6.根据对所述目标业务的特定操作,获取所述目标业务的当前状态及业务信息;
7.从所述状态机中搜索与所述特定操作对应的变换策略;
8.根据搜索到的变换策略以及所述目标业务的当前状态及业务信息,对所述目标业务的业务状态进行状态变更维护。
9.根据本技术实施例的另一个方面,提供一种业务状态变更处理装置,包括:
10.搭建模块,用于针对目标业务搭建状态机,所述状态机包括所述目标业务的业务流程中涉及的业务状态以及业务状态之间的变换策略;
11.获取模块,用于根据对所述目标业务的特定操作,获取所述目标业务的当前状态及业务信息;
12.搜索模块,用于从所述状态机中搜索与所述特定操作对应的变换策略;
13.维护模块,用于根据搜索到的变换策略以及所述目标业务的当前状态及业务信息,对所述目标业务的业务状态进行状态变更维护。
14.根据本技术实施例的另一个方面,提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实
现上述任一项所述的业务状态变更处理方法。
15.根据本技术实施例的另一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现上述任一项所述的业务状态变更处理方法。
16.本技术实施例的其中一个方面提供的技术方案可以包括以下有益效果:
17.本技术实施例提供的业务状态变更处理方法,能够响应针对所有业务操作实现在不同业务状态之间变更的维护,既能够提高状态机线程的安全性,还能够有效提高业务系统的性能,并且对业务状态变更处理的效果较好,能够避免影响业务系统的性能,避免影响业务正常进行,从而避免给业务平台带来损失。
18.本技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者,部分特征和优点可以从说明书中推知或毫无疑义地确定,或者通过实施本技术实施例了解。
附图说明
19.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1示出了本技术实施例的业务状态变更处理方法的应用环境示意图;
21.图2示出了本技术一些实施方式的业务状态变更处理方法流程图;
22.图3示出了图2中步骤s10的一些实施方式的流程图;
23.图4示出了本技术一些示例的业务流程中的业务状态示意图;
24.图5示出了本技术一些实施方式的业务状态变更处理装置结构框图;
25.图6示出了本技术一个实施例的电子设备结构框图;
26.图7示出了本技术另一个实施例的计算机可读存储介质的示意图。
27.本技术的目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
28.为了使本技术的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施例对本技术做进一步说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.本领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
30.本技术提供的业务状态变更处理方法,可应用在如图1的应用环境中,其中,用户终端通过互联网与服务器端进行通信。服务器端可以实现业务状态变更处理。服务器端可以接收用户终端发送的业务操作请求,例如生成订单的业务操作请求、取消订单的业务操
作请求或修改订单的业务操作请求等等。其中,用户终端可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器端可以用独立的服务器或者是多个服务器组成的服务器集群来实现,具体可以根据实际需要进行设置或选择。互联网业务平台例如可以包括购物平台(例如淘宝天猫、京东和苏宁易购等),外卖业务平台(例如美团、饿了吗等等)、住宿预订平台(例如携程旅行、58同城等)或交通出行业务平台(例如滴滴出行、高德地图等等)。下面通过具体的实施例对本技术进行详细的描述。
31.参考图2所示,本技术的一个实施例提供了一种业务状态变更处理方法,包括:
32.s10、针对目标业务搭建状态机,该状态机包括目标业务的业务流程中涉及的业务状态以及业务状态之间的变换策略。
33.状态机由状态寄存器和组合逻辑电路构成,能够根据控制信号按照预先设定的状态进行状态转移,是协调相关信号动作、完成特定操作的控制中心。状态机可以包括有限状态自动机。其中,在出现状态变换时,变换前的状态称为原始状态,变换后的状态称为变换后状态。例如,订单已创建的状态发生变换,该变换为修改订单内容,则原始状态为订单已创建,变换后状态即订单内容已修改。本技术实施例提供的技术方案能够应用于各种不同的业务场景下的业务状态变更处理,不同业务的业务状态差别较大。状态机例如可以是ac自动机。
34.如图3所示,在一些实施方式中,步骤s10包括:
35.s101、获取前述目标业务的所有关键词。
36.在一些示例中,获取前述目标业务的所有关键词,包括步骤s1011至s1014:
37.s1011、获得目标业务的关联文本。
38.其中,目标业务的关联文本指的是用来提取关键字的数据源,该数据源例如可以包括用户的评论、反馈意见或调查问卷等。目标业务的关联文本可以是字数属于预设字数区间的文本;例如,预先设定目标业务的关联文本的字数多于200字少于500字,即预设字数区间为(200,500);例如,预设字数区间为[300,600],即预先设定目标业务的关联文本的字数大于或等于300字、并且小于或等于600字;例如,预设字数区间为(500,800],即预先设定目标业务的关联文本的字数大于500字、并且小于或等于800字。关键词即英文中的“keywords”,指的是在制作使用索引时所用到的词汇。
[0039]
s1012、对前述目标业务的关联文本进行最小语义单位词划分处理,获得最小语义单位词集合以及各个最小语义单位词的词性。
[0040]
在步骤s1012中,对目标业务的关联文本进行最小语义单位词划分处理,获得最小语义单位词集合以及各个最小语义单位词的词性。
[0041]
词性指作为划分词类的根据的词的特点。从组合和聚合关系来说,一个词类是指:在一个语言中,众多具有相同句法功能、能在同样的组合位置中出现的词,聚合在一起形成的范畴。词类是最普遍的语法的聚合。词类划分具有层次性。如汉语中,词可以分成实词和虚词,实词中又包括体词、谓词等,体词中又可以分出名词和代词等。例如,词性可以包括名词、动词、形容词、数词、量词或代词等等。
[0042]
最小语义单位词划分处理就是将连续的字序列按照一定的规则划分处理成多个不可再划分处理的最小语义单位词的过程。在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上
的分界符,虽然英文也同样存在短语的划分处理问题,不过在词这一层上,中文比之英文要复杂得多、困难得多。对文本进行最小语义单位词划分处理的操作也可以称为分词操作,得到的最小语义单位词也可以称为分词。
[0043]
在本技术实施例中,目标业务的关联文本提交之后,可以先通过最小语义单位词划分处理算法将文本做最小单位的划分处理,最小语义单位词划分处理算法可以采用现有技术中的任一种分词算法,但获得的最小语义单位词划分处理的结果相同,每一个最小语义单位词的划分处理结果都包含一个最小语义单位词和一个词性。
[0044]
s1013、若前述最小语义单位词集合仅包含一个最小语义单位词,则在前述最小语义单位词与预设的关键最小语义单位词匹配时,或者,在前述最小语义单位词的词性与预设的关键词性匹配,且前述最小语义单位词不是预设的非关键最小语义单位词时,确定前述最小语义单位词为关键词。
[0045]
在步骤s1013中,若最小语义单位词集合仅包含一个最小语义单位词,则在最小语义单位词与预设的关键最小语义单位词匹配时,或者,在最小语义单位词的词性与预设的关键词性匹配,且最小语义单位词不是预设的非关键最小语义单位词时,确定最小语义单位词为关键词。
[0046]
关键词提取系统预先设置有最小语义单位词白名单和词性白名单以及最小语义单位词黑名单。因此,在仅包含有一个最小语义单位词的情况下,将该最小语义单位词分别与最小语义单位词白名单中的关键最小语义单位词、关键词黑名单中非关键最小语义单位词进行匹配,以及将该最小语义单位词的词性与词性白名单中的词性进行匹配,以确定该最小语义单位词是否是与业务有关的关键词。
[0047]
在某些实施方式中,步骤s1013中涉及的匹配方式可以包括:
[0048]
若最小语义单位词的词性与关键词性匹配,则判断该最小语义单位词是否是非关键词,若是非关键词则结束,若不是非关键词,则确定该最小语义单位词为关键词;
[0049]
若最小语义单位词的词性与关键词性不匹配则判断该最小语义单位词是否与关键词匹配,若匹配,则确定该最小语义单位词为关键词,若不匹配则结束流程。
[0050]
通过上述方式可以精准获得与业务相关的关键词,能够避免提取到无效或者无意义的关键词,提高了关键词提取的准确度。
[0051]
s1014、若前述最小语义单位词集合包含多个最小语义单位词,则根据前述最小语义单位词集合中的各个最小语义单位词以及前述各个最小语义单位词的词性,从前述多个最小语义单位词、以及由至少两个最小语义单位词组成的最小语义单位词组中确定出关键词。
[0052]
在步骤s1014中,若最小语义单位词集合包含多个最小语义单位词,则根据最小语义单位词集合中的各个最小语义单位词以及各个最小语义单位词的词性,从多个最小语义单位词、以及由至少两个最小语义单位词组成的最小语义单位词组中确定出关键词。
[0053]
本技术实施例中,若包含多个最小语义单位词,不仅可以判断某个一元最小语义单位词是否为一个关键词,还可以判断至少有两个最小语义单位词组合而成的多元最小语义单位词是否是关键词,从而可以细化关键词提取的程度,使得提取到的关键词可以为后续最小语义单位词划分处理提供依据。
[0054]
步骤s1014可以采用后缀优先匹配的原理提取关键最小语义单位词组,在一个具
体示例中,步骤s1014可以包括以下步骤:
[0055]
s1014-1、按照多个最小语义单位词的排列顺序,从多个最小语义单位词中取出第一最小语义单位词和第二最小语义单位词;其中,第二最小语义单位词是与第一最小语义单位词相邻的下一个最小语义单位词。
[0056]
s1014-2、当确定第二最小语义单位词不是预设的关键后缀最小语义单位词,将第一最小语义单位词与第二最小语义单位词组合得到第一最小语义单位词组,或者,将第一最小语义单位词、第二最小语义单位词以及第三最小语义单位词进行组合得到第二最小语义单位词组,并从第一最小语义单位词组、第二最小语义单位词组以及第一最小语义单位词中确定关键词;其中,第三最小语义单位词是与第二最小语义单位词相邻的下一个最小语义单位词。
[0057]
在某些实施方式中,步骤s1014-2可以包括如下步骤a1至a5:
[0058]
a1、当确定第二最小语义单位词不是预设的关键后缀最小语义单位词,判断第一最小语义单位词是否为预设的关键前缀最小语义单位词;
[0059]
a2、若否,在第一最小语义单位词的词性与预设的关键词性匹配,且前述第一最小语义单位词不是预设的非关键词时,或者,在前述第一最小语义单位词与预设的关键最小语义单位词匹配时,确定第一最小语义单位词为关键词。
[0060]
a3、若是,判断第二最小语义单位词是否为预设的关键三元最小语义单位词。
[0061]
a4、若是,在存在第三最小语义单位词的情况下,将第三最小语义单位词分别与第一最小语义单位词对应关键前缀最小语义单位词白名单、关键前缀最小语义单位词黑名单进行匹配,以及将第三最小语义单位词的词性与第一最小语义单位词对应关键前缀词性白名单进行匹配,并在匹配成功的情况下,确定第二最小语义单位词组成的最小语义单位词组为关键词。
[0062]
a5、若不是,或者,若不存在第三最小语义单位词,将第二最小语义单位词分别与第一最小语义单位词对应关键前缀最小语义单位词白名单、关键前缀最小语义单位词黑名单进行匹配,以及将第二最小语义单位词的词性与第一最小语义单位词对应关键前缀词性白名单进行匹配,并在匹配成功的情况下,确定第一最小语义单位词组为关键词。
[0063]
s1014-3、当确定第二最小语义单位词是预设的关键后缀最小语义单位词,将第一最小语义单位词分别与第二最小语义单位词对应关键后缀最小语义单位词白名单、关键后缀最小语义单位词黑名单进行匹配,以及将第一最小语义单位词的词性与第二最小语义单位词对应关键后缀词性白名单进行匹配,并在匹配成功的情况下,确定第一最小语义单位词和第二最小语义单位词组合而成最小语义单位词组为关键词。
[0064]
通过上述后缀优先匹配的方式,可以获得与业务有关的关键词组,实现细化了关键词提取程度的效果。在进行关键词提取过程中,结合关键词和关键词对应的词性确定最小语义单位词是否为关键词,避免单一词性提取造成的无意义提取,同时还可以确定出最小语义单位词组是否为关键词,从而可以细化关键词提取程度,提取到的最小语义单位词组可以为后续分析提供依据。
[0065]
s102、构建包含前述所有关键词的单词查找树。
[0066]
在一些具体示例中,构建包含前述所有关键词的单词查找树,可以包括:
[0067]
对前述所有关键词进行编码,并将编码后的所有关键词按照编码字符顺序进行排
列;
[0068]
将所有前述关键词按字符排列顺序加入预先建立的单词查找树中,得到包含前述所有关键词的单词查找树。
[0069]
在另一些具体示例中,构建包含前述所有关键词的单词查找树,可以包括:
[0070]
获取前述关键词中每个字的编码,将前述关键词中每个字的前述编码转化为相对应的以二进制表示的字节;
[0071]
将与前述关键词中每个字的编码相对应的字节进行序列化操作以生成包含前述所有关键词的单词查找树。
[0072]
s103、根据失配指针以及包括前述所有关键词的单词查找树得到前述状态机。
[0073]
具体地,从当前节点取前缀,在单词查找树中找到目标节点,目标节点为前述前缀中后缀最长的节点,失配指针即由当前节点指向该目标节点的指针。失配指针也称为fail指针。该状态机例如可以是ac自动机。ac自动机是一种用多模式串建立一个确定性的树形有限状态机,以主串作为该有限状态机的输入,使状态机进行状态的转换,当到达某些特定的状态时,说明发生模式匹配。
[0074]
示例性地,根据失配指针以及包括前述所有关键词的单词查找树得到前述状态机,可以包括:将所有模式串写入前述的单词查找树,然后在写入所有模式串的单词查找树的每一个节点上加上失配指针(fail指针),得到前述状态机。
[0075]
s20、根据对前述目标业务的特定操作,获取前述目标业务的当前状态及业务信息。
[0076]
其中,目标业务是指需要进行业务状态变更处理的任一业务,例如具体可以包括订单业务或票据业务等。特定操作是指用于对目标业务进行业务处理的操作。以目标业务为订单业务为例,特定操作例如可以包括订单生成、订单修改、订单取消、订单完成等。
[0077]
目标业务的业务信息是指与目标业务的业务流程相关的数据。以目标业务为订单业务为例,目标业务的业务信息例如可以包括订单号、形成订单的时间、订单发起人、订单修改时间、订单所包含的内容等。例如图4所示的业务流程中的业务状态包括订单初始化(订单状态5)、创单成功(订单状态10)、订单完成(订单状态20)以及订单取消(订单状态30)。
[0078]
具体地,业务系统中存储有大量业务的业务信息以及当前状态并在各业务的业务流程中不断更新。目标业务的当前状态和业务信息可以根据目标业务的业务标识从业务系统中获取。
[0079]
s30、从前述状态机中搜索与前述特定操作对应的变换策略。
[0080]
其中,前述变换策略用于表示业务状态之间的变换关系、变换条件以及引发业务状态变换的业务操作之间的关联关系或对应关系。
[0081]
业务状态之间的变换关系用于表示从一个状态变换到另一个状态之间的关系,其中,变换前的状态称为原始状态,变换后的状态称为变换后状态。
[0082]
业务操作属于状态机中的一个事件,是用于引发业务状态产生变换的事件。业务状态之间的变换关系对应的业务操作,即为引发业务按照该业务关系进行业务状态变换的事件,使得业务在该事件的引发下,从该变换关系表示的原始状态变换到该变换关系表示的变换后状态。
[0083]
业务状态之间的变换条件即用于判定是否进行业务状态变换的条件,当业务的业务信息满足业务状态之间的变换条件时,可以对业务状态进行变换。在实际应用场景(例如前述的购物平台、外卖业务平台、住宿预订平台或交通出行业务平台等的应用场景)中,两种业务状态之间发生变换并非一定需要变换条件的限制,即变换关系与变换条件之间可以存在关联关系,也可以不存在关联关系,具体情况可根据实际业务需要进行自定义设置。
[0084]
在某些实施方式中,可以根据目标业务的业务标识,从存储有大量不同状态机的状态机数据库中获取为目标业务预先搭建的状态机,进一步通过遍历该状态机以获取与特定操作对应的变换策略。
[0085]
s40、根据搜索到的变换策略以及前述目标业务的当前状态及业务信息,对前述目标业务的业务状态进行状态变更维护。
[0086]
在一些实施方式中,s40可以包括:
[0087]
从搜索到的变换策略中,确定所表示的变换关系对应的原始状态与前述目标业务的当前状态一致的变换策略,确定为目标变换策略;
[0088]
如果前述业务信息满足前述目标变换策略表示的变换条件,或者,前述目标变换策略中不存在与所表示的变换关系对应的变换条件,则根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新。
[0089]
在一些实施方式中,前述状态机还包括与前述变换策略对应的业务处理策略,前述业务处理策略用于实现前述变换策略所表示的变换关系;
[0090]
在根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新之前,前述方法还可以包括:
[0091]
根据前述目标业务的当前状态和前述业务信息,确定执行前述目标变换策略对应的目标业务处理策略之后前述目标业务的最终状态;
[0092]
根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新,包括:
[0093]
在前述最终状态与前述目标变换策略所表示的变换关系对应的变换后状态一致的情况下,根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新。
[0094]
在一些示例中,在搜索到的变换策略后,可根据目标业务的当前状态及业务信息,并结合变换策略表示的变换关系及变换条件,对目标业务的业务状态进行状态变更维护。
[0095]
在某些情况下,一个业务操作可能引发目标业务按照多种变换关系进行业务状态的变换,并且部分业务状态变换还需在满足变换条件的情况下才能进行。因此,在一些实施方式中,步骤s40可以包括:
[0096]
s401、从搜索到的变换策略中,确定所表示的变换关系对应的原始状态与目标业务的当前状态一致的变换策略,确定为目标变换策略。
[0097]
变换关系的原始状态表示了变换发生之前的业务状态,变换关系的变换后状态表示了变换发生之后的业务状态。如果某一变换关系的原始状态与目标业务的当前状态一致,则可将该变换关系所属的变换策略确定为目标变换策略。
[0098]
s402、如果目标业务的业务信息满足目标变换策略表示的变换条件,或者,目标变换策略中不存在与所表示的变换关系对应的变换条件,则根据目标变换策略所表示的变换
关系对应的变换后状态,对目标业务的当前状态进行更新。
[0099]
在一些实施方式中,在确定出目标变换策略后,对于每一目标变换策略,可先判断目标变换策略中是否存在与所表示的变换关系对应的变换条件,如果判断结果为否,则可确定特定操作可直接引发所对应的变换关系表示的状态变换,进而可以将目标业务的当前状态更新为该变换关系对应的变换后状态,由此完成该特定操作对应的业务状态变更处理;如果判断结果为否,则可判断目标业务的业务信息是否满足目标变换策略表示的变换条件,如果判断结果为满足,则确定可以进行业务状态变换,进而可将目标业务的当前状态更新为该变换关系对应的变换后状态。
[0100]
具体地,通过从与特定操作对应的变换策略中,将所表示的变换关系对应的原始状态与目标业务的当前状态一致的变换策略作为目标变换策略,然后根据目标变换策略表示的变换条件和变换关系,对目标业务的当前状态进行更新,使得目标业务的业务状态的变更根据状态机中的变换关系及变换条件即可实现,不需要在状态机中维护业务的当前状态,因而该状态机是无状态的。
[0101]
另外,为了保证业务状态变更的准确性和有效性,为目标业务搭建的状态机还包括与变换策略对应的业务处理策略。其中,业务处理策略是状态机中用于实现两个业务状态之间的变更的操作,通过执行业务处理策略可以实现所对应的变换策略表示的变换关系,即将目标业务的业务状态从该变换关系表示的原始状态变换到该变换关系表示的变换后状态。相应地,根据目标变换策略所表示的变换关系对应的变换后状态,对目标业务的当前状态进行更新之前,本技术实施例提供的业务状态变更处理方法还可以包括:对变换关系的正确性进行校验。
[0102]
例如,在某些实施方式中,在通过上述步骤s402对前述目标业务的当前状态进行更新之前,还可以根据目标业务的当前状态和业务信息,确定执行目标变换策略对应的目标业务处理策略之后目标业务的最终状态。如果得到的目标业务的最终状态与目标变换策略所表示的变换关系对应的变换后状态一致,则可确定目标变换策略表示的变换关系正确且有效,进而可按照该变换关系对目标业务的业务状态变更进行维护,即在上述步骤s402中,在得到的目标业务的最终状态与目标变换策略所表示的变换关系对应的变换后状态一致的情况下,根据目标变换策略所表示的变换关系对应的变换后状态,对目标业务的当前状态进行更新。
[0103]
具体地,通过在按照目标变换策略表示的变换关系对目标业务的当前状态进行更新之前,先根据与目标变换策略对应的目标业务处理策略校验变换关系的有效性,可以确保目标业务的业务状态变更是正确且有效的,从而确保目标业务的业务流程正常进行。
[0104]
在某些实施方式中,为进一步保证目标业务的业务状态变更的正确性,在确定执行目标变换策略对应的目标业务处理策略后目标业务的最终状态之后,可直接输出该目标业务的最终状态,进而以便再后续业务流程中,从该最终状态开始进行目标业务的业务状态变更。
[0105]
在某些实施方式中,为进一步保证目标业务的业务状态变更的正确性,本技术实施例提供的业务状态变更处理方法还可以包括:如果目标业务的业务信息不满足目标变换策略表示的变换条件且目标变换策略中不存在与所表示的变换关系对应的变换条件,则输出目标变换策略所表示的变换关系对应的原始状态,进而以便再后续业务流程中,从该原
始状态开始进行目标业务的业务状态变更。
[0106]
在一些实施方式中,在步骤s30之前,前述方法还可以包括:
[0107]
获取前述目标业务的预设流程信息,前述预设流程信息包括前述目标业务的初始状态、前述目标业务的业务流程所涉及的各项业务操作的执行顺序及引发条件;
[0108]
根据前述目标业务的初始状态及前述目标业务所涉及的各项业务操作的执行顺序,确定各项业务操作对应的初始状态和最终状态,其中,前述业务操作对应的初始状态是指对前述目标业务执行前述业务操作之前前述目标业务的业务状态,前述业务操作对应的最终状态是指对前述目标业务执行前述业务操作之后前述目标业务的业务状态;
[0109]
根据得到的各项业务操作对应的初始状态和最终状态,确定各项业务操作对应的变换关系;
[0110]
根据各项业务操作的引发条件,确定各业务操作对应的变换关系的变换条件;
[0111]
根据前述业务流程所涉及的各项业务操作对应的变换关系和变换关系的变换条件,搭建前述目标业务对应的状态机。
[0112]
在一些实施方式中,在针对目标业务搭建状态机之后,前述方法还可以包括:根据前述目标业务对应的状态机,生成前述目标业务的业务流程对应的状态变换图。
[0113]
本技术实施例所提供的业务状态变更处理方法中,业务的所有业务状态之间的变更均配置在为该业务搭建的状态机中,只需在该状态机中维护业务状态之间的变换关系、变换条件以及业务操作等,而不需要在状态机中维护业务的当前状态,因此该状态机可以是无状态的,进而在目标业务的业务流程中,通过在该状态机中搜索与针对业务执行的业务操作对应的变换策略,就能够实现对业务状态变更的维护,整个业务流程只需要搭建一个状态机就能够响应针对所有业务操作实现在不同业务状态之间变更的维护,既能够提高状态机线程的安全性,还能够有效提高业务系统的性能,避免频繁出现垃圾回收问题。本技术实施例的方法,业务状态变更处理的效果较好,能够解决现有技术中存在的业务状态变更频繁影响业务系统的吞吐量等性能的问题,能够避免影响业务系统的性能,避免影响业务正常进行,从而避免给业务平台带来损失,克服了现有技术中的以下缺陷:业务状态变更处理的效果不佳,极容易影响业务系统的性能,影响业务的正常进行,给业务平台带来损失。
[0114]
如图5所示,本技术的另一个实施例提供了一种业务状态变更处理装置,包括:
[0115]
搭建模块,用于针对目标业务搭建状态机,前述状态机包括前述目标业务的业务流程中涉及的业务状态以及业务状态之间的变换策略;
[0116]
获取模块,用于根据对前述目标业务的特定操作,获取前述目标业务的当前状态及业务信息;
[0117]
搜索模块,用于从前述状态机中搜索与前述特定操作对应的变换策略,前述变换策略用于表示业务状态之间的变换关系、变换条件以及引发业务状态变换的业务操作之间的关联关系;
[0118]
维护模块,用于根据搜索到的变换策略以及前述目标业务的当前状态及业务信息,对前述目标业务的业务状态进行状态变更维护。
[0119]
在某些实施方式中,前述针对目标业务搭建状态机,包括:
[0120]
获取前述目标业务的所有关键词;
[0121]
构建包含前述所有关键词的单词查找树;
[0122]
根据失配指针以及包括前述所有关键词的单词查找树得到前述状态机。
[0123]
在某些实施方式中,前述构建包含前述所有关键词的单词查找树,包括:
[0124]
对前述所有关键词进行编码,并将编码后的所有关键词按照编码字符顺序进行排列;
[0125]
将所有前述关键词按字符排列顺序加入预先建立的单词查找树中,得到包含前述所有关键词的单词查找树。
[0126]
在某些实施方式中,前述构建包含前述所有关键词的单词查找树,包括:
[0127]
获取前述关键词中每个字的编码,将前述关键词中每个字的前述编码转化为相对应的以二进制表示的字节;
[0128]
将与前述关键词中每个字的编码相对应的字节进行序列化操作以生成包含前述所有关键词的单词查找树。
[0129]
在某些实施方式中,前述获取前述目标业务的所有关键词,包括:
[0130]
获得目标业务的关联文本;
[0131]
对前述目标业务的关联文本进行最小语义单位词划分处理,获得最小语义单位词集合以及各个最小语义单位词的词性;
[0132]
若前述最小语义单位词集合仅包含一个最小语义单位词,则在前述最小语义单位词与预设的关键最小语义单位词匹配时,或者,在前述最小语义单位词的词性与预设的关键词性匹配,且前述最小语义单位词不是预设的非关键最小语义单位词时,确定前述最小语义单位词为关键词;
[0133]
若前述最小语义单位词集合包含多个最小语义单位词,则根据前述最小语义单位词集合中的各个最小语义单位词以及前述各个最小语义单位词的词性,从前述多个最小语义单位词、以及由至少两个最小语义单位词组成的最小语义单位词组中确定出关键词。
[0134]
在某些实施方式中,前述根据搜索到的变换策略以及前述目标业务的当前状态及业务信息,对前述目标业务的业务状态进行状态变更维护,包括:
[0135]
从搜索到的变换策略中,确定所表示的变换关系对应的原始状态与前述目标业务的当前状态一致的变换策略,确定为目标变换策略;
[0136]
如果前述业务信息满足前述目标变换策略表示的变换条件,或者,前述目标变换策略中不存在与所表示的变换关系对应的变换条件,则根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新。
[0137]
在某些实施方式中,前述状态机还包括与前述变换策略对应的业务处理策略,前述业务处理策略用于实现前述变换策略所表示的变换关系;
[0138]
在根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新之前,前述方法还包括:
[0139]
根据前述目标业务的当前状态和前述业务信息,确定执行前述目标变换策略对应的目标业务处理策略之后前述目标业务的最终状态;
[0140]
根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新,包括:
[0141]
在前述最终状态与前述目标变换策略所表示的变换关系对应的变换后状态一致
的情况下,根据前述目标变换策略所表示的变换关系对应的变换后状态,对前述目标业务的当前状态进行更新。
[0142]
在某些实施方式中,在前述从前述状态机中搜索与前述特定操作对应的变换策略之前,前述方法还包括:
[0143]
获取前述目标业务的预设流程信息,前述预设流程信息包括前述目标业务的初始状态、前述目标业务的业务流程所涉及的各项业务操作的执行顺序及引发条件;
[0144]
根据前述目标业务的初始状态及前述目标业务所涉及的各项业务操作的执行顺序,确定各项业务操作对应的初始状态和最终状态,其中,前述业务操作对应的初始状态是指对前述目标业务执行前述业务操作之前前述目标业务的业务状态,前述业务操作对应的最终状态是指对前述目标业务执行前述业务操作之后前述目标业务的业务状态;
[0145]
根据得到的各项业务操作对应的初始状态和最终状态,确定各项业务操作对应的变换关系;
[0146]
根据各项业务操作的引发条件,确定各业务操作对应的变换关系的变换条件;
[0147]
根据前述业务流程所涉及的各项业务操作对应的变换关系和变换关系的变换条件,搭建前述目标业务对应的状态机。
[0148]
本技术实施例提供的业务状态变更处理装置,能够实现上述任一实施方式的业务状态变更处理方法,能够响应针对所有业务操作实现在不同业务状态之间变更的维护,既能够提高状态机线程的安全性,还能够有效提高业务系统的性能,避免频繁出现垃圾回收问题,并且对业务状态变更处理的效果较好,能够避免影响业务系统的性能,避免影响业务正常进行,从而避免给业务平台带来损失。
[0149]
本技术的另一个实施例提供了一种电子设备,包括存储器、处理器及存储在前述存储器上并可在前述处理器上运行的计算机程序,前述处理器执行前述程序,以实现上述任一实施方式的业务状态变更处理方法。
[0150]
如图6所示,电子设备10可以包括:处理器100,存储器101,总线102和通信接口103,处理器100、通信接口103和存储器101通过总线102连接;存储器101中存储有可在处理器100上运行的计算机程序,处理器100运行该计算机程序时执行本技术前述任一实施方式所提供的方法。
[0151]
其中,存储器101可能包含高速随机存取存储器(ram:random accessmemory),也可能还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
[0152]
总线102可以是isa总线、pci总线或eisa总线等。总线可以分为地址总线、数据总线、控制总线等。其中,存储器101用于存储程序,处理器100在接收到执行指令后,执行该程序,前述本技术实施例任一实施方式揭示的方法可以应用于处理器100中,或者由处理器100实现。
[0153]
处理器100可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器100中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器100可以是通用处理器,可以包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用
集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器101,处理器100读取存储器101中的信息,结合其硬件完成上述方法的步骤。
[0154]
本技术实施例提供的电子设备与本技术实施例提供的方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
[0155]
本技术的另一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现上述任一实施方式的业务状态变更处理方法。
[0156]
本技术实施方式还提供一种与前述实施方式所提供的方法对应的计算机可读存储介质,参考图7所示,其示出的计算机可读存储介质为光盘20,其上存储有计算机程序(即程序产品),该计算机程序在被处理器运行时,会执行前述任意实施方式所提供的方法。
[0157]
需要说明的是,计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
[0158]
本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
[0159]
需要说明的是:
[0160]
术语“模块”并非意图受限于特定物理形式。取决于具体应用,模块可以实现为硬件、固件、软件和/或其组合。此外,不同的模块可以共享公共组件或甚至由相同组件实现。不同模块之间可以存在或不存在清楚的界限。
[0161]
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示例一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本技术也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本技术的内容,并且上面对特定语言所做的描述是为了披露本技术的最佳实施方式。
[0162]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0163]
以上前述实施例仅表达了本技术的实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范
围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献