无状态计算的数据处理方法、程序产品及电子设备与流程

专利2023-06-23  136



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.可以理解的,根据输出描述数据对第一计算结果进行后处理,可以方便用户得到想要的结果形式。
28.第二方面,本技术实施例提供了一种计算机可读存储介质,前述计算机可读存储介质上存储有指令,指令在电子设备上执行时使电子设备执行上述第一方面以及上述第一方面的一种可能的实现中任一项的无状态计算的数据处理方法。
29.第三方面,本技术实施例提供了一种芯片装置,前述芯片装置包括:
30.通信接口,用于输入和/或输出信息;
31.处理器,用于执行计算机可执行程序,使得安装有所述芯片装置的电子设备执行上述第一方面以及上述第一方面的一种可能的实现中任一项无状态计算的数据处理方法。
32.第四方面,本技术实施例提供了一种计算机程序产品,前述计算机程序产品包括指令,当所述指令被执行时实现上述第一方面以及上述第一方面的一种可能的实现中任一项所述的无状态计算的数据处理方法。
33.第五方面,本技术实施例提供了一种电子设备,包括:
34.存储器,用于存储由电子设备的一个或多个处理器执行的指令,以及
35.处理器,当指令被电子设备的一个或多个处理器执行时,处理器用于执行存储器中存储的指令,以实现上述第一方面以及上述第一方面的一种可能的实现中任一项无状态计算的数据处理方法。
附图说明
36.图1根据本技术的一些实施例,示出了一种保险业务场景;
37.图2a根据本技术的一些实施例,示出了一种终端100的车辆保险页面201a;
38.图2b根据本技术的一些实施例,示出了一种终端100的健康保险页面201b;
39.图3a根据本技术的一些实施例,示出了一种包括了数据节点400的保险业务场景;
40.图3b根据本技术的一些实施例,示出一种计算服务节点200a中数据接口的要求;
41.图4根据本技术的一些实施例示出了用户终端100、数据节点400、适配系统300以及计算服务节点200a完成保费计算的交互流图;
42.图5根据本技术的一些实施例,示出了一种计算服务节点200a的装置结构图;
43.图6根据本技术的一些实施例,示出了一种无状态计算的数据处理方法流程图;
44.图7根据本技术的一些实施例,示出了一种服务器200的结构示意图。
具体实施方式
45.本技术的说明性实施例包括但不限于一种无状态计算的数据处理方法、程序产品及电子设备。
46.为使本技术的目的、技术方案和优点更加清楚,下面通过结合附图和实施方案,对本技术实施例的技术方案做进一步地详细描述。显然,所描述的实施例仅是本发明部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
47.下面先对相关术语进行介绍。
48.无状态计算:是指计算服务端在处理请求的处理过程中,不会在服务端保留数据,同时,服务端在处理多次请求的过程中,各个请求之间不存在依赖关系。
49.下面结合附图详细说明本技术实施例的技术方案。
50.图1根据本技术的一些实施例,示出了本技术的技术方案适用的一种保险业务场景。如图1所示,该场景中包括,用户、用户使用的用户终端100、包含各种配置数据的适配系统300以及用于对于保险业务进行计算服务的服务器200。其中,服务器200中还包括一个计算服务节点200a。
51.可以理解的,上述场景中的用户可以为投保人或者保险公司的业务人员。下面以用户为投保人为例进行阐述。
52.用户终端100可以通过网络与服务器200连接,从而进行数据传输。例如,用户终端100可以通过无线保真(wireless-fidelity,wi-fi)网络、蓝牙等无线网络和服务器200进行通信。用户终端100还可以安装有保险公司的用户软件,例如保险应用程序(application,app)。投保人可以通过该用户终端100安装的保险app购买自己需要的保险产品。例如,投保人可以通过用户终端100安装的保险应用程序填写保险单据以及支付保费等。
53.服务器200中的计算服务节点200a可以用于处理与保险有关的业务。例如,对投保人填写的保险单据中的保费进行计算,以及对填写完成的保单单据进行校验等。在一些实施例中,投保人在用户终端100的页面上填写投保内容,服务器200中的计算服务节点200a接收有关投保人填写的与投保要素相关的计算请求,并根据计算请求中的配置要求访问适配系统300获取所需配置数据,其中,适配系统300包括一个或者多个系统,例如文件系统、数据库、远程存储等,各系统存储有处理保险业务所需的配置数据,例如计算模板文件、计算公式文件、费率表文件等配置数据。
54.例如,投保人在如图2a所示的用户终端100的车辆保险页面201a上填写车辆保险的投保内容,填写的内容包括保险人姓名、联系方式、家庭住址、车辆年限、保险期限以及保险金额等投保要素;在投保人填写完后,计算服务节点200a接收用户终端100发送的有关计算车辆保费的请求数据,根据请求数据中的配置要求,在适配系统300中获取配置数据,配置创建与计算车辆保费相对应的计算服务实例需要的计算公式文件、计算模板文件、费率表文件等数据。
55.然而,计算服务节点200a在接收不同的保险业务请求数据的时候,由于请求数据中要求处理的保险业务内容不同,计算服务节点200a需要根据请求数据中不同的配置要求,从适配系统300中获取不同的配置数据,例如获取不同的计算公式文件、计算模板文件、
费率表文件等,根据获取到的不同的配置数据,创建计算服务实例。
56.可以理解,由于不同的保险业务所对应的请求数据不同,在请求数据内容不同的情况下,计算服务节点200a每次都需要根据请求数据从适配系统300中获取与请求数据对应的配置数据。由于获取的配置数据不同,计算服务节点200a在处理不同的保险业务对应的请求数据时,这些不同的配置数据之间会造成影响,造成处理某些保险业务失败。
57.另外,计算服务节点200a在处理相同的保险业务对应的多次请求数据时,由于处理每次请求数据都要从适配系统300中获取配置数据,当配置数据变化时,与请求数据对应的计算结果会发生变化,从而使得计算结果不可预知,而且当需要扩展计算服务节点200a时,需要考虑各种适配场景,从而带来了复杂性。
58.例如,对于计算服务节点200a来说,对于如图1所示的场景,计算服务节点200a需要接收用户终端100发送的请求数据来创建计算服务实例,然而创建不同保险业务对应的计算服务实例是不同的。例如,以投保过程中计算保费为例,如图2a示出的车辆保险页面201a对应的请求数据是计算车辆保险的保费,图2b示出的健康保险页面201b对应的请求数据为计算健康保险的保费,由于处理的保险业务不同,对应的构建的计算服务实例所对应的配置数据以及结构化的业务数据也是不同的,从适配系统300中获取的配置数据也是不同的。在处理请求时,这些不同的配置数据之间可能会造成影响,造成计算车辆保险的保费以及计算健康保险的保费失败。另外,如果计算服务节点200a接收到的多次与如图2a示出的车辆保险页面201a对应的请求数据,由于每次都需要根据请求数据中的要求获得配置数据,当配置数据变化时,根据配置数据得到的计算结果就会发生变化,从而使得计算结果不可预知,可能对于相同的请求数据,得到的车辆保险的保费计算结果就不同,而且当需要扩展计算服务节点200a时,需要考虑各种适配场景,也带来了复杂性。
59.为此,本技术提供了一种无状态计算的数据处理方法,该方法规定计算服务节点200a获取的请求数据要与该节点中数据接口规定的要求相对应。当计算服务节点200a获取到请求数据后,先确定请求数据的格式以及内容符合要求,具体地,不仅确定请求数据的输入描述数据中包括了配置信息参数和第一输入数据,其中对第一输入数据进行解码得到配置文件数据以及包含了保费计算因子在内的业务数据,而且确定请求数据包括输出描述数据;然后,根据配置信息参数以及配置文件数据创建计算服务实例;再根据包括保费计算因子在内的业务数据运行计算服务实例,得到第一计算结果;最后根据输出描述数据对第一计算结果进行后处理,得到第二计算结果,并将第二计算结果输出。此时,当计算服务节点200a对不同的请求数据进行处理时,处理各个请求数据的计算过程之间是没有联系的,从而实现无状态计算。
60.可以理解的,由于计算服务节点200a中的数据接口规定了请求数据需要包括与处理的保险业务相对应的配置数据,所以,在计算服务节点200a处理请求数据中的保险业务时,已经得到处理该保险业务所需的配置数据,即计算服务节点200a在处理请求数据的过程中就不需要与不同的系统适配,在上述图1所示的处理保险业务的场景中就不需要与适配系统300进行适配,从而可以不依赖于外部数据来处理请求数据对应的保险业务,进而实现在处理不同的请求数据时,各个处理过程之间不会影响,另外,对于相同的请求数据,会有相同的计算结果,也使得计算服务节点200a的计算能力的弹性伸缩更容易地实现。
61.可以理解的,在计算服务节点200a接收请求数据之前需要添加一个数据节点用来
获取创建和运行计算服务实例所需的所有配置数据,并且根据获得的配置数据生成请求数据并发送给计算服务节点200a,其中生成的请求数据与计算服务节点200a中的接口规定要求相对应。
62.图3a根据本技术的一些实施例,示出了一种包括了数据节点400的保险业务场景。可以看到,该场景与图1所示的场景相似,仅仅是服务器200中增加了一个数据节点400。当计算服务节点200a处理用户终端100发出的与保险业务相关的内容前,数据节点400先接收用户终端100发送的请求数据,根据请求数据在配置系统300中获取创建和运行计算服务实例所需的数据,并且将获得的数据处理成符合计算服务节点200a的接口规定的要求。
63.可以理解的,数据节点400可以在服务器200上,也可以在其他服务器上,具体设置不做要求。
64.例如,对于如图2a所示的车辆保险相关的保险业务,用户终端100获取计算车辆保险的保费请求后,向数据节点400发送计算车辆保费的请求数据;数据节点400根据该请求数据从适配系统300中获取构建与计算车辆保费相关服务实例所需的配置数据,并且将创建计算服务实例的配置数据以及运行计算服务实例的业务数据,按照计算服务节点200a中的数据接口规定的要求进行处理得到第一数据结果;数据节点400向计算服务节点200a发送与保险业务相关的请求数据,请求数据中包括前述处理得到的第一数据结果;计算服务节点200a获取到请求数据后,先确认请求数据符合数据接口要求,然后再对该请求数据进行处理,根据请求数据中的配置数据创建与计算车辆保费相对应的计算服务实例,根据业务数据运行与计算车辆保费相对应的计算服务实例,得到车辆保费结果,然后按照请求数据中规定的与请求数据对应的结果的数据输出方式进行输出。
65.可以理解的,因为数据节点400将创建和运行计算服务实例所需的数据都获取到后,并根据计算服务节点200a中的接口要求生成请求数据并发送给计算服务节点200a,所以计算服务节点200a接收的请求数据已经包含了创建车辆保费相对应的计算服务实例的配置数据,以及运行该计算服务实例所需的包括计算因子在内的结构化的业务数据。此时,计算服务节点200a在创建并且运行计算服务实例的过程中不需要从适配系统300中获取配置数据,例如,不需要从适配系统300中获取关于计算保费的计算公式文件、计算模板文件、费率表文件等数据。因而,对于计算车辆保费的保险业务来说,计算服务节点200a根据已有接收的请求数据就可以实现保险业务的处理,也不会受到其他请求数据中待处理保险业务的影响,并且根据请求数据得到的结果唯一,从而实现了无状态计算。
66.可以理解的,本技术的技术方案也可以运用到其他场景下,比如说业务人员在核保的过程中等,在此不再赘述。
67.需要说明的是,图1以及图3a所示的应用场景中的用户终端100可以是任意一种可以安装保险公司的软件,并且具有显示屏的电子设备。用户终端100包括但不限于手机、平板电脑、智慧屏、可穿戴设备(例如,手表、手环、头盔、耳机等)、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等电子设备中的一种。服务器200可以是单独的服务器,也可以是多个服务器构成的服务器集群。计算服务节点200a可以是服务器上具有计算和存储能力的处理器和存储器的集合,也可以是服务器。数据节点400可以是与计算服务节点200a所属的
相同的服务器或者是与计算服务节点200a所属的不同的服务器上具有计算和存储能力的处理器和存储器的集合,也可以是服务器。
68.图3b根据本技术的一些实施例,示出一种计算服务节点200a中数据接口的要求,该要求规定了请求数据中需要包括的内容。
69.如图3b所示,数据接口要求请求数据中需要包括输入描述数据以及输出描述数据。
70.其中:输入描述数据包括计算结果跟踪标识、数据传递方式、计算模板入口文件标识等配置信息参数,以及第一输入数据等,其中,配置信息参数至少用于对计算服务实例运行的控制,第一输入数据包括被一起编码过的配置文件数据以及业务数据,配置文件数据用于创建及运行计算服务实例,包括计算模板文件、计算公式文件,费率表文件等。
71.例如,在接收的请求中,计算结果跟踪标识可以用关键字“tracking”来表示,当“tracking”对应的值为“true”时,表示需要追踪,该计算结果跟踪标识可以用来控制运行计算服务实例的过程,比如在运行计算服务实例中根据计算结果跟踪标识确定是否需要将每一步结果显示出来;数据传递方式可以用关键字“type”来表示,当“type”对应的值为“direct”时,表示第一输入数据为内嵌的方式放在请求数据中;计算模板入口文件标识可以用关键字“template”来表示,当“template”对应的值为“template.yaml”时,表示计算模板入口文件的名称为“template.yaml”,通过访问该计算模板入口文件标识对应的yaml文件可以开始创建实例,通过计算模板入口文件可以访问其他配置文件,根据配置文件以及配置信息参数完成创建可以用来与当前保险业务所对应的计算服务实例。第一输入数据可以用关键字“data”表示,当“data”对应的值为“useadbb...”,表示经过编码的配置文件数据以及包括保费计算因子在内的所有所需的业务数据。输出描述数据包括规定了请求数据对应的结果的数据输出方式,例如数据输出方式可以用关键字“type”来表示,当“type”对应的值为“direct”时表示直接输出。
72.可以理解的,图3b中示出的配置信息参数仅仅是一种示例,数据接口可以规定请求数据中包括其他用来创建计算服务实例的所需的配置信息参数,在此不做具体要求。图3b中示出的输入描述数据以及输出描述数据仅仅是一种示例,输入描述数据和输出描述数据还可以包括其他内容,在此不做具体要求。
73.可以理解的,数据接口还可以规定请求的数据格式,例如为json格式,也可以是其他格式,比如说tiff等格式,具体格式不做要求。
74.图4示出了在本技术的一些实施例中,以处理的保险业务为计算保费为例,在如图3a所示的保险业务场景下,用户终端100、数据节点400、适配系统300以及计算服务节点200a完成保费计算的交互流图。以数据节点400以及计算服务节点200a在同一个服务器200中为例进行介绍。其中,数据节点400中有预先配置好的发送给计算服务节点200a的请求数据的格式与内容要求,该请求数据的格式与内容要求与计算服务节点200a中的数据接口要求相对应。
75.s401,用户终端100获取计算保费的请求数据。
76.在一些实施例中,用户在终端界面上点击确认后,用户终端100获取计算保费的请求数据。
77.例如,用户在如图2a所示的车辆保险页面201a中点击确认后,用户终端100获取计
算车辆保费的请求数据。
78.s402,用户终端100向数据节点400发送计算保费的请求数据。
79.在一些实施例中,用户终端100向数据节点400发送计算保费的请求数据,请求数据中包括保费计算因子在内的业务数据。
80.例如,用户终端100在获得计算车辆保费的请求数据后,向数据节点400发送计算车辆保费的请求数据,请求数据中包括一张车辆保单数据,示例性地,可以包括有保险人姓名、保险单号、保险险种、保险期限、车辆年限等保费计算因子。
81.s403,数据节点400接收用户终端100发送的计算保费的请求数据。
82.例如,数据节点400接收并且确认用户终端100发送的计算车辆保费的请求数据。
83.s404,数据节点400向适配系统300发送获取配置数据的请求数据。
84.在一些实施例中,数据节点400接收用户终端100发送的计算保费的请求数据后,数据节点400根据收到的请求数据,向适配系统300发送获取计算保费所需的配置数据的请求数据,具体包括创建计算服务实例所需的系统文件、计算公式文件、计算模板文件以及费率表文件等配置数据。
85.例如,数据节点400接收用户终端100发送的计算车辆保费的请求后,数据节点400根据收到的请求,向适配系统300发送获取与计算车辆保费所对应的创建计算服务实例所需的系统文件、计算车辆保费的模板文件、计算公式文件以及车辆保险费率表文件等配置数据。
86.s405,适配系统300根据请求数据,获取配置数据。
87.在一些实施例中,适配系统300根据接收的数据节点400发送的请求数据,获取配置数据。
88.例如,适配系统300根据接收的数据节点400发送的请求数据,获取并确定计算车辆保险所需的配置数据。
89.s406,适配系统300向数据节点400发送获取的配置数据。
90.例如,适配系统300向数据节点400发送获取的计算车辆保费所需的配置数据。
91.s407,数据节点400根据该节点内预先配置好的数据接口要求,对业务数据以及获取的配置数据处理,得到第一处理数据。
92.可以理解的,数据接口要求了发送给计算服务节点200a中请求的内容和格式,请求数据中需要包括输入描述数据以及输出描述数据。其中,输入描述数据包括计算结果跟踪标识、数据传递方式、计算模板入口文件标识等配置信息参数,以及第一输入数据。第一输入数据包括被一起编码过的配置文件数据以业务数据。数据接口要求格式要求还可以为json格式等数据格式。
93.在一些实施例,数据节点400根据数据接口要求,对用户终端100发送的请求中的业务数据以及从适配系统300处得到的配置数据进行处理,得到与数据接口要求相符合的第一处理数据。
94.例如,数据节点400根据数据接口要求,对用户终端100发送的计算车辆保费请求中的一张车辆保单数据以及从适配系统300处得到的配置数据进行处理,得到与数据接口要求相符合的用来计算保费所需的第一处理数据,将计算结果跟踪标识、数据传递方式、计算模板入口文件标识等配置信息参数,以及第一输入数据作为输入描述数据,其中第一输
入数据为与计算车辆保费对应的计算模板文件、费率表文件等配置文件以及一张车辆保单数据;将计算服务节点200a处理的请求数据对应的结果的输出方式作为输出描述数据。
95.s408,数据节点400向计算服务节点200a发送计算保费请求数据,其中,请求数据中包括第一处理数据。
96.例如,数据节点400向计算服务节点200a发送计算车辆保费请求数据,其中,请求数据中包括与数据接口计算车辆保费所需的第一处理数据。
97.s409,计算服务节点200a根据数据节点400发送的请求数据进行保费计算,得到请求输出数据。
98.在一些实施例中,计算服务节点200a根据数据节点400发送的请求数据进行保费计算,根据第一处理数据中的配置信息参数以及被压缩过的第一输入数据中的配置文件数据创建计算服务实例,并且根据第一输出数据中的业务数据运行计算服务实例,计算保费,得到第一计算结果,该第一计算结果为业务数据和根据业务数据运行计算服务实例得到的保费计算结果拼接得到的;再根据输出描述数据对第一计算结果处理得到,与第一计算结果内容相同,但形式不同的第二计算结果,将第二计算结果作为请求输出数据,可以理解的,该请求输出数据就是计算服务节点200a接收的请求数据对应的结果。
99.例如,计算服务节点200a根据数据节点400发送的计算车辆保费请求数据,根据第一处理数据中的配置参数以及被压缩过的第一输出数据中的配置文件数据创建与计算车辆保费对应的计算服务实例,并且根据第一输出数据中的车辆保单数据运行计算服务实例,计算保费得到保费计算结果,将业务数据以及保费计算结果拼接得到第一计算结果,再根据输出描述数据对第一计算结果处理得到第二计算结果,将第二计算结果作为请求输出数据。
100.s410,计算服务节点200a向用户终端100发送请求输出数据。
101.在一些实施例中,计算服务节点200a在获取保费计算结果后,向用户终端100发送请求输出数据。
102.例如,计算服务节点200a在获取车辆保费计算结果后,向用户终端100发送车辆保费对应的请求输出数据。
103.可以理解的,上述数据节点400也可以跟计算服务节点200a不处于同一个服务器中。
104.可以理解的,上述步骤s401至步骤s410的执行顺序只是一种示例,在另一些实施例中,也可以采用其他执行顺序,还可以拆分或合并部分步骤,在此不做限定。
105.可以理解的,图4中示出了计算服务节点200a在如图3a所示的业务场景中的功能,即对接收的符合接口要求的请求数据进行保费计算,由于数据节点400已经从适配系统300中获取到了计算保费相关的配置数据,并且将计算保费所需的配置数据以及业务数据处理成数据接口所规定的要求,所以计算服务节点200a可以根据接收到的请求数据直接创建计算服务实例,此时计算服务节点200a不需要访问适配系统300得到配置数据,可以提高硬件资源的利用,防止由于计算保费请求相同,访问适配系统300得到不同的配置,而造成计算服务节点200a中存在配置数据不同得到不同的结果或者配置数据混乱而导致计算保费失败的情况。另外,由于计算服务节点200a不需要考虑其他不同的系统,可以更加容易的扩展伸缩。
106.图5根据本技术的一些实施例,示出了一种计算服务节点200a的装置结构图。
107.如图5所示,计算服务节点200a包括接口模块501,创建模块502,计算模块503,后处理模块504。
108.其中,接口模块501,用来对接收的请求数据进行验证,确定接收的请求数据中包括与数据接口要求相对应的内容与格式,在确认请求数据中包括与数据接口要求相对应的格式与内容,将配置数据送给创建模块502,将业务数据送给计算模块503,以及将输出描述数据送给后处理模块504。
109.具体地,接口模块501在接收到请求数据后,确认该请求数据的格式正确,比如说为json格式,并且确认请求数据中的内容。具体地,不仅确定请求数据的输入描述数据中包括配置信息参数和第一输入数据,并且对第一输入数据进行解码得到配置文件数据以及业务数据,而且确定请求数据包括了输出描述数据。在确认成功后,将配置信息参数以及配置文件数据构成的配置数据发送给创建模块502,业务数据送给计算模块503,以及将输出描述数据送给后处理模块504。其中,对于配置信息参数,比如说有计算结果跟踪标识、数据传递方式以及计算模板入口文件标识等。
110.创建模块502,用来通过接收的配置数据创建计算服务实例,并将创建成功的计算服务实例送给计算模块503。具体地,根据与计算保费模板、计算公式、费率表文件等配置文件以及其他配置信息参数创建计算服务实例。
111.计算模块503,用来根据业务数据对计算服务实例进行处理,计算保费,得到第一计算结果,并且将第一计算结果送给后处理模块504。具体地,结合业务数据中的保费计算因子运行创建的计算服务实例,利用计算服务实例中的保费计算规则计算保费,得到保费计算结果,将业务数据以及保费计算结果拼接得到第一计算结果。
112.后处理模块504,用来根据输出描述数据对第一计算结果进行后处理,从而得到第二计算结果,将该结果输出。其中,后处理方式根据输出描述数据确定,比如说可以对第一计算结果保持原样、压缩或者编码等。
113.可以理解的,图5所示的一种计算服务节点200a的装置结构只是一种示例,在另一些实施例中,也可以包括更多或者更少的模块单元,在此不做限定。
114.为了便于理解本技术实施例的技术方案,下面将结合图5所示的计算服务节点200a中各个功能模块阐述本技术提出的一种无状态计算的数据处理方法,图6示出了流程,具体步骤如下。
115.s601,接口模块501确认接收的请求数据符合数据接口要求。
116.在一些实施例中,接口模块501在接收到请求数据后,对请求数据进行验证,确定接收的请求数据中包括与数据接口要求相对应的内容与格式。
117.具体地,接口模块501在接收到请求数据后,确认该请求数据的格式正确,比如说数据接口要求为json格式,该请求数据为json格式。确定请求数据中的内容符合要求,确定输入描述数据中包括了配置信息参数和第一输入数据,并且对第一输入数据进行解码得到配置文件数据以及业务数据;同时,确定输出描述数据包括了规定与请求数据对应的结果的数据输出方式。在确认成功后,将配置信息参数以及配置文件数据构成的配置数据发送给创建模块502,将业务数据送给计算模块503,以及将输出描述数据送给后处理模块504。
118.其中,对于配置信息参数,至少用于对计算服务实例运行的控制,包括计算结果跟
踪标识、数据传递方式以及计算模板入口文件标识等配置信息参数,配置文件数据用于创建及运行计算服务实例。其中解码的方法为与接口定义的编码方式对应的解码方式,具体地可以为base64解码、哈希解码等解码方式。对于业务数据,比如说可以为包括了保费计算因子在内的保单数据。其中,输出描述数据可以包括对与请求数据对应的结果的数据输出方式的规定,例如可以为压缩或者编码或者直接输出等。
119.例如,接口模块501在接收到计算车辆保费请求数据后,对请求数据进行验证,确定接收的请求数据中的格式是否为json格式、请求数据中包括了输入描述数据以及输出描述数据。对于输入描述数据,确认到输入描述数据中包括了用来计算车辆保费的配置信息参数和第一输入数据,并且对第一输入数据进行base64解码得到配置文件数据以及业务数据。其中,配置信息参数,比如说包括计算结果跟踪标识、数据传递方式以及计算模板入口文件标识等;业务数据为一张车辆保单数据;配置文件数据为计算车辆保费中需要的计算模板文件、计算公式文件、费率表文件等数据。
120.在确认成功后,接口模块501将包括了上述配置信息参数以及解码后的配置文件数据的配置数据发送给创建模块502,将一张车辆保单数据发送给计算模块503,以及将规定了请求数据对应的结果的输出描述数据送给后处理模块504。
121.需要解释的,若得到的请求数据不符合数据接口的要求,则返回请求失败的消息。
122.s602,创建模块502根据配置数据创建计算服务实例。
123.在一些实施例中,创建模块502通过接收的配置数据创建计算服务实例,并将创建成功的计算服务实例送给计算模块503。具体地,根据配置信息参数中的计算模板入口文件标识访问计算模板入口文件开始创建计算服务实例,然后访问计算模板入口文件中的其他配置文件名称所在的配置文件,例如,计算模板文件、计算公式文件、费率表文件等;根据配置信息参数设置控制运行计算服务实例过程的参数,例如计算结果跟踪标识配置信息参数设置计算服务实例中的对于每一步的计算结果的过程参数,从而创建计算服务实例,计算服务实例中包括了计算模板实例,计算模板实例中包括了多个有序的计算公式。
124.其中,计算模板实例可以由计算模板文件以及计算公式文件得到,计算模板文件规定了计算步骤,比如说先根据计算保费公式计算保费,再对通过计算得到的保费进行调整,最后再进行多币种计算等。计算公式文件规定了计算保费公式,比如说保费等于保额乘以费率,其中费率可以来自与费率表文件。费率表文件包括了保额与费率的关系,比如说,保额在各个数值区间,对应不同的费率等。
125.例如,创建模块502接收计算车辆保费对应的配置数据,根据配置数据中包括计算结果跟踪标识的配置信息参数设置后续运行计算服务实例过程中产生每一步的计算结果、根据计算模板入口文件标识在配置文件中找到计算模板入口文件,开始创建计算服务实例,然后访问计算模板入口文件中的其他配置文件名称所在的配置文件,例如,计算模板文件、计算公式文件、费率表文件等;从而创建与计算车辆保费相对应的计算模板实例,该计算模板实例确定了计算车辆保费的具体步骤以及使用的具体公式,比如说先根据车辆保费计算公式计算保费,在对通过计算得到的车辆保费进行调整,最后再进行多币种计算等,计算公式使用四则运算,聚合运算,决策树等公式来计算保费乘以费率。
126.s603,计算模块503结合业务数据运行计算服务实例,得到第一计算结果。
127.在一些实施例中,计算模块503结合业务数据运行计算服务实例,根据配置信息参
数对计算服务实例运行控制,计算保费得到保费计算结果,将业务数据以及保费计算结果拼接得到第一计算结果,并且将第一计算结果送给后处理模块504。具体地,结合业务数据中的保费计算因子对构建的计算服务实例进行处理,通过计算服务实例中的计算模板实例中的计算步骤以及计算公式对得到的保费计算因子进行计算,然后利用保费计算公式根据计算步骤计算保费,得到保费计算结果,将保费计算结果拼接在业务数据后,得到第一计算结果。
128.例如,计算模块503结合接收的一张车辆保险保单数据,根据保单数据中的保单编号、保单期限、投保的标的物、投保额等保费计算因子运行创建的计算服务实例,通过计算服务实例中的计算模板实例中的计算步骤以及计算公式对得到的保费计算因子进行计算,比如说根据投保额在车辆保险对应的费率表文件中查找费率,然后利用保费计算公式根据计算步骤计算保费得到保费计算结果,将保费计算结果拼接在业务数据后,得到第一计算结果。
129.s604,后处理模块504根据输出描述数据对第一计算结果进行后处理,得到第二计算结果。
130.在一些实施例中,后处理模块504根据输出描述数据中对与请求数据对应的结果的规定,对第一计算结果进行后处理得到第二计算结果。其中,对输出描述数据规定的请求数据对应的结果可以为经过直接输出、编码或者压缩中的至少一种。后处理模块504对第一计算结果的处理方式可以为保持原样、编码或者压缩中的至少一种处理方式。
131.可以理解的,压缩方式可以为gzip压缩等,编码方式可以为base64编码等,具体压缩和编码方式在此不做具体要求。
132.例如,在得到计算模块503发送的第一计算结果,若输出描述数据规定的与请求数据对应的结果为直接输出,后处理模块504则不需要对第一计算结果后处理,则得到的第二计算结果为第一计算结果,并将得到的第二计算结果输出;若输出描述数据规定的与请求数据对应的结果为进行gzip压缩,则将得到的第一计算结果进行gzip压缩,得到第二计算结果,并输出;若输出描述数据规定的与请求数据对应的结果为进行base64编码,则将得到的第一计算结果进行base64编码,得到第二计算结果,并输出;若输出描述数据规定的与请求数据对应的结果为进行gzip压缩且base64编码,则将得到的第一计算结果进行gzip压缩且base64编码,得到第二计算结果,并输出。
133.可以理解,上述步骤601至步骤s604的执行顺序只是一种示例,在另一些实施例中,也可以采用其他执行顺序,还可以拆分或合并部分步骤,在此不做限定。
134.为便于理解本技术各实施的技术方案,下面对服务器200的硬件结构进行介绍。
135.进一步,图7根据本技术的一些实施例,示出了一种服务器200的结构示意图,其中服务器200包括计算服务节点200a。如图7所示,用于执行本技术提供的如图6所示的无状态计算的数据处理方法的服务器200可以包括一个或多个处理器201、系统内存202、非易失性存储器(non-volatile memory,nvm)203、输入/输出(i/o)设备204、通信接口205以及用于耦接处理器201、系统内存202、非易失性存储器203、通信接口204和输入/输出(i/o)设备205的系统控制逻辑206。
136.其中:处理器201可以包括一个或多个单核或多核处理器。在一些实施例中,处理器201可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)
的任意组合。在一些实施例中,处理器201可以用于执行根据请求数据对待处理保险业务进行无状态计算的逻辑。
137.系统内存202是易失性存储器,例如随机存取存储器(random-access memory,ram),双倍数据率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,ddr sdram)等。系统内存用于临时存储数据和/或指令,例如,在一些实施例中,系统内存202可以用于存储上述用于实现无状态计算的数据处理方法的可执行程序。
138.非易失性存储器203可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,非易失性存储器203可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如硬盘驱动器(hard disk drive,hdd)、光盘(compact disc,cd)、数字通用光盘(digital versatile disc,dvd)、固态硬盘(solid-state drive,ssd)等。在一些实施例中,非易失性存储器203也可以是可移动存储介质,例如安全数字(secure digital,sd)存储卡等。
139.特别地,系统内存202和非易失性存储器203可以分别包括:指令207的临时副本和永久副本。指令207可以包括:由处理器201中的至少一个执行时使服务器200实现本技术各实施例提供的无状态计算的数据处理方法的程序指令。
140.输入/输出(i/o)设备204可以包括用户界面,使得用户能够与服务器200进行交互。例如,在一些实施例中,输入/输出(i/o)设备204可以包括显示器等输出设备,用于显示服务器200中使用到的软件系统,还可以包括键盘、鼠标、触摸屏等输入设备。服务器200的维护人员可以通过用户界面以及键盘、鼠标、触摸屏等输入设备与服务器200进行交互。
141.通信接口205可以包括收发器,用于为服务器200提供有线或无线通信接口,进而通过一个或多个网络与任意其他合适的设备进行通信。在一些实施例中,通信接口205可以集成于服务器200的其他组件,例如通信接口205可以集成于处理器201中。在一些实施例中,服务器200可以通过通信接口205和其他设备通信。
142.系统控制逻辑206可以包括任意合适的接口控制器,以服务器200的其他模块提供任意合适的接口。例如在一些实施例中,系统控制逻辑206可以包括一个或多个存储器控制器,以提供连接到系统内存202和非易失性存储器203的接口。
143.在一些实施例中,处理器201中的至少一个可以与用于系统控制逻辑206的一个或多个控制器的逻辑封装在一起,以形成系统封装(system in package,sip)。在另一些实施例中,处理器201中的至少一个还可以与用于系统控制逻辑206的一个或多个控制器的逻辑集成在同一芯片上,以形成片上系统(system-on-chip,soc)。
144.可以理解,服务器200可以是能够执行本技术提供的多租户的数据分库方法的任意一种电子设备,包括但不限于计算机、服务器、平板电脑、手持计算机等,本技术实施例不做限定。
145.可以理解,本技术实施例示出的服务器200的结构并不构成对服务器200的具体限定。在本技术另一些实施例中,服务器200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
146.本技术公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的
组合中。本技术的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
147.可将程序代码应用于输入指令,以执行本技术描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本技术的目的,处理系统包括具有诸如例如数字信号处理器(digital signal processor,dsp)、微控制器、专用集成电路(application specific integrated circuit,asic)或微处理器之类的处理器的任何系统。
148.程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本技术中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
149.在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(cd-roms)、磁光盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
150.在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
151.需要说明的是,本技术各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本技术所提出的技术问题的关键。此外,为了突出本技术的创新部分,本技术上述各设备实施例并没有将与解决本技术所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
152.需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备
不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
153.虽然通过参照本技术的某些优选实施例,已经对本技术进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本技术的精神和范围。

