基于应用服务执行结果的投递处理方法及相关装置与流程
未命名
07-12
阅读:109
评论:0
1.本发明涉及互联网的一般数据处理领域,尤其涉及一种基于应用服务执行结果的投递处理方法及相关装置。
背景技术:
2.在营销云系统中,用户可以通过客户端(小程序等)进行各种操作,对应地,业务服务器会根据用户操作生成各种“事件”,在“事件”投递至事件中心服务器经过校验合格后,会将“事件”投递至对应的订阅事件的应用中,从而实现对用户在客户端进行操作的反馈。
3.在目前的技术体系中,当订阅事件的应用服务例如“短信通知服务”遭遇处理失败的情形时,获取发送结果的反馈信息并以此确定是否再次发送订阅消息,但单纯的重复发送订阅消息并不能提升“事件”投递成功的概率。并且由于未及时根据反馈结果分析失败原因,通过失败原因选择合适的改进方案,也不利于对事件的管理。另外,所有“事件”都进行投递或重复投递,可能导致当面对高并发情形时,消息队列中消息维护成本较高。
技术实现要素:
4.针对上述问题,本技术实例提供了一种基于应用服务执行结果的投递处理方法及相关装置,在订阅事件的应用服务出现不同结果时,可以根据不同结果执行不同的处理分支,提高了业务服务对订阅结果的感知程度,有利于事件的管理。并且在具体的实现方案中增加了对消息队列中“事件”的过滤机制,仅允许订阅事件的应用服务感兴趣的“事件”通过,降低了消息队列中消息维护的成本。
5.为实现上述目的,第一方面,本技术实施例提供了一种基于应用服务执行结果的投递处理方法,应用于营销云系统的事件中心服务器,营销云系统包括事件中心服务器和营销云客户端,事件中心服务器,营销云客户端,业务服务器和运维端通过消息总线通信连接,该方法包括:
6.接收营销云客户端提交的事件数据,根据事件数据生成第一事件;对第一事件进行合法性检验,获得通过合法性检验的第二事件;根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端;接收来自营销云客户端针对订阅事件应用服务的第一执行结果反馈信息,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。
7.可以看出,在本技术实施例中,根据订阅事件的应用服务出现的不同结果,执行不同的处理分支,提高了业务服务对订阅结果的感知程度,有利于事件的管理。在具体的实现方案中增加了对事件数据的过滤机制,仅允许通过合法性检验的第二事件生成对应的第一订阅事件应用服务,降低了消息维护的成本。
8.结合第一方面,在一种可能的实施例中,接收营销云客户端提交的事件数据,根据事件数据生成第一事件包括:接收营销云客户端提交的至少一个事件数据,确定至少一个事件数据中与预设事件相关联的目标事件数据;若目标事件数据的数量大于预设数量,则
根据目标事件数据生成第一事件,第一事件与预设事件为同类型的事件。
9.可以看出,在本技术实施例中,当目标事件数据的数量大于预设数量时,则将大于预设数量的目标事件合并生成一个第一事件,从而避免了事件中心服务器对同一营销云客户端发送大量相同的订阅事件应用服务,进而降低了消息维护的成本,提高了用户体验。
10.结合第一方面,在一种可能的实施例中,对第一事件进行合法性检验,获得通过合法性检验的第二事件,包括:获取第一事件对应的目标事件数据,根据目标事件数据确定第一事件的数据完整性,数据完整性表示目标事件数据在第一事件包含的全部事件数据中所占的比例;若第一事件的数据完整性超过第一预设阈值,则确定第一事件通过合法性检验。
11.可以看出,在本技术实施例中,通过合法性检验,将数据完整性不足的第一事件提前删除,只保留数据完整性较完整的第二数据,进而提高了订阅事件应用服务的质量,提高了订阅事件应用服务的投递成功率,降低了消息维护的成本,提高了系统的运行稳定性。
12.结合第一方面,在一种可能的实施例中,营销云系统还包括运维端,第一执行结果反馈信息包括执行失败或执行成功,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务包括:若第一执行结果反馈信息为执行失败,则记录执行失败原因,执行失败原因包括投递失败,或接收反馈失败;若执行失败原因为投递失败,则向运维端发送报警信息,报警信息用于提示运维端进行网络维护;接收来自运维端的维护结果信息,根据维护结果信息在第一预设时长后再次投递第一订阅事件应用服务;若未接收到来自运维端的维护结果信息,则在第二预设时长后再次投递第一订阅事件应用服务,第二预设时长大于第一预设时长;若执行原因为反馈失败,则生成并投递第二订阅事件应用服务,第二订阅事件应用服务与第一订阅事件应用服务对应不同的通信服务协议。
13.可以看出,在本技术实施例中,在第一执行结果反馈信息包括执行失败或执行成功后,将结果反馈信息保存,确定是否生成并投递第二订阅事件应用服务,或者重新发送第一订阅事件应用服务。从而提高了业务服务对订阅结果的感知程度,有利于事件的管理,降低了系统的维护成本。
14.结合第一方面,在一种可能的实施例中,若第一执行结果反馈信息的发送成功率小于第二预设阈值,则获取第二事件的生成成功率,第二事件的生成成功率用于表征第二事件的数量在事件数据的数量中的占比;若第二事件的生成成功率低于第二预设阈值,则向运维端发送调整信息,调整信息用于提示运维端降低第一预设阈值;接收来自运维端的调整结果信息,根据调整结果信息在第一预设时长后再次根据事件数据生成第二事件。
15.可以看出,在本技术实施例中,当第二事件的生成成功率过低时,适时调整合法性检验的预设阈值,提高第二事件的生成成功率,以调高第一订阅事件应用服务的生成数量,进而提高第一订阅事件应用服务的投递成功数量有利于提高第一订阅事件应用服务的传达成功次数。
16.结合第一方面,在一种可能的实施例中,事件中心服务器为服务器集群,服务器集群中包括多个事件中心服务器,多个事件中心服务器负责接收不同物理区域内的营销云客户端提交的事件数据,在接收营销云客户端提交的事件数据,根据事件数据生成第一事件之前,该方法还包括:通过多个事件中心服务器中任意一个事件中心服务器接收营销云客户端提交的事件数据,提取事件数据中的营销云客户端的位置信息,位置信息用于表征营销云客户端所处的物理位置;根据事件中心服务器的位置信息对营销云客户端的位置信息
进行匹配验证,事件中心服务器的位置信息用于表征事件中心服务器所处的物理位置;若营销云客户端的位置信息与事件中心服务器匹配验证成功,则根据事件数据生成第一事件;若营销云客户端的位置信息与事件中心服务器匹配验证失败,则根据营销云客户端的位置信息将事件数据发送至对应的事件中心服务器。
17.结合第一方面,在一种可能的实施例中,在再次投递第一订阅事件应用服务或投递第二订阅事件应用服务之后,该方法还包括:接收来自目标事件中心服务器负责的物理区域内的营销云客户端针对订阅事件应用服务的第二执行结果反馈信息,其中,目标事件中心服务器为服务器集群中包括多个事件中心服务器中的任一事件中心服务器,接收第二执行结果反馈信息的时间晚于接收第一执行结果反馈信息的时间;若第二执行结果反馈信息为执行失败,则获取与目标事件中心服务器的物理区域相邻的其他中心服务器的距离数据;根据距离数据确定与目标事件中心服务器距离最近的邻接中心服务器,将第一订阅事件应用服务或第二订阅事件应用服务发送至邻接中心服务器。
18.可以看出,在本技术实施例中,通过在不同的物理区域内设置专用于本区域的事件中心服务器,事件中心服务器只负责接收本区域内的营销云客户端的事件数据并生成对应的订阅事件应用服务发送至对应的营销云客户端。在第二执行结果反馈信息为执行失败时,通过相邻的其他事件中心服务器发送订阅事件应用服务,解决了由于目标事件中心服务器故障导致的执行失败的问题,减少了事件中心服务器的订阅事件应用服务发送压力。减少了订阅事件应用服务的发送覆盖范围,进而增加了订阅事件应用服务的发送成功率,提高了订阅事件应用服务发送失败时的失败原因调查成本。
19.第二方面,本技术实施例提供了一种基于应用服务执行结果的投递处理装置,用于执行基于应用服务执行结果的投递处理方法,应用于营销云系统的事件中心服务器,营销云系统包括事件中心服务器,营销云客户端,业务服务器和运维端,事件中心服务器,营销云客户端,业务服务器和运维端通过消息总线发送和接收消息,该基于应用服务执行结果的投递处理装置包括:
20.接收单元:用于接收营销云客户端提交的事件数据,根据事件数据生成第一事件;
21.检验单元:用于对第一事件进行合法性检验,获得通过合法性检验的第二事件;
22.生成单元:用于根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端;
23.判断单元:用于接收来自营销云客户端针对订阅事件应用服务的第一执行结果反馈信息,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。
24.第三方面,本技术实施例提供了一种电子设备,包括处理器、存储器、通信接口,以及一个或多个程序,一个或多个程序被存储在存储器中,并且被配置由处理器执行,一条或多条指令适于由处理器加载并执行如第一方面的方法的部分或者全部。
25.第四方面,本技术实施例提供了一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,计算机程序使得计算机执行如第一方面的方法的部分或者全部。
附图说明
26.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.图1为本技术实施例提供的一种基于应用服务执行结果的投递处理方法的应用场景示意图;
28.图2为本技术实施例提供的一种基于应用服务执行结果的投递处理方法的流程示意图;
29.图3为本技术实施例提供的一种事件中心服务器的结构示意图;
30.图4a为本技术实施例提供的一种服务器集群的结构示意图;
31.图4b为本技术实施例提供的一种服务器集群的物理位置分布示意图;
32.图5为本技术实施例提供的一种基于应用服务执行结果的投递处理装置的结构示意图;
33.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
34.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
35.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
36.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
37.首先对本技术实施例涉及的术语进行解释。
38.事件:事件为一种技术术语,用于解决微服务系统中因技术解耦,数据无法通过内存直接访问和传输,设计出来的一种用于数据传输的技术手段,事件包装了数据,是对数据的另一种称谓。
39.事件中心服务器:用于管理和分发业务服务器中的“业务服务”产生的“事件”。其中设置有多种功能性服务,例如事件校验服务,用于对“事件”的事件结构体的合法性进行检验;也有针对“事件”的专属订阅服务,统称为“订阅事件的应用服务”,例如针对“奖品发送事件”的“短信通知服务”,用于在事件校验通过时,向用户推送短信。
40.运维端:用于维护营销云系统的正常运行,以及通过对事件中心服务器的访问,对“事件”进行管理和追溯。
41.下面结合附图对本技术的实施例进行描述。
42.请参见图1,图1为本技术实施例提供的一种基于应用服务执行结果的投递处理方
法的应用场景示意图,如图1所示该基于应用服务执行结果的投递处理方法的应用场景100包括事件中心服务器101,运维端102和营销云客户端103。事件中心服务器101用于获取营销云客户端103发送的事件数据,根据事件数据生成第一事件等,并将最终生成得到的订阅事件应用服务投递至营销云客户端103。运维端102用于接收事件中心服务器101发送的报警信息等,并根据警报信息等对事件中心服务器101进行调整,发送维护结果信息等信息。营销云客户端103用于向事件中心服务器101发送的事件数据,接收事件中心服务器101发送的订阅事件应用服务等。
43.请参见图2,图2为本技术实施例提供的一种基于应用服务执行结果的投递处理方法的流程示意图,可基于图1所示的应用环境实施,如图2所示,包括步骤s201-s204:
44.s201:接收营销云客户端提交的事件数据,根据事件数据生成第一事件。
45.具体地,这里的营销云客户端可以为计算机,是指用户操作的,用于发出事件数据的设备,具体可以是手机、平板电脑、带无线收发功能的电脑、可穿戴设备、智能家居设备等。这里的事件数据可以是用户的操作指令,用户的设备信息,用户的地址信息等通过营销云客户端发送的数据。
46.在一种可能的实施例中,接收营销云客户端提交的事件数据,根据事件数据生成第一事件包括:接收营销云客户端提交的至少一个事件数据,确定至少一个事件数据中与预设事件相关联的目标事件数据;若目标事件数据的数量大于预设数量,则根据目标事件数据生成第一事件,第一事件与预设事件为同类型的事件。
47.具体地,事件中心服务器处理的事件数据数量较多,当营销云客户端提交的目标事件数据的数量大于预设数量,且这些目标事件数量与对应的第一事件为相同类型时,则可以根据这些大于预设数量的事件数据,生成同一个第一事件,以避免生成大量的相同第一事件进而生成大量相同的订阅事件应用服务。
48.在本技术实施例中,当目标事件数据的数量大于预设数量时,则将大于预设数量的目标事件合并生成一个第一事件,从而避免了事件中心服务器生成大量的相同第一事件进而生成大量相同的订阅事件应用服务,最终对同一营销云客户端发送大量相同的订阅事件应用服务,进而降低了消息维护的成本,提高了用户体验。
49.s202:对第一事件进行合法性检验,获得通过合法性检验的第二事件。
50.具体地,通过对第一事件进行过滤,得到过滤后通过合法性检验的第二事件,这里的第二事件满足本技术实施例中的数据完整性等要求,可以生成订阅事件应用服务,而被过滤的第一事件由于无法满足本技术实施例中的数据完整性等要求,无法生成订阅事件应用服务。
51.在一种可能的实施例中,对第一事件进行合法性检验,获得通过合法性检验的第二事件,包括:获取第一事件对应的目标事件数据,根据目标事件数据确定第一事件的数据完整性,数据完整性表示目标事件数据在第一事件包含的全部事件数据中所占的比例;若第一事件的数据完整性超过第一预设阈值,则确定第一事件通过合法性检验。
52.具体地,这里第一事件的合法性检验标准可以为第一事件的数据完整性程度,这里的数据完整性可以为生成订阅事件应用服务需要的数据种类,示例性地,可以为营销云客户端的地址,物理位置,用户的操作习惯,用户的推送接收偏好,用户的操作指令等数据。当第一事件的各项数据完整性超过第一预设阈值时,则确定第一事件通过合法性检验,通
过第一事件可以生成后续的订阅事件应用服务。
53.在本技术实施例中,通过合法性检验,将数据完整性不足的第一事件提前删除,只保留数据完整性较完整的第二数据,进而提高了订阅事件应用服务的质量,提高了订阅事件应用服务的投递成功率,降低了消息维护的成本,提高了系统的运行稳定性。
54.s203:根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端。
55.具体地,事件中心服务器根据第二事件可以得到对应的第一订阅事件应用服务,这里的第一订阅事件应用服务可以为发送至营销云客户端的短信文本数据,语音数据,图像数据等。
56.示例性地,请参见图3,图3为本技术实施例提供的一种事件中心服务器的结构示意图;事件中心服务器中包括业务服务器和中心服务器。这里的业务服务器用于接收营销云客户端发送的事件数据,并根据事件数据生成第一事件发送至中心服务器。当相同类型的事件数据大于预设数量的事件数据,生成同一个第一事件。中心服务器用于接收业务服务器生成的第一事件,对第一事件进行合法性检验,得到通过合法性检验的第二事件,根据第二事件生成对应的订阅事件的应用服务并投递至营销云客户端。
57.s204:接收来自营销云客户端针对订阅事件应用服务的第一执行结果反馈信息,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。
58.具体地,第一执行结果反馈信息用于反馈营销云客户端是否接收到事件中心服务器发送的第一订阅事件应用服务,若营销云客户端没有正常接收到第一订阅事件应用服务,则需要事件中心服务器根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。
59.在一种可能的实施例中,营销云系统还包括运维端,第一执行结果反馈信息包括执行失败或执行成功,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务包括:若第一执行结果反馈信息为执行失败,则记录执行失败原因,执行失败原因包括投递失败,或接收反馈失败;若执行失败原因为投递失败,则向运维端发送报警信息,报警信息用于提示运维端进行网络维护;接收来自运维端的维护结果信息,根据维护结果信息在第一预设时长后再次投递第一订阅事件应用服务;若未接收到来自运维端的维护结果信息,则在第二预设时长后再次投递第一订阅事件应用服务,第二预设时长大于第一预设时长;若执行原因为反馈失败,则生成并投递第二订阅事件应用服务,第二订阅事件应用服务与第一订阅事件应用服务对应不同的通信服务协议。
60.具体地,根据营销云客户端向事件中心服务器发送的执行结果反馈信息可以获知第一订阅事件是否投递执行成功。若执行失败还可以根据第一执行结果反馈信息获知执行失败原因。这里的执行失败原因包括投递失败,或接收反馈失败。这里的投递失败可以为营销云客户端向事件中心服务器发送了包含投递失败信息的反馈信息;接收反馈失败为事件中心服务器没有接收到营销云客户端发送的反馈信息。
61.若执行失败原因为投递失败,则证明事件中心服务器可能存在网络问题,此时则需要发送报警信息给运维端,通知运维端对事件中心服务器进行网络维护,当维护完成后运维端向事件中心服务器发送维护结果信息,事件中心服务器接收到维护结果信息后代表维护结束,并在第一预设时长后重新投递第一订阅事件应用服务。未接收到来自运维端的
维护结果信息,则在第二预设时长后再次投递第一订阅事件应用服务。
62.若执行原因为反馈失败,则证明营销云客户端由于非网络原因没有接收到事件中心服务器发送的第一订阅事件应用服务,则生成并投递第二订阅事件应用服务,第二订阅事件应用服务与第一订阅事件应用服务对应不同的通信服务协议。
63.在本技术实施例中,在第一执行结果反馈信息包括执行失败或执行成功后,将结果反馈信息保存,确定是否生成并投递第二订阅事件应用服务,或者重新发送第一订阅事件应用服务。从而提高了业务服务对订阅结果的感知程度,有利于事件的管理,降低了系统的维护成本。
64.在一种可能的实施例中,第一订阅事件应用服务为短信类型应用服务,若执行原因为反馈失败,则生成并投递第二订阅事件应用服务,第二订阅事件应用服务与第一订阅事件应用服务对应不同的通信服务协议,包括:通信服务协议包括简单网络管理协议sgmp,移动通信互联网短信网关接口协议cmpp和联合通信短消息网关系统接口协议sgip;获取第一订阅事件应用服务的通信服务协议;生成第二订阅事件应用服务,第二订阅事件应用服务包括根据非第一订阅事件应用服务的通信服务协议投递的两个订阅事件应用服务。
65.具体地,这里的文字类型的应用服务可以为短信息类应用服务,事件中心服务器接收营销云客户端发送的事件数据,生成对应的短信息发送回对应的营销云客户端。不同的通行服务协议分别对应不同的通信服务运营商,当事件中心服务器发送的第一订阅事件应用服务的执行原因为反馈失败,则证明营销云客户端由于非网络原因等没有接收到事件中心服务器发送的第一订阅事件应用服务,此时通过改变通行服务协议改变不同的运营商进行投递可以规避由于第三方通信服务商可能导致的投递失败的风险。
66.在本技术实施例中,在当事件中心服务器发送的第一订阅事件应用服务的执行原因为反馈失败时,通过改变不同的通行服务协议,以规避由于第三方通信服务商可能导致的投递失败的风险,提高了事件中心服务器在发送第二订阅事件应用服务的成功率,进而提高了系统稳定性,降低了系统的维护成本。
67.在一种可能的实施例中,若第一执行结果反馈信息的发送成功率小于第二预设阈值,则获取第二事件的生成成功率,第二事件的生成成功率用于表征第二事件的数量在事件数据的数量中的占比;若第二事件的生成成功率低于第二预设阈值,则向运维端发送调整信息,调整信息用于提示运维端降低第一预设阈值;接收来自运维端的调整结果信息,根据调整结果信息在第一预设时长后再次根据事件数据生成第二事件。
68.具体地,事件中心服务器在第一执行结果反馈信息执行结束后,记录第一执行结果反馈信息的执行结果,根据记录的执行结果进行数据统计分析。当第一执行结果反馈信息的发送成功率小于第二预设阈值,则证明该事件中心服务器的订阅事件应用服务发送成功率较低,需要对事件中心服务器进行调整。此时则获取第二事件的生成成功率,这里的生成成功率即为事件数据转化为第二事件的转化率,若第二事件的生成成功率过低则证明第一事件的合法性检验的标准过高,需要生成调整信息并发送至运维端,调整合法性检验的标准,降低第一预设阈值,以生成更多的订阅事件应用服务。
69.在本技术实施例中,当第二事件的生成成功率过低时,适时调整合法性检验的预设阈值,提高第二事件的生成成功率,以调高第一订阅事件应用服务的生成数量,进而提高第一订阅事件应用服务的投递成功数量有利于提高第一订阅事件应用服务的传达成功次
数。
70.在一种可能的实施例中,事件中心服务器为服务器集群,服务器集群中包括多个事件中心服务器,多个事件中心服务器负责接收不同物理区域内的营销云客户端提交的事件数据,在接收营销云客户端提交的事件数据,根据事件数据生成第一事件之前,方法还包括:通过多个事件中心服务器中任意一个事件中心服务器接收营销云客户端提交的事件数据,提取事件数据中的营销云客户端的位置信息,位置信息用于表征营销云客户端所处的物理位置;根据事件中心服务器的位置信息对营销云客户端的位置信息进行匹配验证,事件中心服务器的位置信息用于表征事件中心服务器所处的物理位置;若营销云客户端的位置信息与事件中心服务器匹配验证成功,则根据事件数据生成第一事件;若营销云客户端的位置信息与事件中心服务器匹配验证失败,则根据营销云客户端的位置信息将事件数据发送至对应的事件中心服务器。
71.具体地,请参见图4a,图4a为本技术实施例提供的一种服务器集群的结构示意图。如图4a所示,事件中心服务器为服务器集群,在服务器集群中包括多个事件中心服务器,多个事件中心服务器通过消息总线连接通信,此处仅以包括事件中心服务器1,事件中心服务器2和事件中心服务器3三个事件中心服务器的集群为例,事件中心服务器1,事件中心服务器2和事件中心服务器3三个事件中心服务器通过消息总线连接通信。请参见图4b,图4b为本技术实施例提供的一种服务器集群的物理位置分布示意图;如图4b所示,在区域1,区域2,区域3分别设置了三个服务器。其中,在事件中心服务器1所在地设置了事件中心服务器1,在事件中心服务器2所在地设置了事件中心服务器2,在事件中心服务器3所在地设置了事件中心服务器3。各个事件中心服务器分别负责接收本区域内的营销云客户端提交的事件数据,并生成对应的订阅事件应用服务发送回对应的营销云客户端。
72.营销云客户端提交的事件数据中还可以包括营销云客户端的物理位置信息,通过位置信息事件中心服务器可以判断该营销云客户端发送的事件数据是否由该事件中心服务器处理,若接收到了非该事件中心服务器处理的事件数据,则可以根据营销云客户端的物理位置信息发送至对应的事件中心服务器处理。
73.在一种可能的实施例中,在再次投递第一订阅事件应用服务或投递第二订阅事件应用服务之后,方法还包括:接收来自目标事件中心服务器负责的物理区域内的营销云客户端针对订阅事件应用服务的第二执行结果反馈信息,其中,目标事件中心服务器为服务器集群中包括多个事件中心服务器中的任一事件中心服务器,接收第二执行结果反馈信息的时间晚于接收第一执行结果反馈信息的时间;若第二执行结果反馈信息为执行失败,则获取与目标事件中心服务器的物理区域相邻的其他中心服务器的距离数据;根据距离数据确定与目标事件中心服务器距离最近的邻接中心服务器,将第一订阅事件应用服务或第二订阅事件应用服务发送至邻接中心服务器。
74.具体地,当事件中心服务器投递第一订阅事件应用服务出现投递失败,或接收反馈失败后,将重新投递第一订阅事件应用服务,或者生成第二订阅事件应用服务投递。营销云客户端将发送第二执行结果反馈信息至事件中心服务器反馈重新投递的第一订阅事件应用服务,或者生成的第二订阅事件应用服务投递的投递情况。若重新投递的第一订阅事件应用服务,或者生成的第二订阅事件应用服务投递的投递情况仍为失败,则证明事件中心服务器有可能被营销云客户端误屏蔽或者发送的订阅事件应用服务被系统误拦截。因此
该事件中心服务器则将事件数据发送至与该事件中心服务器物理距离最近的其他事件中心服务器,通过其他事件中心服务器进行发送。
75.示例性地,请参见图4b,若事件中心服务器2接收到第二执行结果反馈信息为执行失败,则需要获取事件中心服务器1和事件中心服务器3的距离数据,可以看出,事件中心服务器3距离事件中心服务器2的距离要小于事件中心服务器1,事件中心服务器3则为事件中心服务器2距离最近的邻接中心服务器。事件中心服务器2则将第一订阅事件应用服务或第二订阅事件应用服务发送至事件中心服务器3,事件中心服务器3接收到后再发送至对应的营销云客户端。
76.在本技术实施例中,通过在不同的物理区域内设置专用于本区域的事件中心服务器,事件中心服务器只负责接收本区域内的营销云客户端的事件数据并生成对应的订阅事件应用服务发送至对应的营销云客户端。在第二执行结果反馈信息为执行失败时,通过相邻的其他事件中心服务器发送订阅事件应用服务,解决了由于目标事件中心服务器故障导致的执行失败的问题,减少了事件中心服务器的订阅事件应用服务发送压力。减少了订阅事件应用服务的发送覆盖范围,进而增加了订阅事件应用服务的发送成功率,提高了订阅事件应用服务发送失败时的失败原因调查成本。
77.通过实施本技术实施例的方法接收营销云客户端发送的事件数据生成第一事件;对第一事件进行合法性检验,获得通过合法性检验的第二事件;根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端;接收来自营销云客户端针对订阅事件应用服务的执行结果反馈信息,根据第一、第二多种执行结果反馈信息确定重新发送订阅事件应用服务的方案。从而提高了业务服务对订阅结果的感知程度,提高了订阅事件应用服务的发送成功率,有利于事件的管理,降低了系统的维护成本。
78.基于上述配置方法实施例的描述,本技术还提供一种应用服务执行结果的投递处理装置500,该应用服务执行结果的投递处理装置500可以是运行于终端中的一个计算机程序(包括程序代码)。该应用服务执行结果的投递处理装置500可以执行图2所示的方法。请参见图5,该应用服务执行结果的投递处理装置500包括:
79.接收单元501:用于接收营销云客户端提交的事件数据,根据事件数据生成第一事件;
80.检验单元502:用于对第一事件进行合法性检验,获得通过合法性检验的第二事件;
81.生成单元503:用于根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端;
82.判断单元504:用于接收来自营销云客户端针对订阅事件应用服务的第一执行结果反馈信息,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。
83.在一种可能的实施例中,在接收营销云客户端提交的事件数据,根据事件数据生成第一事件方面生成单元503还具体用于:接收营销云客户端提交的至少一个事件数据,确定至少一个事件数据中与预设事件相关联的目标事件数据;若目标事件数据的数量大于预设数量,则根据目标事件数据生成第一事件,第一事件与预设事件为同类型的事件。
84.在一种可能的实施例中,在对第一事件进行合法性检验,获得通过合法性检验的第二事件方面,检验单元502还具体用于:获取第一事件对应的目标事件数据,根据目标事
件数据确定第一事件的数据完整性,数据完整性表示目标事件数据在第一事件包含的全部事件数据中所占的比例;若第一事件的数据完整性超过第一预设阈值,则确定第一事件通过合法性检验。
85.在一种可能的实施例中,营销云系统还包括运维端,在第一执行结果反馈信息包括执行失败或执行成功,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务方面,生成单元503还具体用于:若第一执行结果反馈信息为执行失败,则记录执行失败原因,执行失败原因包括投递失败,或接收反馈失败;若执行失败原因为投递失败,则向运维端发送报警信息,报警信息用于提示运维端进行网络维护;接收来自运维端的维护结果信息,根据维护结果信息在第一预设时长后再次投递第一订阅事件应用服务;若未接收到来自运维端的维护结果信息,则在第二预设时长后再次投递第一订阅事件应用服务,第二预设时长大于第一预设时长;若执行原因为反馈失败,则生成并投递第二订阅事件应用服务,第二订阅事件应用服务与第一订阅事件应用服务对应不同的通信服务协议。
86.在一种可能的实施例中,若第一执行结果反馈信息的发送成功率小于第二预设阈值,生成单元503还具体用于:则获取第二事件的生成成功率,第二事件的生成成功率用于表征第二事件的数量在事件数据的数量中的占比;若第二事件的生成成功率低于第二预设阈值,则向运维端发送调整信息,调整信息用于提示运维端降低第一预设阈值;接收来自运维端的调整结果信息,根据调整结果信息在第一预设时长后再次根据事件数据生成第二事件。
87.在一种可能的实施例中,事件中心服务器为服务器集群,服务器集群中包括多个事件中心服务器,多个事件中心服务器负责接收不同物理区域内的营销云客户端提交的事件数据,在接收营销云客户端提交的事件数据,根据事件数据生成第一事件之前,检验单元502还具体用于:通过多个事件中心服务器中任意一个事件中心服务器接收营销云客户端提交的事件数据,提取事件数据中的营销云客户端的位置信息,位置信息用于表征营销云客户端所处的物理位置;根据事件中心服务器的位置信息对营销云客户端的位置信息进行匹配验证,事件中心服务器的位置信息用于表征事件中心服务器所处的物理位置;若营销云客户端的位置信息与事件中心服务器匹配验证成功,则根据事件数据生成第一事件;若营销云客户端的位置信息与事件中心服务器匹配验证失败,则根据营销云客户端的位置信息将事件数据发送至对应的事件中心服务器。
88.在一种可能的实施例中,在再次投递第一订阅事件应用服务或投递第二订阅事件应用服务之后,生成单元503还具体用于:接收来自目标事件中心服务器负责的物理区域内的营销云客户端针对订阅事件应用服务的第二执行结果反馈信息,其中,目标事件中心服务器为服务器集群中包括多个事件中心服务器中的任一事件中心服务器,接收第二执行结果反馈信息的时间晚于接收第一执行结果反馈信息的时间;若第二执行结果反馈信息为执行失败,则获取与目标事件中心服务器的物理区域相邻的其他中心服务器的距离数据;根据距离数据确定与目标事件中心服务器距离最近的邻接中心服务器,将第一订阅事件应用服务或第二订阅事件应用服务发送至邻接中心服务器。
89.基于上述方法实施例和装置实施例的描述,请参见图6,图6为本技术实施例提供的一种电子设备600的结构示意图,本实施例中所描述的电子设备600,如图6所示,该电子设备600包括处理器601、存储器602、通信接口603以及一个或多个程序,上述一个或多个程
序通过应用程序代码的形式被存储在上述存储器中,并且被配置由上述处理器执行,本技术实施例中,上述程序包括用于执行以下步骤的指令:
90.接收营销云客户端提交的事件数据,根据事件数据生成第一事件;对第一事件进行合法性检验,获得通过合法性检验的第二事件;根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端;接收来自营销云客户端针对订阅事件应用服务的第一执行结果反馈信息,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。
91.在一种可能的实施例中,接收营销云客户端提交的事件数据,根据事件数据生成第一事件包括:接收营销云客户端提交的至少一个事件数据,确定至少一个事件数据中与预设事件相关联的目标事件数据;若目标事件数据的数量大于预设数量,则根据目标事件数据生成第一事件,第一事件与预设事件为同类型的事件。
92.在一种可能的实施例中,对第一事件进行合法性检验,获得通过合法性检验的第二事件,包括:获取第一事件对应的目标事件数据,根据目标事件数据确定第一事件的数据完整性,数据完整性表示目标事件数据在第一事件包含的全部事件数据中所占的比例;若第一事件的数据完整性超过第一预设阈值,则确定第一事件通过合法性检验。
93.在一种可能的实施例中,营销云系统还包括运维端,第一执行结果反馈信息包括执行失败或执行成功,根据第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务包括:若第一执行结果反馈信息为执行失败,则记录执行失败原因,执行失败原因包括投递失败,或接收反馈失败;若执行失败原因为投递失败,则向运维端发送报警信息,报警信息用于提示运维端进行网络维护;接收来自运维端的维护结果信息,根据维护结果信息在第一预设时长后再次投递第一订阅事件应用服务;若未接收到来自运维端的维护结果信息,则在第二预设时长后再次投递第一订阅事件应用服务,第二预设时长大于第一预设时长;若执行原因为反馈失败,则生成并投递第二订阅事件应用服务,第二订阅事件应用服务与第一订阅事件应用服务对应不同的通信服务协议。
94.在一种可能的实施例中,若第一执行结果反馈信息的发送成功率小于第二预设阈值,则获取第二事件的生成成功率,第二事件的生成成功率用于表征第二事件的数量在事件数据的数量中的占比;若第二事件的生成成功率低于第二预设阈值,则向运维端发送调整信息,调整信息用于提示运维端降低第一预设阈值;接收来自运维端的调整结果信息,根据调整结果信息在第一预设时长后再次根据事件数据生成第二事件。
95.在一种可能的实施例中,事件中心服务器为服务器集群,服务器集群中包括多个事件中心服务器,多个事件中心服务器负责接收不同物理区域内的营销云客户端提交的事件数据,在接收营销云客户端提交的事件数据,根据事件数据生成第一事件之前,该方法还包括:通过多个事件中心服务器中任意一个事件中心服务器接收营销云客户端提交的事件数据,提取事件数据中的营销云客户端的位置信息,位置信息用于表征营销云客户端所处的物理位置;根据事件中心服务器的位置信息对营销云客户端的位置信息进行匹配验证,事件中心服务器的位置信息用于表征事件中心服务器所处的物理位置;若营销云客户端的位置信息与事件中心服务器匹配验证成功,则根据事件数据生成第一事件;若营销云客户端的位置信息与事件中心服务器匹配验证失败,则根据营销云客户端的位置信息将事件数据发送至对应的事件中心服务器。
96.在一种可能的实施例中,在再次投递第一订阅事件应用服务或投递第二订阅事件应用服务之后,该方法还包括:接收来自目标事件中心服务器负责的物理区域内的营销云客户端针对订阅事件应用服务的第二执行结果反馈信息,其中,目标事件中心服务器为服务器集群中包括多个事件中心服务器中的任一事件中心服务器,接收第二执行结果反馈信息的时间晚于接收第一执行结果反馈信息的时间;若第二执行结果反馈信息为执行失败,则获取与目标事件中心服务器的物理区域相邻的其他中心服务器的距离数据;根据距离数据确定与目标事件中心服务器距离最近的邻接中心服务器,将第一订阅事件应用服务或第二订阅事件应用服务发送至邻接中心服务器。
97.示例性地,上述电子设备可包括但不仅限于处理器、存储器、通信接口以及一个或多个程序,还可以包括内存、电源、应用客户端模块等。本领域技术人员可以理解,所述示意图仅仅是电子设备的示例,并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
98.本技术实施例还提供了一种计算机存储介质(memory),所述计算机存储介质是信息处理设备或信息发送设备或信息接收设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速ram存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机存储介质。在一个实施例中,可由处理器加载并执行计算机存储介质中存放的一条或多条指令,以实现上述应用服务执行结果的投递处理方法的相应步骤。
99.以上对本技术实施例进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
技术特征:
1.一种基于应用服务执行结果的投递处理方法,其特征在于,应用于营销云系统的事件中心服务器,所述营销云系统包括所述事件中心服务器和营销云客户端,所述事件中心服务器,所述营销云客户端,业务服务器和运维端通过消息总线通信连接,所述方法包括:接收所述营销云客户端提交的事件数据,根据所述事件数据生成第一事件;对所述第一事件进行合法性检验,获得通过所述合法性检验的第二事件;根据所述第二事件生成第一订阅事件应用服务,并将所述第一订阅事件应用服务投递至所述营销云客户端;接收来自所述营销云客户端针对所述订阅事件应用服务的第一执行结果反馈信息,根据所述第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。2.根据权利要求1所述的方法,其特征在于,所述接收所述营销云客户端提交的事件数据,根据所述事件数据生成第一事件包括:接收营销云客户端提交的至少一个事件数据,确定所述至少一个事件数据中与预设事件相关联的目标事件数据;若所述目标事件数据的数量大于预设数量,则根据所述目标事件数据生成第一事件,所述第一事件与所述预设事件为同类型的事件。3.根据权利要求2所述的方法,其特征在于,所述对所述第一事件进行合法性检验,获得通过所述合法性检验的第二事件,包括:获取所述第一事件对应的目标事件数据,根据所述目标事件数据确定所述第一事件的数据完整性,所述数据完整性表示所述目标事件数据在所述第一事件包含的全部事件数据中所占的比例;若所述第一事件的数据完整性超过第一预设阈值,则确定所述第一事件通过合法性检验。4.根据权利要求1-3任一项所述的方法,其特征在于,所述营销云系统还包括运维端,所述第一执行结果反馈信息包括执行失败或执行成功,所述根据所述第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服务,包括:若所述第一执行结果反馈信息为执行失败,则记录执行失败原因,所述执行失败原因包括投递失败,或接收反馈失败;若所述执行失败原因为投递失败,则向运维端发送报警信息,所述报警信息用于提示所述运维端进行网络维护;接收来自所述运维端的维护结果信息,根据所述维护结果信息在第一预设时长后再次投递所述第一订阅事件应用服务;若未接收到来自所述运维端的维护结果信息,则在第二预设时长后再次投递所述第一订阅事件应用服务,所述第二预设时长大于所述第一预设时长;若所述执行失败原因为反馈失败,则生成并投递第二订阅事件应用服务,所述第二订阅事件应用服务与所述第一订阅事件应用服务对应不同的通信服务协议。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:若所述第一执行结果反馈信息的发送成功率小于第二预设阈值,则获取第二事件的生成成功率,所述第二事件的生成成功率用于表征第二事件的数量在事件数据的数量中的占比;
若所述第二事件的生成成功率低于第二预设阈值,则向运维端发送调整信息,所述调整信息用于提示所述运维端降低所述第一预设阈值;接收来自所述运维端的调整结果信息,根据所述调整结果信息在第一预设时长后重新生成第二事件。6.根据权利要求4所述的方法,其特征在于,所述事件中心服务器为服务器集群,所述服务器集群中包括多个所述事件中心服务器,所述多个事件中心服务器负责接收不同物理区域内的所述营销云客户端提交的事件数据,在接收所述营销云客户端提交的事件数据,根据所述事件数据生成第一事件之前,所述方法还包括:通过所述多个事件中心服务器中任意一个事件中心服务器接收所述营销云客户端提交的事件数据,提取所述事件数据中的营销云客户端的位置信息,所述位置信息用于表征所述营销云客户端所处的物理位置;根据事件中心服务器的位置信息对所述营销云客户端的位置信息进行匹配验证,所述事件中心服务器的位置信息用于表征所述事件中心服务器所处的物理位置;若所述营销云客户端的位置信息与事件中心服务器匹配验证成功,则根据所述事件数据生成第一事件;若所述营销云客户端的位置信息与事件中心服务器匹配验证失败,则根据所述营销云客户端的位置信息将所述事件数据发送至对应的事件中心服务器。7.根据权利要求6所述的方法,其特征在于,在再次投递所述第一订阅事件应用服务或投递第二订阅事件应用服务之后,所述方法还包括:接收来自目标事件中心服务器负责的物理区域内的营销云客户端针对所述订阅事件应用服务的第二执行结果反馈信息,其中,所述目标事件中心服务器为所述服务器集群中包括多个事件中心服务器中的任一事件中心服务器,接收所述第二执行结果反馈信息的时间晚于接收所述第一执行结果反馈信息的时间;若所述第二执行结果反馈信息为执行失败,则获取与所述目标事件中心服务器的物理区域相邻的其他中心服务器的距离数据;根据所述距离数据确定与所述目标事件中心服务器距离最近的邻接中心服务器,将所述第一订阅事件应用服务或所述第二订阅事件应用服务发送至所述邻接中心服务器。8.一种基于应用服务执行结果的投递处理装置,用于执行所述基于应用服务执行结果的投递处理方法,应用于营销云系统的事件中心服务器,所述营销云系统包括所述事件中心服务器,营销云客户端,业务服务器和运维端,所述事件中心服务器,所述营销云客户端,所述业务服务器和所述运维端通过消息总线发送和接收消息,其特征在于,所述装置包括:接收单元:用于接收所述营销云客户端提交的事件数据,根据所述事件数据生成第一事件;检验单元:用于对所述第一事件进行合法性检验,获得通过所述合法性检验的第二事件;生成单元:用于根据所述第二事件生成第一订阅事件应用服务,并将所述第一订阅事件应用服务投递至所述营销云客户端;判断单元:用于接收来自所述营销云客户端针对所述订阅事件应用服务的第一执行结果反馈信息,根据所述第一执行结果反馈信息确定是否生成并投递第二订阅事件应用服
务。9.一种电子设备,其特征在于,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-7中任一项所述的方法。
技术总结
本发明公开了一种基于应用服务执行结果的投递处理方法及相关装置,应用于营销云系统的事件中心服务器,该方法包括:接收营销云客户端提交的事件数据,根据事件数据生成第一事件;对第一事件进行合法性检验,获得通过合法性检验的第二事件;根据第二事件生成第一订阅事件应用服务,并将第一订阅事件应用服务投递至营销云客户端;接收来自营销云客户端针对订阅事件应用服务的执行结果反馈信息,根据执行结果反馈信息确定是否生成并投递第二订阅事件应用服务。从而提高了业务服务对订阅结果的感知程度,有利于事件的管理,降低了系统的维护成本。护成本。护成本。
技术研发人员:彭双全
受保护的技术使用者:深圳市思为软件技术有限公司
技术研发日:2023.03.21
技术公布日:2023/7/7
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种鞘管可替换的电子宫腔镜的制作方法 下一篇:一种两轮机器人自平衡控制方法和机器人
