本发明涉及计算机,尤其涉及一种数据传输的方法和装置。
背景技术:
1、对业务数据进行数据更新和数据传输是十分常见的。在数据更新时,往往使用多个服务接口对同一业务数据进行数据更新,例如,数量修改请求用于修改运单数据中的包裹数量,地址修改请求用于修改运单数据中的收货地址。在数据传输时,应当保证要传输的业务数据是被更新成功的,为了保证数据传输准确,通常会对数据更新操作加锁,在数据更新结束之前拒绝对同一业务数据的其他数据更新操作,保证业务数据的一致性。
2、在实现本发明的过程中,发明人发现现有技术至少存在如下问题:
3、对数据更新操作加锁,使得数据更新不及时,导致要传输的数据不准确,降低给用户的使用体验。
技术实现思路
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、获取所述线程对应的映射数据集,将所述数据标识和所述目标数据关联存储至所述映射数据集。
38、可选地,根据所述目标数据对所述共享数据进行字段更新,包括:
39、确定所述目标数据包括的第一数据字段;
40、确定所述共享数据中与所述第一数据字段的字段名称相同的第二数据字段;
41、在所述第一数据字段和所述第二数据字段不同的情况下,使用所述第一数据字段替换所述第二数据字段。
42、可选地,确定所述目标数据包括的第一数据字段,包括:
43、根据所述数据传输请求确定所述目标数据包括的第一数据字段;
44、或者,对所述目标数据和所述共享数据进行对比,根据对比结果确定所述目标数据包括的第一数据字段。
45、可选地,根据所述目标数据判断所述共享数据是否字段更新成功,包括:
46、判断所述共享数据是否包括所述第一数据字段;
47、在所述共享数据不包括所述第一数据字段的情况下,判定所述共享数据字段更新未成功;
48、所述方法还包括:使用所述共享数据对所述目标数据中除所述第一数据字段之外的其他数据字段进行字段更新,将更新后的目标数据传输至所述数据传输请求对应的目标系统,根据所述目标数据对所述共享数据进行字段更新。
49、可选地,所述装置还包括:
50、生成模块,用于根据所述目标数据生成所述共享数据的更新记录,对所述共享数据和所述更新记录进行关联存储。
51、可选地,所述装置还包括:
52、去除模块,用于将所述目标数据从所述线程对应的临时数据集中去除。
53、可选地,将所述共享数据传输至所述数据传输请求对应的目标系统,包括:
54、根据所述数据传输请求确定所述共享数据包括的目标字段;
55、对所述目标字段进行组装得到组装数据,将所述组装数据传输至所述数据传输请求对应的目标系统。
56、根据本发明实施例的第三方面,提供一种电子设备,包括:
57、一个或多个处理器;
58、存储装置,用于存储一个或多个程序,
59、当所述一个或多个程序被所述一个或多个处理器执行时,所述一个或多个处理器实现上述任一实施例所述的方法。
60、根据本发明实施例的第四方面,提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的方法。
61、上述发明中的一个实施例具有如下优点或有益效果:将目标数据存储至临时数据集,在判定对共享数据进行数据更新成功之后在对共享数据进行数据传输,能够提高数据传输的准确性,使传输的数据是更新成功之后的数据,提高用户使用体验;临时数据集是与线程相对应的,能够保证目标数据不被其他线程修改,提高目标数据的线程安全性;根据目标数据的第一数据字段对共享数据的第二数据字段进行字段更新,能够提高数据更新效率,提高数据更新灵活性;在数据更新不成功的情况下,使用共享数据对目标数据进行数据更新,在对更新后的目标数据进行数据传输,能够在保证目标数据准确更新的同时,提高数据传输效率和准确性,在数据传输之后再对共享数据进行更新,能够确保传输的数据与共享数据相同,确保数据一致性;生成数据更新过程对应的更新记录,便于对数据更新、数据传输等过程进行统计分析、问题排查、业务优化。
62、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
1.一种数据传输的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述临时数据集是线程本地变量;将所述目标数据存储至所述线程对应的临时数据集,包括:
3.根据权利要求1所述的方法,其特征在于,所述临时数据集是映射数据集;将所述目标数据存储至所述线程对应的临时数据集,包括:
4.根据权利要求1所述的方法,其特征在于,根据所述目标数据对所述共享数据进行字段更新,包括:
5.根据权利要求4所述的方法,其特征在于,确定所述目标数据包括的第一数据字段,包括:
6.根据权利要求4所述的方法,其特征在于,根据所述目标数据判断所述共享数据是否字段更新成功,包括:
7.根据权利要求1或6所述的方法,其特征在于,在根据所述目标数据对所述共享数据进行字段更新之后,所述方法还包括:
8.根据权利要求1所述的方法,其特征在于,在将更新后的共享数据传输至所述数据传输请求对应的目标系统之后,所述方法还包括:
9.根据权利要求1所述的方法,其特征在于,将更新后的共享数据传输至所述数据传输请求对应的目标系统,包括:
10.一种数据传输的装置,其特征在于,包括:
11.一种电子设备,其特征在于,包括:
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-9中任一所述的方法。