技术特征:
1.一种无状态计算的数据处理方法,用于包括数据节点、计算服务节点和作为适配系统的配置数据存储节点的系统,所述配置数据存储节点中存储有待处理保险业务所需的配置数据并向所述数据节点提供配置数据,所述计算服务节点包括接口模块、创建模块、计算模块和后处理模块,其特征在于,所述方法包括:所述数据节点在所述配置数据存储节点中获取待处理保险业务所需的配置数据,并且基于所述所需的配置数据生成请求数据并发送给所述计算服务节点;所述请求数据中包括输入描述数据和输出描述数据;所述输入描述数据包括配置信息参数,配置文件数据,以及业务数据;所述配置信息参数至少用于计算服务实例运行的控制,所述配置文件数据用于创建及运行所述计算服务实例;所述输出描述数据用来规定所述计算服务节点处理的请求数据对应的结果;所述计算服务节点的接口模块确定所述数据节点发送的所述请求数据中的所述输入描述数据包括了所述配置信息参数、所述配置文件数据以及所述业务数据,并且确定所述请求数据包括所述输出描述数据;所述计算服务节点的创建模块根据所述配置信息参数,以及所述配置文件数据创建所述计算服务实例;所述计算服务节点的计算模块根据所述业务数据运行所述计算服务实例,得到第一计算结果;所述计算服务节点的后处理模块根据所述输出描述数据对所述第一计算结果进行后处理,得到第二计算结果,将所述第二计算结果输出。2.根据权利要求1所述的方法,其特征在于,所述配置信息参数包括计算模板入口文件标识、计算结果跟踪标识、数据传递方式。3.根据权利要求2所述的方法,其特征在于,所述配置文件数据包括计算模板文件、计算公式文件、费率表文件。4.根据权利要求3所述的方法,其特征在于,所述业务数据包括与保费计算因子相关的结构化的数据。5.根据权利要求4所述的方法,其特征在于,所述计算服务节点的创建模块根据所述配置信息参数,以及所述配置文件数据创建所述计算服务实例,包括,所述计算服务节点的创建模块根据所述配置信息参数中的计算模板入口文件标识访问计算模板入口文件,开始创建计算服务实例;访问所述计算模板入口文件中的其他配置文件名称所在的配置文件,并且根据所述配置信息参数设置运行计算服务实例运行过程的参数,完成所述计算服务实例的创建。6.根据权利要求5所述的方法,其特征在于,所述计算服务实例包括用来对所述业务数据进行计算的计算模板实例。7.根据权利要求1所述的方法,其特征在于,所述第一计算结果为,所述业务数据与运行所述计算服务实例得到的保费计算结果拼接得到的。8.根据权利要求1所述的方法,其特征在于,其中,所述计算服务节点的后处理模块根据所述输出描述数据对所述第一计算结果进行后处理,包括,所述计算服务节点的后处理模块对所述第一计算结果进行保持原样、编码或者压缩中的至少一种处理方式。9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,所
述指令在电子设备上执行时使所述电子设备执行权利要求1-8中任一项所述的无状态计算的数据处理方法。10.一种芯片装置,其特征在于,所述芯片装置包括:通信接口,用于输入和/或输出信息;处理器,用于执行计算机可执行程序,使得安装有所述芯片装置的电子设备执行如权利要求1-8中任一项所述的无状态计算的数据处理方法。11.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,当所述指令被执行时实现如权利要求1-8中任一项所述的无状态计算的数据处理方法。12.一种电子设备,其特征在于,包括:存储器,用于存储由电子设备的一个或多个处理器执行的指令,以及处理器,当所述指令被所述电子设备的一个或多个处理器执行时,所述处理器用于执行所述存储器中存储的指令,以实现权利要求1-8中任一项所述的无状态计算的数据处理方法。

技术总结
本申请涉计算机领域,公开了一种无状态计算的数据处理方法、程序产品及电子设备。该方法包括:数据节点在配置数据存储节点中获取待处理保险业务所需的配置数据,并且基于所需的配置数据生成请求数据并发送给计算服务节点;计算服务节点的接口模块确认接收的请求数据符合数据接口要求;计算服务节点的创建模块根据配置数据创建计算服务实例;计算服务节点的计算模块结合业务数据运行计算服务实例,得到第一计算结果;计算服务节点的后处理模块根据输出描述数据对第一计算结果进行后处理,得到第二计算结果。因而,可以使得计算服务节点不依赖于外部数据来处理请求,进而使得计算服务节点的计算能力的弹性伸缩更容易实现。节点的计算能力的弹性伸缩更容易实现。节点的计算能力的弹性伸缩更容易实现。


技术研发人员:倪健 熊辉 王云腾 刘均胜 邢志辉 莫元武
受保护的技术使用者:易保网络技术(上海)有限公司
技术研发日:2022.07.14
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-3448.html

最新回复(0)