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

用于前后台分离系统的模块处理方法、装置及存储介质与流程

2022-03-30 10:12:24 来源:中国专利 TAG:


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.基于上述方法,在一种可能的实现方式中,在所述目标模块的数量为多个的情况下,所述前台先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令,包括:
37.所述前台向所述后台发送订阅关系删除指令a,所述订阅关系删除指令a指示所述后台删除后执行模块分别与先执行模块和所述目标模块之间的订阅关系,所述后执行模块为所述前台显示的流程图中位于所述目标模块后执行的模块,所述先执行模块为流程图中位于所述目标模块前执行的模块;
38.所述前台向所述后台发送订阅关系删除指令b,所述订阅关系删除指令b指示所述后台删除不同的所述目标模块之间的订阅关系;
39.所述前台向所述后台发送订阅关系删除指令c,所述订阅关系删除指令c指示所述后台删除所述目标模块与所述先执行模块之间的订阅关系;
40.所述前台向所述后台发送连接关系删除指令a,所述连接关系删除指令a指示所述后台删除后执行模块分别与所述目标模块之间的连接关系;
41.所述前台向所述后台发送连接关系删除指令b,所述连接关系删除指令b指示所述后台删除不同的所述目标模块之间的连接关系;
42.所述前台向所述后台发送连接关系删除指令c,所述连接关系删除指令c指示所述后台删除所述目标模块与所述先执行模块之间的连接关系;
43.所述前台向所述后台发送第一模块删除指令,所述第一模块删除指令指示删除所述多个目标模块的模块数据中的剩余数据。
44.另一方面,提供了一种用于前后台分离系统的模块处理装置,
45.所述前后台分离系统包括前台和后台,所述前台显示有交互界面,所述交互界面用于显示多个模块中的部分或全部模块,所述后台中配置有数据中心,所述数据中心用于存储与所述多个模块各自对应的模块数据,所述模块数据中包括相应模块的显示方式、相应模块的功能数据以及相应模块与其他模块之间的逻辑关系;
46.所述装置包括:
47.第一控制模块,用于响应于针对目标模块的目标操作,基于所述目标操作控制所述后台更新所述数据中心中和所述目标模块对应的数据,基于更新后的和所述目标模块对应的数据,更新所述交互界面,所述目标模块为所述多个模块中任意模块,所述目标操作为针对所述目标模块的任意操作;
48.第二控制模块,用于在检测到针对所述目标操作的撤销指令的情况下,基于所述撤销指令控制所述后台恢复所述数据中心中和所述目标模块对应的数据,基于恢复后的和所述目标模块对应的数据,更新所述交互界面。
49.基于上述装置,在一种可能的实现方式中,所述装置还包括:
50.第三控制模块,用于在检测到针对所述目标操作的重做指令的情况下,基于所述目标操作控制所述后台更新数据中心中和所述目标模块对应的数据,基于更新后的和所述目标模块对应的数据,更新所述交互界面。
51.基于上述装置,在一种可能的实现方式中,所述第一控制模块用于:
52.基于所述目标操作依次向所述后台发送一个或多个第一数据更新指令,所述一个或多个第一数据更新指令中任一第一数据更新指令指示所述后台更新和所述目标模块对应的数据中的部分数据;
53.基于所述一个或多个数据更新指令的发送操作生成操作记录;
54.相应地,所述第二控制模块用于:
55.基于所述操作记录指示的操作的逆操作依次向所述后台发送一个或多个第二数据更新指令,所述一个或多个第二数据更新指令中任一第二数据更新指令指示所述后台将所述数据中心中和所述目标模块对应的数据中的部分数据恢复至执行所述目标操作之前的状态。
56.基于上述装置,在一种可能的实现方式中,在所述目标操作为针对所述目标模块的添加操作的情况下,所述第一控制模块用于:
57.先向所述后台发送第一模块更新指令,再发送第一逻辑关系更新指令,以控制所述后台先在所述数据中心中添加所述目标模块的模块数据,再在其他模块的模块数据中添加所述目标模块和所述其他模块之间的逻辑关系;
58.相应地,所述第二控制模块用于:
59.基于所述操作记录所指示的操作的逆操作,先向所述后台发送第二逻辑关系更新指令,再发送第二模块更新指令,以控制所述后台先删除所述数据中心的其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系,再删除所述数据中心中所述目标模块的模块数据。
60.基于上述装置,在一种可能的实现方式中,在所述目标操作为针对所述目标模块的删除操作的情况下,所述第一控制模块用于:
61.先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令,以控制所述后台先删除所述数据中心中其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系,再删除所述目标模块的模块数据;
62.相应地,所述第二控制模块用于:
63.基于所述操作记录所指示的操作的逆操作,先向所述后台发送第二模块更新指令,再发送第二逻辑关系更新指令,以控制所述后台先恢复所述数据中心中所述目标模块的模块数据,再恢复其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系。
64.基于上述装置,在一种可能的实现方式中,在所述目标操作为针对所述目标模块的删除操作的情况下,所述第一控制模块用于:
65.先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令,在接收到所述第一逻辑关系更新指令时,所述后台删除其它模块的模块数据中所述其他模块与所述目标模块之间的逻辑关系,所述后台在接收到所述第一模块更新指令时,为所述数据中心中所述目标模块的模块数据添加删除标记;
66.相应地,所述第二控制模块用于:
67.基于所述操作记录所指示的操作的逆操作,先向所述后台发送第二模块更新指令,再发送第二逻辑关系更新指令,在接收到所述第二模块更新指令时,删除所述目标模块的模块数据的删除标记,在接收到所述第二逻辑关系更新指令时,在所述其它模块的模块数据中添加所述其他模块与所述目标模块之间的逻辑关系。
68.基于上述装置,在一种可能的实现方式中,所述装置还包括:
69.导出模块,用于控制所述后台将所述数据中心中和所述目标模块对应的数据导出备份至参考存储位置,所述目标模块对应的数据包括所述目标模块的模块数据、以及其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系;
70.所述第二控制模块用于:
71.响应于接收到的第二模块更新指令,从所述参考存储位置将所述目标模块的模块数据导入至所述数据中心,响应于接收到的第二逻辑关系更新指令,从所述参考存储位置将所述目标模块和所述其他模块之间的逻辑关系导入至所述数据中心。
72.基于上述装置,在一种可能的实现方式中,所述多个模块中任一模块和其他模块之间的逻辑关系包括所述任一模块和其他模块之间的连接关系,以及所述任一模块和所述其他模块之间的订阅关系,所述连接关系指示所述交互界面上所述任一模块和其他模块之间的连线关系,所述订阅关系指示所述任一模块的内部参数、输入中的至少一个与其他模块的输出之间的关联关系、和/或、所述任一模块的输出与其他模块的内部参数、输入中的至少一个之间的关联关系。
73.基于上述装置,在一种可能的实现方式中,在所述目标模块的数量为多个的情况下,所述第一控制模块用于:
74.向所述后台发送第一订阅关系删除指令,所述第一订阅关系删除指令指示所述后台删除其他模块的模块数据中所述其他模块和边缘目标模块之间的订阅关系,所述边缘目标模块为所述多个目标模块中和所述其他模块存在逻辑关系的目标模块;
75.向所述后台发送第一连接关系删除指令,所述第一连接关系删除指令指示所述后台删除其他模块的模块数据中所述其他模块和边缘目标模块之间的连接关系;
76.向所述后台发送第一模块删除指令,所述第一模块删除指令指示删除所述多个目标模块的模块数据。
77.基于上述装置,在一种可能的实现方式中,在所述目标模块的数量为多个的情况下,所述第一控制模块用于:
78.向所述后台发送订阅关系删除指令a,所述订阅关系删除指令a指示所述后台删除后执行模块分别与先执行模块和所述目标模块之间的订阅关系,所述后执行模块为所述前台显示的流程图中位于所述目标模块后执行的模块,所述先执行模块为流程图中位于所述目标模块前执行的模块;
79.向所述后台发送订阅关系删除指令b,所述订阅关系删除指令b指示所述后台删除不同的所述目标模块之间的订阅关系;
80.向所述后台发送订阅关系删除指令c,所述订阅关系删除指令c指示所述后台删除所述目标模块与所述先执行模块之间的订阅关系;
81.向所述后台发送连接关系删除指令a,所述连接关系删除指令a指示所述后台删除后执行模块分别与所述目标模块之间的连接关系;
82.向所述后台发送连接关系删除指令b,所述连接关系删除指令b指示所述后台删除不同的所述目标模块之间的连接关系;
83.向所述后台发送连接关系删除指令c,所述连接关系删除指令c指示所述后台删除所述目标模块与所述先执行模块之间的连接关系;
84.向所述后台发送第一模块删除指令,所述第一模块删除指令指示删除所述多个目标模块的模块数据中的剩余数据。
85.另一方面,提供了一种用于前后台分离系统的模块处理装置,所述装置包括:
86.处理器;
87.用于存储处理器可执行指令的存储器;
88.其中,所述处理器被配置为执行上述提供的用于前后台分离系统的模块处理方法中的任一步骤。
89.另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有
指令,所述指令被处理器执行时实现上述提供的用于前后台分离系统的模块处理方法中的任一步骤。
90.另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述提供的用于前后台分离系统的模块处理方法中任一步骤。
91.本技术实施例提供的技术方案带来的有益效果至少包括:
92.在本技术实施例提供的前后台分离系统中,后台的数据中心中存储的模块数据中包括模块的显示方式、模块的功能数据以及模块之间的逻辑关系,也即是后台中同时存储有前台数据和后台数据。由此可知,在本技术实施例中,是以后台作为全部数据的数据中心。如此,前台在检测到针对目标模块的目标操作时,便可控制后台更新前后台数据,而在撤销目标操作时,同样控制后台更新前后台数据,从而保证执行目标操作或撤销目标操作过程中前台交互界面上显示的内容、以及前后台数据之间的一致性。
附图说明
93.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
94.图1是本技术实施例提供的一种前后台分离系统的架构示意图;
95.图2是本技术实施例提供的一种用于前后台分离系统的模块处理方法流程图;
96.图3是本技术实施例提供的一种流程图示意图;
97.图4是本技术实施例提供的另一种流程图示意图;
98.图5是本技术实施例提供的一种删除模块的示意图;
99.图6是本技术实施例提供的另一种用于前后台分离系统的模块处理方法流程图;
100.图7是本技术实施例提供的一种用于前后台分离系统的模块处理装置的结构示意图;
101.图8是本技术实施例提供的一种终端的结构示意图;
102.图9是本技术实施例提供的一种服务器结构示意图。
具体实施方式
103.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
104.在前后台分离系统中,前台用于做软件界面显示,提供可供用户操作的交互界面,后台提供具体的功能逻辑和数据记录。典型的c/s(client/server,客户端/服务端),b/s(browser/server,浏览器/服务端)系统都属于前后台分离系统。
105.目前,在机器视觉行业或其它行业,预先提炼出一些不同的功能模块(功能模块也称为功能单元),通过组合这些功能模块实现某种特定组合功能。将功能模块以一定的顺序排列起来,并配置它们之间关系的过程,就是流程配置。提供流程配置功能的软件就是流程配置系统。考虑到流程配置系统的前台的交互界面上通常是一个图形化的流程图,因此流程配置系统也称为图形化流程配置系统。
106.流程配置系统是一种典型的前后台分离系统。本技术实施例提供的模块处理方法就可以应用于在流程配置系统中。可选地,本技术实施例提供的模块处理方法也可以应用在其他的前后台分离系统中,本技术实施例对此不作限定。
107.为了后续便于说明,在此对本技术实施例涉及的两个概念先做简单介绍。
108.撤销:用户与软件系统进行交互时,因用户的需要,将软件的状态回退到最后一步操作之前的状态,这就是一次撤销。撤销可以串连,即可以撤销多次,回到很多次操作之前的状态。
109.重做:与撤销动作相反,当软件因撤销到达某种状态时,因用户的需要,将软件状态前进到最后一次撤销之前的状态,就是重做。重做也可以串连,即重做多次,恢复被撤销的状态。
110.撤销重做目的是将软件的状态重置到最后一个操作到之前n个操作之间的任意一个操作后的状态上。让用户有机会对自己的行为反悔。
111.在前后台分离系统中,前台提供可供用户操作的交互界面,后台提供数据逻辑执行及存储。在这样的系统中,如何实现撤销重做还能保证前后台数据同步,以及流程配置系统在单个功能模块发生改变会引发多个功能模块跟随改变的情况下,如何实现用户触发的操作的撤销重做。这两个技术都是目前研究的热点。本技术实施例提供的模块处理方法可以实现上述两个技术,具体实现方式将在后续实施例中详细说明。
112.图1是本技术实施例提供的一种前后台分离系统的架构示意图。如图1所示,该前后台分离系统包括前台和后台。
113.其中,前台提供的交互界面上显示有模块1和模块2,以及模块1和模块2之间的连接关系。同时模块1是基于具体的显示方式显示的,模块2也是基于具体的显示方式显示的。图1中示例出了模块2的显示方式,该显示方式具体包括模块2的左上角的位置坐标为(200,300),模块2的高度(height)为30、模块2的宽度(width)为90,模块2的颜色(color)为橙色。
114.上述模块1和模块2的显示方式便可称为前台数据。其中,前台数据也称为界面数据。
115.后台提供具体的逻辑功能。如图1所示,后台中存储有这样一段代码,该代码如下:
116.(流程0:
117.模块1的功能数据
118.模块2的功能数据
119.连接关系,模块1指向模块2)。
120.该代码所指示的意义为:前台显示的为一个流程图,该流程图中包括两个功能模块,分别为模块1和模块2,且连接关系为模块1指向模块2,也即是,模块1的输出为模块2的输入。
121.上述代码中的模块1的功能数据指示模块1的内部执行逻辑,该内部执行逻辑用于指示如何基于模块1的输入得到模块1的输出。模块2的功能数据指示模块2的内部执行逻辑,该内部执行逻辑用于指示如何基于模块2的输入得到模块2的输出。上述代码通常称为后台数据,也即是,在本技术实施例中后台数据指示前台交互界面上显示的多个模块中每个模块的功能数据以及多个模块之间的逻辑关系。其中,后台数据也称为底层数据,后台也称为底层。
122.如图1所示,前台的交互界面中放了两个模块,其中模块2的左上角是在(200,300)这个坐标,宽度为90,高度为30,颜色为橙色。后台只存了一些模块之间的逻辑关系以及各个模块的功能数据。当将模块2删除时,对于后台来说,是后台数据中少了一个模块2的功能数据,以及一个连接关系。做撤销操作时,除了在需要在后台恢复模块2的功能数据、以及模块2和模块1之间的连接关系,还要将前台交互界面上的位置,长宽,颜色也都恢复才能完全恢复到删除操作之前。
123.在这种场景下,如果将前台数据存储在前台,后台数据存储在后台。那么在撤销删除操作时,需要分别在前台恢复前台数据,在后台恢复功能数据和逻辑关系,这样很容易导致前后台数据的不一致。因此,在本技术实施例中,将所有数据配置为存储在唯一的中心,该中心即为后台。如此,将前台数据也存储在后台,撤销的时候只需恢复后台中存储的数据即可,然后前台再从后台获取前台数据。也即是,前台仅仅用于从后台获取前台数据并做展现,不作数据的存储,从而解决数据可能不一致的问题。由于在本技术实施例中,前台数据和后台数据均存储在后台,为了后续便于说明,将后台存储的数据统称为模块数据。也即是,模块数据包括前台数据和后台数据,具体地,任一模块的模块数据中包括该模块的显示方式、该模块的功能数据以及该模块和其他模块之间的逻辑关系。
124.需要说明的是,图1所示的前后台分离系统仅仅一种示例,并不构成对本技术实施例涉及的前后台分离系统的限定。
125.图2是本技术实施例提供的一种用于前后台分离系统的模块处理方法流程图。该方法应用于前后台分离系统中,前后台分离系统包括前台和后台,前台显示有交互界面,交互界面用于显示多个模块中的部分或全部模块,后台配置有数据中心,该数据中心用于存储有多个模块中各个模块各自对应的模块数据,任一模块的模块数据中包括该模块的显示方式、该模块的功能数据以及该模块和其他模块之间的逻辑关系。具体地,如图2所示,该方法包括如下几个步骤。
126.步骤201:响应于针对目标模块的目标操作,前台基于目标操作控制后台更新数据中心中和目标模块对应的数据,前台基于更新后的和目标模块对应的数据,更新交互界面,目标模块为多个模块中任意模块,目标操作为针对目标模块的任意操作。
127.其中,和目标模块对应的数据包括数据中心中目标模块的模块数据,以及其他模块的模块数据和目标模块有关的数据,该内容将在后面详细解释说明,在此先不阐述。
128.上述目标操作可以为针对目标模块的删除操作,也可以为针对目标模块的添加操作、或者针对目标模块的显示颜色等属性的修改操作。其中,删除操作具体是指删除交互界面上显示的目标模块,添加操作具体是指在交互界面上显示的模块中添加目标模块。
129.示例地,在目标操作为针对目标模块的删除操作的情况下,步骤201具体是指:前台基于目标操作控制后台删除数据中心中目标模块的模块数据、以及其他模块的模块数据中和目标模块有关的数据,基于删除数据后的数据中心重新显示交互界面。
130.又示例地,在目标操作为针对目标模块的添加操作的情况下,步骤201具体是指:前台基于目标操作控制后台在数据中心中添加目标模块的模块数据,以及在其他模块的模块数据中添加和目标模块有关的数据,基于添加数据后的数据中心,重新显示交互界面。
131.在一种可能的实现方式中,交互界面中显示有模块删除控件以及模块添加控件,当前台检测到用户针对该模块删除控件以及模块添加控件的选择操作时,便可确定检测到
针对目标模块的目标操作,此时,便可通过步骤201执行目标操作。
132.前台在检测到该目标操作之后,前台基于目标操作控制后台更新数据中心中和目标模块对应的数据,基于更新后的数据中心中和目标模块对应的数据,更新交互界面,从而实现交互界面、前后台数据的一致性。
133.上述和目标模块对应的数据包括目标模块的模块数据,以及其他模块的模块数据中和目标模块有关的数据。其中,目标模块的模块数据包括目标模块的功能数据、目标模块的显示方式以及目标模块和其他模块之间的逻辑关系。目标模块的功能数据指示目标模块的内部执行逻辑,该内部执行逻辑用于指示如何基于目标模块的输入得到目标模块的输出。目标模块的显示方式示例地包括目标模块的显示位置、显示大小以及显示颜色等等。其他模块的模块数据中和目标模块有关的数据包括其他模块和目标模块之间的逻辑关系。
134.在一种可能的实现方式中,目标模块和其他模块之间的逻辑关系包括目标模块和其他模块之间的连接关系,该连接关系指示交互界面上目标模块和其他模块之间的连线关系,该连接关系具体指示在流程图的执行过程中目标模块和其他模块之间的执行顺序。比如,目标模块为图1所示的模块1,其他模块为模块2,则目标模块和其他模块的连接关系可以指示先执行模块1的内部执行逻辑,再执行模块2的内部执行逻辑。
135.在前后台分离系统为流程配置系统的情况下,图3是本技术实施例提供的一种流程图示意图,在前台看到的流程图通常如图3所示。而图3所示的流程图中各个模块之间的连接关系仅仅代表了执行顺序,模块与模块之间是有数据交互的,前面模块的输出需要作为后序模块的输入或参数参与运算,否则这个流程就没有意义。如果加上输入输出与模块本身的参数,实际的流程图会比图3所示的流程图复杂很多。
136.图4是本技术实施例提供的另一种流程图示意图。如图4所示,模块与模块之间除了连接关系之外,还有内部复杂的参数、输入、输出之间的订阅关系。比如,某个模块的内部参数可能是执行顺序中上一个模块的输出,该模块的输出又可能是执行顺序上下一个模块的内部参数,或者某个模块的输出可能是执行顺序上下一个模块的输入等等。也即是,某个模块有可能订阅之前的某个模块的输入或输出。所以流程图其实是一个非常复杂的单向网络。当删除某一个模块时,不仅影响模块本身,还影响流程图上所有后序模块与它,以及它前序模块的订阅关系。
137.因此,在另一种可能的实现方式中,目标模块和其他模块之间的逻辑关系除了包括上述目标模块和其他模块之间的连接关系外,还可以包括目标模块和其他模块之间的订阅关系,该订阅关系指示目标模块的内部参数、输入中的至少一个与其他模块的输出之间的关联关系、和/或、目标模块的输出与其他模块的内部参数、输入中的至少一个之间的关联关系、和/或、目标模块的输入和其他模块的输出之间的关联关系。
138.也即是,在本技术实施例中,对于任一模块,该模块和其他模块之间的逻辑关系包括该模块和其他模块之间的连接关系,以及该模块和其他模块之间的订阅关系。该连接关系指示显示界面上该模块和其他模块之间的连线关系。订阅关系指示该模块的内部参数和其他模块的输出之间的关联关系、和/或、该模块的输出和其他模块的内部参数之间的关联关系、和/或、该模块的输出和其他模块的输入之间的关联关系、和/或、该模块的输入和其他模块的输出之间的关联关系。也即,订阅关系指示该模块的内部参数、输入中的至少一个与其他模块的输出之间的关联关系、和/或、该模块的输出与其他模块的内部参数、输入中
的至少一个之间的关联关系。
139.需要说明的是,每个模块的内部参数可以为1个、也可以为多个。此外,每个模块的输出可以为1个或多个,每个模块的输入也可以为1个或多个。前述的关联关系是一个上位概念的关联关系,可以包括具体的一个参数和另一个具体的参数之间的关联关系,也可以包括多个参数分别和其他参数之间的关联关系。比如,目标模块的内部参数和其他模块的输出之间的关联关系可以是指:其他某个模块的一个输出为目标模块的一个内部参数,或者,其他某个模块的两个输出分别为目标模块的两个内部参数,或者,其他两个模块的分别的一个输出各自为目标模块的两个内部参数中的一个。前述示例仅仅用于举例说明,并不构成对本技术实施例涉及的关联关系的限定。
140.步骤202:在检测到针对目标操作的撤销指令的情况下,前台基于撤销指令控制后台恢复数据中心中和目标模块对应的数据,前台基于恢复后的和目标模块对应的数据,更新交互界面。
141.在一种可能的实现方式中,交互界面中显示有撤销操作控件,当前台检测到用户针对该撤销操作控件的选择操作时,便可确定检测到针对目标操作的撤销指令,此时,便可通过步骤202执行针对目标操作的撤销过程。
142.在目标操作为针对目标模块的删除操作的情况下,上述步骤202具体是指:前台基于撤销指令控制后台在数据中心中重新添加和目标模块对应的数据。
143.在目标操作为针对目标模块的添加操作的情况下,上述步骤202具体是指:前台基于撤销指令控制后台在数据中心中删除和目标模块对应的数据。
144.在本技术实施例中,上述步骤201和步骤202具体可以以前台为操作中心,也可以以后台为操作中心。其中,以前台为操作中心是指由前台来记录执行目标操作的各个具体操作,以后台为中心是指由后台来记录执行目标操作的各个记录,也即是两者的区别在于记录具体操作的文件是保存在前台还是后台。下面分两种实现方式分别说明。
145.(1)以前台为中心
146.此时,上述步骤201的实现过程可以为:前台基于目标操作向后台发送一个或多个第一数据更新指令,一个或多个第一数据更新指令中任一第一数据更新指令指示后台更新目更新和目标模块对应的数据中的部分数据;前台基于一个或多个数据更新指令的发送操作生成操作记录。
147.比如,在目标操作为模块删除或模块添加的场景中,前台向后台发送第一逻辑关系更新指令和第一模块更新指令,并生成发送第一逻辑关系更新指令和第一模块更新指令这个操作的操作记录,第一逻辑关系更新指令指示后台基于目标操作更新数据中心其他模块的模块数据中该其他模块和目标模块之间的逻辑关系,第一模块更新指令指示后台基于目标操作更新数据中心中目标模块的模块数据。
148.需要说明的是,上述操作记录用于指示各个第一数据更新指令的发送前后顺序,以及每个指令所指示数据变化情况。
149.此时,上述步骤202的实现过程可以为:前台基于操作记录指示的操作的逆操作向后台发送一个或多个第二数据更新指令,一个或多个第二数据更新指令中任一第二数据更新指令指示后台将其他模块的模块数据中该其他模块和目标模块之间的逻辑关系恢复至执行目标操作之前的状态、或者指示将目标模块的模块数据恢复至执行目标操作之前的状
态。
150.比如,在目标操作为模块删除或模块添加的场景中,前台基于操作记录所指示的操作的逆操作向后台发送第二逻辑关系更新指令和第二模块更新指令,第二逻辑关系更新指令指示后台将数据中心中其他模块的模块数据中目标模块和其他模块之间的逻辑关系恢复至执行目标操作之前的状态,第二模块更新指令指示后台将数据中心中目标模块的模块数据恢复至执行目标操作之前的状态。以便于后续前台从后台获取更新后的目标模块的模块数据,基于更新后的目标模块的模块数据更新交互界面。
151.具体地,在目标操作为针对目标模块的删除操作的情况下,在执行目标操作时,前台是先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令。如此便可控制后台先删除其他模块的模块数据中目标模块和其他模块之间的逻辑关系,再删除目标模块的模块数据,并生成先发送第一逻辑关系更新指令,再执行发送第一模块更新指令的操作记录。而在撤销目标操作时,基于前述操作记录所指示的操作的逆操作,前台是先向后台发送第二模块更新指令,再发送第二逻辑关系更新指令。如此便可控制后台先恢复数据中心中目标模块的模块数据,再恢复其他模块的模块数据中目标模块和其他模块之间的逻辑关系。
152.同样地,在目标操作为针对目标模块的添加操作的情况下,在执行目标操作时,前台是先向后台发送第一模块更新指令,再发送第一逻辑关系更新指令。如此便可控制后台先在数据中心中添加目标模块的模块数据,再在数据中心的其他模块的模块数据中添加目标模块和其他模块之间的逻辑关系,并生成先发送第一模块更新指令,再执行发送第一逻辑关系更新指令的操作记录。而在撤销目标操作时,基于前述操作记录所指示的操作的逆操作,前台是先向后台发送第二逻辑关系更新指令,再发送第二模块更新指令。如此便可控制后台先删除数据中心的其他模块的模块数据中目标模块和其他模块之间的逻辑关系,再删除数据中心中目标模块的模块数据。
153.按照上述顺序发送指令的目的在于:前台在撤销目标操作时,可以完全基于执行目标操作的逆操作来实现,以避免撤回不到执行目标操作前的状态。
154.比如,目标操作为对于图1所示模块2的删除操作时,如果以前台为中心,步骤201和步骤202的具体过程如下。
155.在执行目标操作时,包括如下几个过程:
156.1)前台向后台发送获取模块数据命令,前台接收后台发送的目标模块对应的数据,该目标模块对应的数据包括目标模块的模块数据、以及其他模块的模块数据中和目标模块有关的数据;
157.2)前台对获取的目标模块对应的数据进行分析,确定要删除目标模块需要先删除其他模块的模块数据中目标模块和其他模块之间的逻辑关系,然后再删除目标模块的模块数据。基于该分析结果,前台向后台发送删除连线命令,也即是,发送上述第一逻辑关系更新指令,以指示后台删除数据中心的其他模块中模块数据中目标模块和其他模块之间的逻辑关系,并生成发送该第一逻辑关系更新指令对应的操作记录,为了后续便于说明,将该操作记录称为第一操作记录。其中,后台在删除逻辑关系时,先备份目标模块相关的连接数据至其他存储地方,也即是备份指示目标模块与其他模块之间的逻辑关系,然后再将后台数据中目标模块相关的连接数据删除,以便于后续快速恢复删除的数据。
158.3)前台向后台发送删除模块命令,也即是,发送上述第一模块更新指令,以指示后
台删除目标模块的模块数据,并生成发送该第一逻辑关系更新指令对应的操作记录,为了后续便于说明,将该操作记录称为第二操作记录。其中,后台删除目标模块的模块数据时,后台备份目标模块的模块数据至其他存储地方,然后再删除后台数据中的目标模块的模块数据,以便于后续快速恢复删除的数据。
159.在撤销目标操作时,包括如下几个过程:
160.1)由于第一操作记录在第二操作记录之前生成,为了实现上述目标操作的逆操作,前台先基于第二操作记录向后台发送导入模块命令,也即是,发送上述第二模块更新指令,以指示后台在数据中心中添加目标模块的模块数据。
161.2)然后前台基于第一操作记录向后台发送模块1与模块2建立连接命令,也即是,发送上述第二逻辑关系更新指令,以指示后台在数据中心其他模块的模块数据中添加中目标模块和其他模块之间的逻辑关系。
162.3)前台向后台获取模块界面数据,该模块界面数据即为目标模块的模块数据中目标模块的显示方式,基于获取的显示方式在交互界面上重新显示目标模块。
163.上述整个过程以前台为驱动,后台被动响应,提供一些数据获取,导入的基本接口。
164.目前,前台向后台发送指令是通过调用后台的接口来实现的。也即是,后台提供一系列接口,当前台需要发送指令时,调用后台的某个接口发送该指令以控制后台执行某些具体操作。比如,后台提供逻辑关系删除接口以及模块删除接口,这种场景下,如果目标操作为删除模块,前台向后台发送的第一逻辑关系更新指令便可通过调用该逻辑关系删除接口来实现,前台向后台发送的第一模块更新指令便可通过调用该模块删除接口来实现。
165.上述以前台为中心的实现方式中,具体操作有哪几步,以及影响范围前台最清楚,后台只提供接口,不用关心具体业务,因此撤销过程中系统更容易稳定。
166.(2)以后台为中心
167.此时,上述步骤201的实现过程可以为:前台基于目标操作更新交互界面,然后前台向后台发送模块更新指令,该模块更新指令指示后台基于目标操作更新数据中心其他模块的模块数据中其他模块和目标模块之间的逻辑关系、以及数据中心中目标模块的模块数据。同时后台生成和前述每个操作对应的操作记录。
168.相应地,上述步骤202的实现过程可以为:前台向后台发送模块恢复指令,该模块恢复指令指示:后台根据本地存储的操作记录所指示的操作的逆操作,将数据中心其他模块的模块数据中其他模块和目标模块之间的逻辑关系、以及数据中心中目标模块的模块数据恢复至执行目标操作之前的状态。前台从后台获取更新后的目标模块的模块数据中的显示方式,基于更新后的显示方式更新交互界面。
169.比如,目标操作为对于图1所示模块2的删除操作时,如果以后台为中心,步骤201和步骤202的具体过程如下。
170.在执行目标操作时,包括如下几个过程:
171.1)前台检测到模块清理指令后,先删除交互界面上的目标模块,然后向后台发送模块删除指令,该模块删除指令携带目标模块的标识。
172.2)后台接收到模块删除指令后,先备份其他模块的模块数据中目标模块相关的连接数据至其他存储地方,然后再将数据中心中其他模块的模块数据中目标模块相关的连接
数据删除,并生成与该连接数据删除操作对应的操作记录,标记为第三操作记录。其中,其他模块的模块数据中目标模块相关的连接数据指示目标模块和其他模块之间的逻辑关系。
173.3)后台备份目标模块的模块数据至其他存储地方,并删除数据中心中目标模块的模块数据,并生成与该模块数据删除操作对应的操作记录,标记为第四操作记录。
174.在撤销目标操作时,包括如下几个过程:
175.1)前台向后台发送撤销命令。
176.2)后台查询操作记录,基于上述第四操作记录找到最后一个操作为删除模块的模块数据,执行删除模块的模块数据的逆操作,也即是从备份的数据中将目标模块的模块数据导入数据中心。
177.3)后台查询操作记录,基于上述第三操作记录找到删除模块数据的上一个操作为删除模块连接数据的记录,执行删除模块连接数据的逆操作,也即是从备份的数据中将其他模块的模块数据中目标模块相关的连接数据添加至数据中心。
178.4)后台通知前台撤销完毕,前台向后台获取最新的目标模块的显示方式,更新交互界面。
179.整个过程以前台发送指令为驱动,后台提供全套数据记录与逆操作,做数据恢复。前台做数据查询与更新。需要说明的是,在前述以前台为中心的实现方式具体操作有哪几步,以及影响范围前台最清楚,便于开发人员随时了解目标操作的实际处理情况并对目标操作的实际处理情况进行掌控。因此,在应用本技术实施例时,可以考虑使用以前台为中心的实现方式。
180.此外,上述涉及的删除目标模块对应的数据实际实现方式可以有多种。如图4所示,实际的流程图是非常复杂的,这种情况下,如果目标操作为针对目标模块的删除操作,为了应对这种复杂关系下的撤销重做,针对比较复杂的删除然后撤销场景,有两种策略。
181.1)假删策略。当基于目标操作删除目标模块时,只是将这个目标模块的模块数据置为删除标记,并不真正删除,然后清理其它模块与被删的目标模块之间的逻辑关系。当撤销目标操作时,将删除标记去除,并恢复数据中心中其它模块与该目标模块之间的逻辑关系。
182.也即是,在假删策略中,前述前台基于目标操作依次向后台发送一个或多个第一数据更新指令的具体实现方式可以为:前台先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令之后,后台在接收到第一逻辑关系更新指令时,后台删除其它模块的模块数据中其他模块与目标模块之间的逻辑关系,后台在接收到第一模块更新指令时,为数据中心中目标模块的模块数据添加删除标记。
183.相应地,前台基于操作记录指示的操作的逆操作依次向后台发送一个或多个第二数据更新指令的具体实现方式可以为:基于操作记录所指示的操作的逆操作,前台先向后台发送第二模块更新指令,再发送第二逻辑关系更新指令,后台在接收到第二模块更新指令时,删除目标模块的模块数据的删除标记,后台在接收到第二逻辑关系更新指令时,在其它模块的模块数据中添加其他模块与目标模块之间的逻辑关系。
184.2)导出导入策略。当基于目标操作删除目标模块时,将这个目标模块对应的数据导出,然后再清理掉该目标模块对应的数据。当撤销时,导入该目标模块的模块数据,并基于之前导出的数据恢复其它模块与该目标模块之间的连接和订阅关系。也即是,在删除数
据时,先将相关的数据导出,然后再直接删除数据中心中的相关数据。
185.也即是,在导出导入策略中,前台基于目标操作依次向后台发送一个或多个第一数据更新指令的具体实现方式可以为:前台先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令,以控制后台先删除数据中心中其他模块的模块数据中目标模块和其他模块之间的逻辑关系,再删除目标模块的模块数据。
186.相应地,前台基于操作记录指示的操作的逆操作依次向后台发送一个或多个第二数据更新指令的具体实现方式可以为:基于操作记录所指示的操作的逆操作,前台先向后台发送第二模块更新指令,再发送第二逻辑关系更新指令,以控制后台先恢复数据中心中目标模块的模块数据,再恢复其他模块的模块数据中目标模块和其他模块之间的逻辑关系。
187.另外,在上述假删策略中,由于前后台数据同步的关系,当删除一个模块后,若前后台只做标记删除,那么在执行整个流程图的过程时,需要对标记删除模块做特殊处理,将它忽略掉,不触发执行。当这种特殊数据多了之后,会影响前后台数据的可维护性,造成不稳定。因此,在应用本技术实施例时,可以考虑通过导入导出策略来删除目标模块。
188.此外,在上述导出导入策略中,为了便于后续快速恢复删掉的数据,前台在先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令之前,前台可以控制后台将数据中心中和所述目标模块对应的数据导出备份至参考存储位置。后续前台先向后台发送第二模块更新指令,再发送第二逻辑关系更新指令之后,响应于接收到的第二模块更新指令,后台从参考存储位置将目标模块的模块数据导入至数据中心,响应于接收到的第二逻辑关系更新指令,后台从参考存储位置将目标模块和其他模块之间的逻辑关系导入至数据中心。
189.此外,在本技术实施例中,在目标操作为模块删除操作的情况下,可以同时对一批模块执行同一目标操作,也即是,存在批量删除操作的场景。在执行批量删除操作时,步骤201和步骤202中的目标模块的数量为多个。
190.这种场景下,同样可以有两种策略来实现上述目标操作的执行以及撤销目标操作。一种是以操作为中心,一种是以数据为中心。
191.第一种策略:以操作为中心。
192.其中,以操作为中心是指:在执行针对多个目标模块的目标操作时,将目标操作拆分为针对单个模块的多个子操作,也即是每个子操作仅仅针对一个模块,然后按照多个子操作的执行顺序依次执行这多个子操作,从而实现针对多个目标模块的目标操作。在执行针对多个目标模块的目标操作时,每执行一个子操作,均生成并存储针对该子操作的一个操作记录。在撤销针对这多个目标模块的目标操作时,按照存储的操作记录所指示的操作的逆操作完成撤销动作。
193.在以操作为中心的策略中,前述前台先向后台发送第一逻辑关系更新指令的具体实现方式可以为:前台向后台发送订阅关系删除指令a,订阅关系删除指令a指示后台删除后执行模块分别与先执行模块和目标模块之间的订阅关系,后执行模块为前台显示的流程图中位于目标模块后执行的模块,先执行模块为流程图中位于目标模块前执行的模块;前台向后台发送订阅关系删除指令b,订阅关系删除指令b指示后台删除不同的目标模块之间的订阅关系;前台向后台发送订阅关系删除指令c,订阅关系删除指令c指示后台删除目标模块与先执行模块之间的订阅关系;前台向后台发送连接关系删除指令a,连接关系删除指
令a指示后台删除后执行模块分别与目标模块之间的连接关系;前台向后台发送连接关系删除指令b,连接关系删除指令b指示后台删除不同的目标模块之间的连接关系;前台向后台发送连接关系删除指令c,连接关系删除指令c指示后台删除目标模块与先执行模块之间的连接关系。
194.前台在通过上述实现方式发送第一逻辑关系更新指令之后,再向后台发送第一模块更新指令,以控制后台删除多个目标模块中各个目标模块的对应的模块数据。
195.也即是,在以操作为中心的策略中,前台先对多个目标模块之间、以及多个目标模块中每个目标模块和和其他模块之间的订阅关系以及连线关系进行分析,通过多条第一逻辑关系更新指令删掉这些订阅关系以及连线关系,然后再删除各个目标模块的模块数据。
196.第二种策略:以数据为中心。
197.以数据为中心是指:在执行针对多个目标模块的目标操作时,将多个目标模块看做一个整体,此时,如果需要删除这多个目标模块,则以整体方式删除这多个目标模块的模块数据,然后再更新这多个目标模块中边缘目标模块和其他模块之间的逻辑关系,其中,边缘目标模块为这多个目标模块中和其他模块存在逻辑关系的目标模块。在更新模块数据以及更新逻辑关系时同样生成操作记录,在撤销针对这多个目标模块的目标操作时,按照存储的操作记录所指示的操作的逆操作完成撤销动作。
198.在以数据为中心的策略中,前台先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令的具体实现方式可以为:前台向后台发送第一订阅关系删除指令,第一订阅关系删除指令指示后台删除其他模块的模块数据中其他模块和边缘目标模块之间的订阅关系,边缘目标模块为多个目标模块中和其他模块存在逻辑关系的目标模块;前台向后台发送第一连接关系删除指令,第一连接关系删除指令指示后台删除其他模块的模块数据中其他模块和边缘目标模块之间的连接关系;前台向后台发送第一模块删除指令,第一模块删除指令指示删除多个目标模块的模块数据。
199.也即是,在以数据为中心的策略中,前台只需对多个目标模块中边缘目标模块和和其他模块之间的订阅关系以及连线关系进行分析,通过多条第一逻辑关系更新指令删掉这些订阅关系以及连线关系,然后再删除各个目标模块的模块数据。无需对各个目标模块内部的订阅关系或连线关系进行逐个删除,从而节省了目标操作所需的时长。
200.图5是本技术实施例提供的一种删除模块的示意图。如图5所示,当删除流程图中模块2至模块5时,有两种策略。
201.一、以操作为中心,将批量操作分解为针对单个模块的子操作的组合,各个子操作具体如下:
202.1)依次删除模块6~10与模块1~5的订阅关系,也即是分别删除模块6-10中每个模块和模块1-5中每个模块之间的订阅关系;
203.2)依次删除模块3~5与模块1~2的订阅关系,也即是分别删除模块3-5中每个模块和模块1-2中每个模块之间的订阅关系;
204.3)删除模块2与模块1的订阅关系;
205.4)依次删除模块6与模块3的连线,模块7与模块4的连线,模块8与模块5的连线,也即是分别删除模块6和模块3之间的连接关系,模块7和模块4之间的连接关系,模块8和模块5之间的连接关系;
206.5)依次删除模块3~5与模块2的连线,也即是分别删除模块3-5中每个模块和模块2之间的连接关系;
207.6)删除模块2与模块1的连线,也即是删除模块2和模块1之间的连接关系;
208.7)依次删除模块3~5,也即是删除模块3~5中每个模块的模块数据;
209.8)删除模块2,也即是删除模块2的模块数据;
210.撤销时,按8)到1)的顺序逆向做一遍,将模块数据,连接关系,订阅关系一个个添加回来,从而实现撤销针对模块2至模块5的删除操作。
211.二、以数据为中心,批量导入导出策略
212.1)将数据中心中模块2~5各自的模块数据作为一个整体导出备份至参考位置,然后删除数据中心中模块2~5各自的模块数据。
213.2)将模块6~10的模块数据中与模块1~5之间的订阅关系删除,并生成操作记录。也即是,将模块6-10看做一个整体,将模块1-5也看做一个整体,删除模块6-10这个整体的模块数据中和模块1-5这个整体之间的订阅关系,该订阅关系具体是模块2-5中边缘模块3/4/5和其他模块6-10之间的订阅关系。
214.3)将其他模块的模块数据中与模块2~5之间的连接关系删除,并删除模块2~5各自的模块数据删除,并生成操作记录;
215.撤销时
216.1)将模块2~5各自的模块数据作为一个整体导入;
217.2)用操作记录恢复其它模块与模块2~5的连线。具体包括模块1的模块数据中与模块2-5之间的连接关系,以及模块6-10中任一模块的模块数据中与模块2-5之间的连接关系;
218.3)用操作记录恢复模块6~10与模块1~5的订阅关系。具体包括模块1的模块数据中与模块2-5之间的订阅关系,以及模块6-10中任一模块的模块数据中与模块2-5之间的订阅关系;
219.上述第一种策略中将批量操作转换成很多单一操作的问题在于,处理顺序决定了撤销顺序,一旦顺序出错,在恢复连接关系时发现模块还未恢复,就会导致出错。即使全部恢复完,也可能会少了某个模块与模块之间的连接关系,从而不能将流程图彻底恢复到之前的状态。而上述第二种策略中批量导入导出策略只需要记录被导出的整体与周边的关系,被导出的整体内部关系已经包含在导出模块的模块数据中。在撤销或重做时,只需要先导入模块的模块数据,再恢复其它模块与该模块的外围关系即可。
220.此外,在本技术实施例中,第一种策略中以操作为中心的策略适合用在单个模块的数据变化的撤销重做场景。比如:将某个模块的位置或颜色修改后,执行位置或颜色变化的逆操作是最经济有效的方法。
221.因此,在一种可能的实现方式中,在目标模块的数量为一个的情况下,前台基于目标操作向后台发送一个或多个第一数据更新指令之前,前台可以将目标操作拆分一个或多个子操作。这种场景下,前述一个或多个第一数据更新指令和一个或多个子操作分别对应,后台基于一个或多个子操作完成目标操作。也即是,将目标操作拆分为多个子操作,然后逐步执行这多个子操作,并生成操作记录,以便于后续基于这多个子操作的操作记录撤销目标操作。
222.可选地,在撤销操作后,用户还可以反悔该撤销操作,也即是重新执行该操作。此时可以通过图6所示的步骤203实现上述重做过程。
223.步骤203:在检测到针对目标操作的重做指令的情况下,前台基于目标操作控制后台更新数据中心中和目标模块对应的数据,前台基于更新后的和目标模块对应的数据,更新交互界面。
224.步骤203的实现方式具体和步骤201的实现方式基本相同,在此不再赘述。
225.综上所述,在本技术实施例提供的前后台分离系统中,后台的数据中心中存储的模块数据中包括模块的显示方式、模块的功能数据以及模块之间的逻辑关系,也即是后台中同时存储有前台数据和后台数据。由此可知,在本技术实施例中,是以后台作为全部数据的数据中心。如此,前台在检测到针对目标模块的目标操作时,便可控制后台更新前后台数据,而在撤销目标操作时,同样控制后台更新前后台数据,从而保证执行目标操作或撤销目标操作过程中前台交互界面上显示的内容、以及前后台数据之间的一致性。
226.下面对本技术实施例提供的各个技术效果进行总结说明。
227.本技术实施例的创新点是对前后台分离系统的撤销重做提出了几种现实可行的实现策略。
228.1)前后台都有数据时,推荐数据单中心策略,以后台来存储全部数据。
229.2)前后台分离时,对于操作记录,推荐以前台为中心。撤销重做时,由前台来驱动整个撤销过程。
230.3)对于复杂、关系多的流程图,在删除撤销场景时,推荐采用导出导入数据方式而非假删策略。
231.4)对于复杂、关系多的流程图,批量的数据删除撤销时,推荐采用导出导入数据方式,而非操作组合方式。
232.5)对于流程图中,单数据变化,推荐采用以操作为中心的逆操作策略。
233.通过以上策略能将前后台分离系统的撤销重做较好的实现,平衡实现复杂度,内存占用,系统稳定性。
234.上述所有可选技术方案,均可按照任意结合形成本技术的可选实施例,本技术实施例对此不再一一赘述。
235.图7是本技术实施例提供的一种用于前后台分离系统的模块处理装置的结构示意图,该装置可以由软件、硬件或者两者的结合实现。该装置应用于前后台分离系统中,前后台分离系统包括前台和后台,前台显示有交互界面,交互界面用于显示多个模块中的部分或全部模块,后台中配置有数据中心,数据中心用于存储与多个模块各自对应的模块数据,模块数据中包括相应模块的显示方式、相应模块的功能数据以及相应模块与其他模块之间的逻辑关系。
236.如图7所示,该装置700包括如下几个模块:
237.第一控制模块701,用于响应于针对目标模块的目标操作,基于所述目标操作控制所述后台更新所述数据中心中和所述目标模块对应的数据,基于更新后的和所述目标模块对应的数据,更新所述交互界面,所述目标模块为所述多个模块中任意模块,所述目标操作为针对所述目标模块的任意操作;
238.第二控制模块702,用于在检测到针对所述目标操作的撤销指令的情况下,基于所
述撤销指令控制所述后台恢复所述数据中心中和所述目标模块对应的数据,基于恢复后的和所述目标模块对应的数据,更新所述交互界面。
239.基于上述装置,在一种可能的实现方式中,如图7所示,该装置还包括:
240.第三控制模块703,用于在检测到针对所述目标操作的重做指令的情况下,基于所述目标操作控制所述后台更新数据中心中和所述目标模块对应的数据,基于更新后的和所述目标模块对应的数据,更新所述交互界面。
241.基于上述装置,在一种可能的实现方式中,所述第一控制模块用于:
242.基于所述目标操作依次向所述后台发送一个或多个第一数据更新指令,所述一个或多个第一数据更新指令中任一第一数据更新指令指示所述后台更新和所述目标模块对应的数据中的部分数据;
243.基于所述一个或多个数据更新指令的发送操作生成操作记录;
244.相应地,所述第二控制模块用于:
245.基于所述操作记录指示的操作的逆操作依次向所述后台发送一个或多个第二数据更新指令,所述一个或多个第二数据更新指令中任一第二数据更新指令指示所述后台将所述数据中心中和所述目标模块对应的数据中的部分数据恢复至执行所述目标操作之前的状态。
246.基于上述装置,在一种可能的实现方式中,在所述目标操作为针对所述目标模块的添加操作的情况下,所述第一控制模块用于:
247.先向所述后台发送第一模块更新指令,再发送第一逻辑关系更新指令,以控制所述后台先在所述数据中心中添加所述目标模块的模块数据,再在其他模块的模块数据中添加所述目标模块和所述其他模块之间的逻辑关系;
248.相应地,所述第二控制模块用于:
249.基于所述操作记录所指示的操作的逆操作,先向所述后台发送第二逻辑关系更新指令,再发送第二模块更新指令,以控制所述后台先删除所述数据中心的其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系,再删除所述数据中心中所述目标模块的模块数据。
250.基于上述装置,在一种可能的实现方式中,在所述目标操作为针对所述目标模块的删除操作的情况下,所述第一控制模块用于:
251.先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令,以控制所述后台先删除所述数据中心中其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系,再删除所述目标模块的模块数据;
252.相应地,所述第二控制模块用于:
253.基于所述操作记录所指示的操作的逆操作,先向所述后台发送第二模块更新指令,再发送第二逻辑关系更新指令,以控制所述后台先恢复所述数据中心中所述目标模块的模块数据,再恢复其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系。
254.基于上述装置,在一种可能的实现方式中,在所述目标操作为针对所述目标模块的删除操作的情况下,所述第一控制模块用于:
255.先向后台发送第一逻辑关系更新指令,再发送第一模块更新指令,在接收到所述
第一逻辑关系更新指令时,所述后台删除其它模块的模块数据中所述其他模块与所述目标模块之间的逻辑关系,所述后台在接收到所述第一模块更新指令时,为所述数据中心中所述目标模块的模块数据添加删除标记;
256.相应地,所述第二控制模块用于:
257.基于所述操作记录所指示的操作的逆操作,先向所述后台发送第二模块更新指令,再发送第二逻辑关系更新指令,在接收到所述第二模块更新指令时,删除所述目标模块的模块数据的删除标记,在接收到所述第二逻辑关系更新指令时,在所述其它模块的模块数据中添加所述其他模块与所述目标模块之间的逻辑关系。
258.基于上述装置,在一种可能的实现方式中,所述装置还包括:
259.导出模块,用于控制所述后台将所述数据中心中和所述目标模块对应的数据导出备份至参考存储位置,所述目标模块对应的数据包括所述目标模块的模块数据、以及其他模块的模块数据中所述目标模块和所述其他模块之间的逻辑关系;
260.所述第二控制模块用于:
261.响应于接收到的第二模块更新指令,从所述参考存储位置将所述目标模块的模块数据导入至所述数据中心,响应于接收到的第二逻辑关系更新指令,从所述参考存储位置将所述目标模块和所述其他模块之间的逻辑关系导入至所述数据中心。
262.基于上述装置,在一种可能的实现方式中,所述多个模块中任一模块和其他模块之间的逻辑关系包括所述任一模块和其他模块之间的连接关系,以及所述任一模块和所述其他模块之间的订阅关系,所述连接关系指示所述交互界面上所述任一模块和其他模块之间的连线关系,所述订阅关系指示所述任一模块的内部参数、输入中的至少一个与其他模块的输出之间的关联关系、和/或、所述任一模块的输出与其他模块的内部参数、输入中的至少一个之间的关联关系。
263.基于上述装置,在一种可能的实现方式中,在所述目标模块的数量为多个的情况下,所述第一控制模块用于:
264.向所述后台发送第一订阅关系删除指令,所述第一订阅关系删除指令指示所述后台删除其他模块的模块数据中所述其他模块和边缘目标模块之间的订阅关系,所述边缘目标模块为所述多个目标模块中和所述其他模块存在逻辑关系的目标模块;
265.向所述后台发送第一连接关系删除指令,所述第一连接关系删除指令指示所述后台删除其他模块的模块数据中所述其他模块和边缘目标模块之间的连接关系;
266.向所述后台发送第一模块删除指令,所述第一模块删除指令指示删除所述多个目标模块的模块数据。
267.基于上述装置,在一种可能的实现方式中,在所述目标模块的数量为多个的情况下,所述第一控制模块用于:
268.向所述后台发送订阅关系删除指令a,所述订阅关系删除指令a指示所述后台删除后执行模块分别与先执行模块和所述目标模块之间的订阅关系,所述后执行模块为所述前台显示的流程图中位于所述目标模块后执行的模块,所述先执行模块为流程图中位于所述目标模块前执行的模块;
269.向所述后台发送订阅关系删除指令b,所述订阅关系删除指令b指示所述后台删除不同的所述目标模块之间的订阅关系;
270.向所述后台发送订阅关系删除指令c,所述订阅关系删除指令c指示所述后台删除所述目标模块与所述先执行模块之间的订阅关系;
271.向所述后台发送连接关系删除指令a,所述连接关系删除指令a指示所述后台删除后执行模块分别与所述目标模块之间的连接关系;
272.向所述后台发送连接关系删除指令b,所述连接关系删除指令b指示所述后台删除不同的所述目标模块之间的连接关系;
273.向所述后台发送连接关系删除指令c,所述连接关系删除指令c指示所述后台删除所述目标模块与所述先执行模块之间的连接关系;
274.向所述后台发送第一模块删除指令,所述第一模块删除指令指示删除所述多个目标模块的模块数据中的剩余数据。
275.综上所述,在本技术实施例提供的前后台分离系统中,后台的数据中心中存储的模块数据中包括模块的显示方式、模块的功能数据以及模块之间的逻辑关系,也即是后台中同时存储有前台数据和后台数据。由此可知,在本技术实施例中,是以后台作为全部数据的数据中心。如此,前台在检测到针对目标模块的目标操作时,便可控制后台更新前后台数据,而在撤销目标操作时,同样控制后台更新前后台数据,从而保证执行目标操作或撤销目标操作过程中前台交互界面上显示的内容、以及前后台数据之间的一致性。
276.需要说明的是:上述实施例提供的用于前后台分离系统的模块处理装置在处理针对模块的操作时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的用于前后台分离系统的模块处理装置与用于前后台分离系统的模块处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
277.图8是本技术实施例提供的一种终端800的结构示意图。前述实施例涉及的前台均可以通过图8所示的结构来实现。该终端800可以是:智能手机、平板电脑、mp3播放器(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
278.通常,终端800包括有:处理器801和存储器802。
279.处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
280.存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本技术中方法实施例提供的用于前后台分离系统的模块处理方法。
281.在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏805、摄像头组件806、音频电路807、定位组件808和电源809中的至少一种。
282.外围设备接口803可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
283.射频电路804用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wireless fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括nfc(near field communication,近距离无线通信)有关的电路,本技术对此不加以限定。
284.显示屏805用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在另一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用lcd(liquid crystal display,液晶显示屏)、oled(organic light-emitting diode,有机发光二极管)等材质制备。
285.摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,
也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
286.音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括耳机插孔。
287.定位组件808用于定位终端800的当前地理位置,以实现导航或lbs(location based service,基于位置的服务)。定位组件808可以是基于美国的gps(global positioning system,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
288.电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
289.在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。
290.加速度传感器811可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
291.陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3d动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。
292.压力传感器813可以设置在终端800的侧边框和/或显示屏805的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在显示屏805的下层时,由处理器801根据用户对显示屏805的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
293.指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置终端800的正面、背面或侧面。当终端800上设置有物理按键或厂商logo时,指纹传感器814可以
与物理按键或厂商logo集成在一起。
294.光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制显示屏805的显示亮度。具体地,当环境光强度较高时,调高显示屏805的显示亮度;当环境光强度较低时,调低显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
295.接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与终端800的正面之间的距离逐渐变小时,由处理器801控制显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制显示屏805从息屏状态切换为亮屏状态。
296.本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
297.本技术实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行上实施例提供的用户操作处理方法。
298.本技术实施例还提供了一种包含指令的计算机程序产品,当其在终端上运行时,使得终端执行上述实施例提供的用于前后台分离系统的模块处理方法。
299.图9是本技术实施例提供的一种服务器结构示意图。前述实施例涉及的后台均可以通过图9所示的结构来实现。该服务器可以是后台服务器集群中的服务器。具体来讲:
300.服务器900包括中央处理单元(cpu)901、包括随机存取存储器(ram)902和只读存储器(rom)903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。服务器900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(i/o系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
301.基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
302.大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。大容量存储设备907及其相关联的计算机可读介质为服务器900提供非易失性存储。也就是说,大容量存储设备907可以包括诸如硬盘或者cd-rom驱动器之类的计算机可读介质(未示出)。
303.不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、eprom、eeprom、闪存或其他固态存储其技术,cd-rom、dvd或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
304.根据本技术的各种实施例,服务器900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器900可以通过连接在系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。
305.上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由cpu执行。所述一个或者一个以上程序包含用于进行本技术实施例提供的用于前后台分离系统的模块处理方法。
306.本技术实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行上述实施例提供的用于前后台分离系统的模块处理方法。
307.本技术实施例还提供了一种包含指令的计算机程序产品,当其在服务器上运行时,使得服务器执行上述实施例提供的用于前后台分离系统的模块处理方法。
308.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
309.以上所述仅为本技术实施例的较佳实施例,并不用以限制本技术实施例,凡在本技术实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献